@platform-modules/civil-aviation-authority 2.3.64 → 2.3.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/.env +17 -9
  2. package/dist/data-source.js +11 -1
  3. package/dist/index.d.ts +8 -0
  4. package/dist/index.js +15 -1
  5. package/dist/models/DocumentAuditLogModel.d.ts +19 -0
  6. package/dist/models/DocumentAuditLogModel.js +68 -0
  7. package/dist/models/DocumentMetadataModel.d.ts +48 -0
  8. package/dist/models/DocumentMetadataModel.js +160 -0
  9. package/dist/models/DocumentationDepartmentsModel.d.ts +18 -0
  10. package/dist/models/DocumentationDepartmentsModel.js +72 -0
  11. package/dist/models/FolderModel.d.ts +19 -0
  12. package/dist/models/FolderModel.js +89 -0
  13. package/dist/models/PermissionModel.d.ts +21 -0
  14. package/dist/models/PermissionModel.js +77 -0
  15. package/package.json +1 -1
  16. package/src/data-source.ts +11 -1
  17. package/src/index.ts +10 -3
  18. package/src/models/DocumentAuditLogModel.ts +52 -0
  19. package/src/models/DocumentMetadataModel.ts +125 -0
  20. package/src/models/DocumentationDepartmentsModel.ts +55 -0
  21. package/src/models/FolderModel.ts +71 -0
  22. package/src/models/HrServiceRequestModel.ts +167 -167
  23. package/src/models/ITRequestChatModel.ts +62 -62
  24. package/src/models/ItApprovalsModel.ts +84 -84
  25. package/src/models/ItWorkflowModel.ts +55 -55
  26. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  27. package/src/models/PermissionModel.ts +60 -0
  28. package/src/models/RequestForCoverageRequestModel.ts +174 -174
  29. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  30. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  31. package/dist/models/ITApprovalSettings.d.ts +0 -7
  32. package/dist/models/ITApprovalSettings.js +0 -40
  33. package/dist/models/ITServicesTypesMuscatModel.d.ts +0 -6
  34. package/dist/models/ITServicesTypesMuscatModel.js +0 -34
  35. package/dist/models/ITServicesTypesSalalahModel.d.ts +0 -6
  36. package/dist/models/ITServicesTypesSalalahModel.js +0 -34
  37. package/dist/models/Workflows.d.ts +0 -9
  38. package/dist/models/Workflows.js +0 -31
package/.env CHANGED
@@ -1,12 +1,20 @@
1
- # DB_HOST=164.52.222.169
1
+ DB_HOST=164.52.222.169
2
+ DB_PORT=5432
3
+ DB_USER=postgres_admin_user
4
+ DB_PASS=pg_admin_user_pwd_caa_fa_$%^&OIukhjgcvbn
5
+ DB_NAME=CAA
6
+
7
+ # DB_HOST=216.48.187.46
2
8
  # DB_PORT=5432
3
- # DB_USER=postgres_admin_user
4
- # DB_PASS=pg_admin_user_pwd_caa_fa_$%^&OIukhjgcvbn
5
- # DB_NAME=CAA
9
+ # DB_USER=adminuser
10
+ # DB_PASS=postgres_caa_fm_qa_34567
11
+ # DB_NAME=CAA_QA
6
12
 
7
13
 
8
- DB_HOST=localhost
9
- DB_PORT=5432
10
- DB_USER=postgres
11
- DB_PASS=stevejobs
12
- DB_NAME=CAA
14
+
15
+
16
+ # DB_HOST=localhost
17
+ # DB_PORT=5432
18
+ # DB_USER=postgres
19
+ # DB_PASS=stevejobs
20
+ # DB_NAME=CAA
@@ -127,6 +127,11 @@ const RequestForCoverageAttachmentModel_1 = require("./models/RequestForCoverage
127
127
  const CashAllowanceLeaveRequestModel_1 = require("./models/CashAllowanceLeaveRequestModel");
128
128
  const PromotionRequestModel_1 = require("./models/PromotionRequestModel");
129
129
  const AnnualIncrementRequestModel_1 = require("./models/AnnualIncrementRequestModel");
130
+ const DocumentMetadataModel_1 = require("./models/DocumentMetadataModel");
131
+ const PermissionModel_1 = require("./models/PermissionModel");
132
+ const DocumentAuditLogModel_1 = require("./models/DocumentAuditLogModel");
133
+ const FolderModel_1 = require("./models/FolderModel");
134
+ const DocumentationDepartmentsModel_1 = require("./models/DocumentationDepartmentsModel");
130
135
  exports.AppDataSource = new typeorm_1.DataSource({
131
136
  type: 'postgres',
132
137
  host: process.env.DB_HOST || 'localhost',
@@ -257,6 +262,11 @@ exports.AppDataSource = new typeorm_1.DataSource({
257
262
  AssignTasksEmpChatModel_1.AssignTasksEmpRequestChat,
258
263
  CashAllowanceLeaveRequestModel_1.CashAllowanceLeaveRequest,
259
264
  PromotionRequestModel_1.PromotionRequest,
260
- AnnualIncrementRequestModel_1.AnnualIncrementRequest
265
+ AnnualIncrementRequestModel_1.AnnualIncrementRequest,
266
+ DocumentMetadataModel_1.DocumentMetadata,
267
+ PermissionModel_1.Permission,
268
+ DocumentAuditLogModel_1.DocumentAuditLog,
269
+ FolderModel_1.Folder,
270
+ DocumentationDepartmentsModel_1.DocumentationDepartments
261
271
  ],
262
272
  });
package/dist/index.d.ts CHANGED
@@ -201,3 +201,11 @@ export * from './models/PromotionRequestModel';
201
201
  export { PromotionRequestStatus } from './models/PromotionRequestModel';
202
202
  export * from './models/AnnualIncrementRequestModel';
203
203
  export { AnnualIncrementRequestStatus } from './models/AnnualIncrementRequestModel';
204
+ export * from './models/DocumentMetadataModel';
205
+ export * from './models/PermissionModel';
206
+ export * from './models/DocumentAuditLogModel';
207
+ export * from './models/FolderModel';
208
+ export * from './models/DocumentationDepartmentsModel';
209
+ export { DocumentType, DocumentStatus, AccessLevel } from './models/DocumentMetadataModel';
210
+ export { PermissionType } from './models/PermissionModel';
211
+ export { AuditAction } from './models/DocumentAuditLogModel';
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.RequestForCoverageWorkFlowStatus = exports.RequestForCoverageNewsSize = exports.RequestForCoverageRequestStatus = exports.ServiceTransferRequestType = exports.SalaryDetailsType = exports.ServiceTransferRequestStatus = exports.TemporaryAssignmentRequestType = exports.TemporaryAssignmentRequestStatus = exports.SecondmentRequestStatus = exports.TrainingRoomBookingChatStatus = exports.TrainingRoomBookingMessageType = exports.TrainingRoomBookingRequestChat = exports.TrainingRoomBookingRequestAttachment = exports.TrainingRoomBookingWorkFlowStatus = exports.TrainingRoomBookingApprovalStatus = exports.TrainingRoomBookingRoomType = exports.TrainingRoomBookingRequestStatus = exports.AnnualTrainingPlanChatStatus = exports.AnnualTrainingPlanMessageType = exports.AnnualTrainingPlanRequestChat = exports.AnnualTrainingPlanRequestAttachment = exports.AnnualTrainingPlanWorkFlowStatus = exports.AnnualTrainingPlanApprovalStatus = exports.AnnualTrainingPlanPlace = exports.AnnualTrainingPlanRequestStatus = exports.StudyLeaveChatStatus = exports.StudyLeaveMessageType = exports.StudyLeaveRequestChat = exports.StudyLeaveRequestAttachment = exports.StudyLeaveWorkFlowStatus = exports.StudyLeaveApprovalStatus = exports.StudyLeaveRequestStatus = exports.TrainingMessageType = exports.TrainingRequestChat = exports.TrainingRequestAttachment = exports.TrainingWorkFlowStatus = exports.TrainingApprovalStatus = exports.TrainingRequestStatus = exports.HrServiceChatStatus = exports.HrServiceMessageType = exports.HrServiceRequestChat = exports.HrServiceRequestAttachment = exports.HrServiceWorkFlowStatus = exports.HrServiceApprovalStatus = exports.HrServiceRequestStatus = exports.LogisticsVehicleMaintenanceWorkFlowStatus = exports.LogisticsVehicleMaintenanceMessageType = exports.LogisticsVehicleMaintenanceApprovalStatus = exports.VehicleMaintenanceStatus = exports.VehicleMaintenanceType = void 0;
18
- exports.AnnualIncrementRequestStatus = exports.PromotionRequestStatus = exports.CashAllowanceLeaveRequestStatus = exports.NotificationFrequency = exports.ServicesNotificationTriggerType = exports.NewResourceRequestStatus = exports.JobTransferRequestStatus = exports.ShiftAllowanceValue = exports.ShiftAllowanceRequestStatus = exports.AssignTasksEmpMessageType = exports.AssignTasksEmpRequestChat = exports.AssignTasksEmpRequestAttachment = exports.AssignTasksEmpWorkFlowStatus = exports.AssignTasksEmpApprovalStatus = exports.AssignTasksEmpPriority = exports.AssignTasksEmpStatus = exports.RequestForCoverageRequestAttachment = exports.RequestForCoverageChatStatus = exports.RequestForCoverageMessageType = exports.RequestForCoverageRequestChat = exports.RequestForCoverageApprovalStatus = void 0;
18
+ exports.AuditAction = exports.PermissionType = exports.AccessLevel = exports.DocumentStatus = exports.DocumentType = exports.AnnualIncrementRequestStatus = exports.PromotionRequestStatus = exports.CashAllowanceLeaveRequestStatus = exports.NotificationFrequency = exports.ServicesNotificationTriggerType = exports.NewResourceRequestStatus = exports.JobTransferRequestStatus = exports.ShiftAllowanceValue = exports.ShiftAllowanceRequestStatus = exports.AssignTasksEmpMessageType = exports.AssignTasksEmpRequestChat = exports.AssignTasksEmpRequestAttachment = exports.AssignTasksEmpWorkFlowStatus = exports.AssignTasksEmpApprovalStatus = exports.AssignTasksEmpPriority = exports.AssignTasksEmpStatus = exports.RequestForCoverageRequestAttachment = exports.RequestForCoverageChatStatus = exports.RequestForCoverageMessageType = exports.RequestForCoverageRequestChat = exports.RequestForCoverageApprovalStatus = void 0;
19
19
  __exportStar(require("./models/user"), exports);
20
20
  __exportStar(require("./models/role"), exports);
21
21
  __exportStar(require("./models/user-sessions"), exports);
@@ -304,3 +304,17 @@ Object.defineProperty(exports, "PromotionRequestStatus", { enumerable: true, get
304
304
  __exportStar(require("./models/AnnualIncrementRequestModel"), exports);
305
305
  var AnnualIncrementRequestModel_1 = require("./models/AnnualIncrementRequestModel");
306
306
  Object.defineProperty(exports, "AnnualIncrementRequestStatus", { enumerable: true, get: function () { return AnnualIncrementRequestModel_1.AnnualIncrementRequestStatus; } });
307
+ // Documentation Service Models
308
+ __exportStar(require("./models/DocumentMetadataModel"), exports);
309
+ __exportStar(require("./models/PermissionModel"), exports);
310
+ __exportStar(require("./models/DocumentAuditLogModel"), exports);
311
+ __exportStar(require("./models/FolderModel"), exports);
312
+ __exportStar(require("./models/DocumentationDepartmentsModel"), exports);
313
+ var DocumentMetadataModel_1 = require("./models/DocumentMetadataModel");
314
+ Object.defineProperty(exports, "DocumentType", { enumerable: true, get: function () { return DocumentMetadataModel_1.DocumentType; } });
315
+ Object.defineProperty(exports, "DocumentStatus", { enumerable: true, get: function () { return DocumentMetadataModel_1.DocumentStatus; } });
316
+ Object.defineProperty(exports, "AccessLevel", { enumerable: true, get: function () { return DocumentMetadataModel_1.AccessLevel; } });
317
+ var PermissionModel_1 = require("./models/PermissionModel");
318
+ Object.defineProperty(exports, "PermissionType", { enumerable: true, get: function () { return PermissionModel_1.PermissionType; } });
319
+ var DocumentAuditLogModel_1 = require("./models/DocumentAuditLogModel");
320
+ Object.defineProperty(exports, "AuditAction", { enumerable: true, get: function () { return DocumentAuditLogModel_1.AuditAction; } });
@@ -0,0 +1,19 @@
1
+ export declare enum AuditAction {
2
+ UPLOAD = "upload",
3
+ VIEW = "view",
4
+ DOWNLOAD = "download",
5
+ UPDATE = "update",
6
+ DELETE = "delete",
7
+ PUBLISH = "publish"
8
+ }
9
+ export declare class DocumentAuditLog {
10
+ id: string;
11
+ document_id: string;
12
+ user_id: string;
13
+ user_name: string;
14
+ action: AuditAction;
15
+ ip_address: string;
16
+ user_agent: string;
17
+ metadata: Record<string, any>;
18
+ timestamp: Date;
19
+ }
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DocumentAuditLog = exports.AuditAction = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ // Note: DocumentMetadata import removed to avoid circular dependency
15
+ var AuditAction;
16
+ (function (AuditAction) {
17
+ AuditAction["UPLOAD"] = "upload";
18
+ AuditAction["VIEW"] = "view";
19
+ AuditAction["DOWNLOAD"] = "download";
20
+ AuditAction["UPDATE"] = "update";
21
+ AuditAction["DELETE"] = "delete";
22
+ AuditAction["PUBLISH"] = "publish";
23
+ })(AuditAction || (exports.AuditAction = AuditAction = {}));
24
+ let DocumentAuditLog = class DocumentAuditLog {
25
+ };
26
+ exports.DocumentAuditLog = DocumentAuditLog;
27
+ __decorate([
28
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
29
+ __metadata("design:type", String)
30
+ ], DocumentAuditLog.prototype, "id", void 0);
31
+ __decorate([
32
+ (0, typeorm_1.Column)({ type: 'uuid' }),
33
+ __metadata("design:type", String)
34
+ ], DocumentAuditLog.prototype, "document_id", void 0);
35
+ __decorate([
36
+ (0, typeorm_1.Column)({ type: 'uuid' }),
37
+ (0, typeorm_1.Index)(),
38
+ __metadata("design:type", String)
39
+ ], DocumentAuditLog.prototype, "user_id", void 0);
40
+ __decorate([
41
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
42
+ __metadata("design:type", String)
43
+ ], DocumentAuditLog.prototype, "user_name", void 0);
44
+ __decorate([
45
+ (0, typeorm_1.Column)({ type: 'enum', enum: AuditAction }),
46
+ (0, typeorm_1.Index)(),
47
+ __metadata("design:type", String)
48
+ ], DocumentAuditLog.prototype, "action", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({ type: 'varchar', length: 45, nullable: true }),
51
+ __metadata("design:type", String)
52
+ ], DocumentAuditLog.prototype, "ip_address", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
55
+ __metadata("design:type", String)
56
+ ], DocumentAuditLog.prototype, "user_agent", void 0);
57
+ __decorate([
58
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
59
+ __metadata("design:type", Object)
60
+ ], DocumentAuditLog.prototype, "metadata", void 0);
61
+ __decorate([
62
+ (0, typeorm_1.CreateDateColumn)({ type: 'timestamp' }),
63
+ (0, typeorm_1.Index)(),
64
+ __metadata("design:type", Date)
65
+ ], DocumentAuditLog.prototype, "timestamp", void 0);
66
+ exports.DocumentAuditLog = DocumentAuditLog = __decorate([
67
+ (0, typeorm_1.Entity)({ name: 'document_audit_logs' })
68
+ ], DocumentAuditLog);
@@ -0,0 +1,48 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ export declare enum DocumentType {
3
+ POLICY = "policy",
4
+ PROCEDURE = "procedure",
5
+ MANUAL = "manual",
6
+ TEMPLATE = "template",
7
+ REPORT = "report"
8
+ }
9
+ export declare enum DocumentStatus {
10
+ ACTIVE = "active",
11
+ ARCHIVED = "archived",
12
+ DRAFT = "draft"
13
+ }
14
+ export declare enum AccessLevel {
15
+ GENERAL = "general",
16
+ RESTRICTED = "restricted"
17
+ }
18
+ export declare class DocumentMetadata {
19
+ id: string;
20
+ title: string;
21
+ description: string;
22
+ original_name: string;
23
+ mime_type: string;
24
+ size: number;
25
+ mongodb_file_id: string;
26
+ document_type: DocumentType;
27
+ access_level: AccessLevel;
28
+ status: DocumentStatus;
29
+ version: string;
30
+ tags: string[];
31
+ is_sensitive: boolean;
32
+ department: Departments;
33
+ department_id: number;
34
+ folder_id: string | null;
35
+ folder_path: string;
36
+ uploaded_by: string;
37
+ uploaded_by_name: string;
38
+ authorized_person: string;
39
+ allowed_roles: string[];
40
+ allowed_users: string[];
41
+ download_count: number;
42
+ last_accessed_at: Date;
43
+ metadata: Record<string, any>;
44
+ created_by: string;
45
+ updated_by: string;
46
+ created_at: Date;
47
+ updated_at: Date;
48
+ }
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DocumentMetadata = exports.AccessLevel = exports.DocumentStatus = exports.DocumentType = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const DepartmentsModel_1 = require("./DepartmentsModel");
15
+ var DocumentType;
16
+ (function (DocumentType) {
17
+ DocumentType["POLICY"] = "policy";
18
+ DocumentType["PROCEDURE"] = "procedure";
19
+ DocumentType["MANUAL"] = "manual";
20
+ DocumentType["TEMPLATE"] = "template";
21
+ DocumentType["REPORT"] = "report";
22
+ })(DocumentType || (exports.DocumentType = DocumentType = {}));
23
+ var DocumentStatus;
24
+ (function (DocumentStatus) {
25
+ DocumentStatus["ACTIVE"] = "active";
26
+ DocumentStatus["ARCHIVED"] = "archived";
27
+ DocumentStatus["DRAFT"] = "draft";
28
+ })(DocumentStatus || (exports.DocumentStatus = DocumentStatus = {}));
29
+ var AccessLevel;
30
+ (function (AccessLevel) {
31
+ AccessLevel["GENERAL"] = "general";
32
+ AccessLevel["RESTRICTED"] = "restricted";
33
+ })(AccessLevel || (exports.AccessLevel = AccessLevel = {}));
34
+ let DocumentMetadata = class DocumentMetadata {
35
+ };
36
+ exports.DocumentMetadata = DocumentMetadata;
37
+ __decorate([
38
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
39
+ __metadata("design:type", String)
40
+ ], DocumentMetadata.prototype, "id", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ type: 'varchar', length: 500 }),
43
+ (0, typeorm_1.Index)(),
44
+ __metadata("design:type", String)
45
+ ], DocumentMetadata.prototype, "title", void 0);
46
+ __decorate([
47
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
48
+ __metadata("design:type", String)
49
+ ], DocumentMetadata.prototype, "description", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
52
+ __metadata("design:type", String)
53
+ ], DocumentMetadata.prototype, "original_name", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100 }),
56
+ __metadata("design:type", String)
57
+ ], DocumentMetadata.prototype, "mime_type", void 0);
58
+ __decorate([
59
+ (0, typeorm_1.Column)({ type: 'bigint' }),
60
+ __metadata("design:type", Number)
61
+ ], DocumentMetadata.prototype, "size", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, unique: true }),
64
+ __metadata("design:type", String)
65
+ ], DocumentMetadata.prototype, "mongodb_file_id", void 0);
66
+ __decorate([
67
+ (0, typeorm_1.Column)({ type: 'enum', enum: DocumentType }),
68
+ (0, typeorm_1.Index)(),
69
+ __metadata("design:type", String)
70
+ ], DocumentMetadata.prototype, "document_type", void 0);
71
+ __decorate([
72
+ (0, typeorm_1.Column)({ type: 'enum', enum: AccessLevel, default: AccessLevel.GENERAL }),
73
+ (0, typeorm_1.Index)(),
74
+ __metadata("design:type", String)
75
+ ], DocumentMetadata.prototype, "access_level", void 0);
76
+ __decorate([
77
+ (0, typeorm_1.Column)({ type: 'enum', enum: DocumentStatus, default: DocumentStatus.ACTIVE }),
78
+ (0, typeorm_1.Index)(),
79
+ __metadata("design:type", String)
80
+ ], DocumentMetadata.prototype, "status", void 0);
81
+ __decorate([
82
+ (0, typeorm_1.Column)({ type: 'varchar', length: 50, default: '1.0.0' }),
83
+ __metadata("design:type", String)
84
+ ], DocumentMetadata.prototype, "version", void 0);
85
+ __decorate([
86
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
87
+ __metadata("design:type", Array)
88
+ ], DocumentMetadata.prototype, "tags", void 0);
89
+ __decorate([
90
+ (0, typeorm_1.Column)({ type: 'boolean', default: false }),
91
+ __metadata("design:type", Boolean)
92
+ ], DocumentMetadata.prototype, "is_sensitive", void 0);
93
+ __decorate([
94
+ (0, typeorm_1.ManyToOne)('Departments', { eager: true }),
95
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
96
+ __metadata("design:type", DepartmentsModel_1.Departments)
97
+ ], DocumentMetadata.prototype, "department", void 0);
98
+ __decorate([
99
+ (0, typeorm_1.Column)({ type: 'integer' }),
100
+ __metadata("design:type", Number)
101
+ ], DocumentMetadata.prototype, "department_id", void 0);
102
+ __decorate([
103
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
104
+ __metadata("design:type", Object)
105
+ ], DocumentMetadata.prototype, "folder_id", void 0);
106
+ __decorate([
107
+ (0, typeorm_1.Column)({ type: 'varchar', length: 500, default: '/' }),
108
+ __metadata("design:type", String)
109
+ ], DocumentMetadata.prototype, "folder_path", void 0);
110
+ __decorate([
111
+ (0, typeorm_1.Column)({ type: 'uuid' }),
112
+ __metadata("design:type", String)
113
+ ], DocumentMetadata.prototype, "uploaded_by", void 0);
114
+ __decorate([
115
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
116
+ __metadata("design:type", String)
117
+ ], DocumentMetadata.prototype, "uploaded_by_name", void 0);
118
+ __decorate([
119
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
120
+ __metadata("design:type", String)
121
+ ], DocumentMetadata.prototype, "authorized_person", void 0);
122
+ __decorate([
123
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
124
+ __metadata("design:type", Array)
125
+ ], DocumentMetadata.prototype, "allowed_roles", void 0);
126
+ __decorate([
127
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
128
+ __metadata("design:type", Array)
129
+ ], DocumentMetadata.prototype, "allowed_users", void 0);
130
+ __decorate([
131
+ (0, typeorm_1.Column)({ type: 'int', default: 0 }),
132
+ __metadata("design:type", Number)
133
+ ], DocumentMetadata.prototype, "download_count", void 0);
134
+ __decorate([
135
+ (0, typeorm_1.Column)({ type: 'timestamp', nullable: true }),
136
+ __metadata("design:type", Date)
137
+ ], DocumentMetadata.prototype, "last_accessed_at", void 0);
138
+ __decorate([
139
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
140
+ __metadata("design:type", Object)
141
+ ], DocumentMetadata.prototype, "metadata", void 0);
142
+ __decorate([
143
+ (0, typeorm_1.Column)({ type: 'uuid' }),
144
+ __metadata("design:type", String)
145
+ ], DocumentMetadata.prototype, "created_by", void 0);
146
+ __decorate([
147
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
148
+ __metadata("design:type", String)
149
+ ], DocumentMetadata.prototype, "updated_by", void 0);
150
+ __decorate([
151
+ (0, typeorm_1.CreateDateColumn)({ type: 'timestamp' }),
152
+ __metadata("design:type", Date)
153
+ ], DocumentMetadata.prototype, "created_at", void 0);
154
+ __decorate([
155
+ (0, typeorm_1.UpdateDateColumn)({ type: 'timestamp' }),
156
+ __metadata("design:type", Date)
157
+ ], DocumentMetadata.prototype, "updated_at", void 0);
158
+ exports.DocumentMetadata = DocumentMetadata = __decorate([
159
+ (0, typeorm_1.Entity)({ name: 'document_metadata' })
160
+ ], DocumentMetadata);
@@ -0,0 +1,18 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ /**
3
+ * Documentation Service specific department configuration
4
+ * Links departments with authorized persons for document management
5
+ */
6
+ export declare class DocumentationDepartments {
7
+ id: string;
8
+ department: Departments;
9
+ department_id: number;
10
+ authorized_person_id: string;
11
+ authorized_person_name: string;
12
+ authorized_person_email: string;
13
+ is_active: boolean;
14
+ created_by: string;
15
+ updated_by: string;
16
+ created_at: Date;
17
+ updated_at: Date;
18
+ }
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DocumentationDepartments = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const DepartmentsModel_1 = require("./DepartmentsModel");
15
+ /**
16
+ * Documentation Service specific department configuration
17
+ * Links departments with authorized persons for document management
18
+ */
19
+ let DocumentationDepartments = class DocumentationDepartments {
20
+ };
21
+ exports.DocumentationDepartments = DocumentationDepartments;
22
+ __decorate([
23
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
24
+ __metadata("design:type", String)
25
+ ], DocumentationDepartments.prototype, "id", void 0);
26
+ __decorate([
27
+ (0, typeorm_1.ManyToOne)(() => DepartmentsModel_1.Departments, { eager: true }),
28
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
29
+ __metadata("design:type", DepartmentsModel_1.Departments)
30
+ ], DocumentationDepartments.prototype, "department", void 0);
31
+ __decorate([
32
+ (0, typeorm_1.Column)({ type: 'integer' }),
33
+ (0, typeorm_1.Index)(),
34
+ __metadata("design:type", Number)
35
+ ], DocumentationDepartments.prototype, "department_id", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
38
+ (0, typeorm_1.Index)(),
39
+ __metadata("design:type", String)
40
+ ], DocumentationDepartments.prototype, "authorized_person_id", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
43
+ __metadata("design:type", String)
44
+ ], DocumentationDepartments.prototype, "authorized_person_name", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
47
+ __metadata("design:type", String)
48
+ ], DocumentationDepartments.prototype, "authorized_person_email", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
51
+ (0, typeorm_1.Index)(),
52
+ __metadata("design:type", Boolean)
53
+ ], DocumentationDepartments.prototype, "is_active", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
56
+ __metadata("design:type", String)
57
+ ], DocumentationDepartments.prototype, "created_by", void 0);
58
+ __decorate([
59
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
60
+ __metadata("design:type", String)
61
+ ], DocumentationDepartments.prototype, "updated_by", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.CreateDateColumn)({ type: 'timestamp' }),
64
+ __metadata("design:type", Date)
65
+ ], DocumentationDepartments.prototype, "created_at", void 0);
66
+ __decorate([
67
+ (0, typeorm_1.UpdateDateColumn)({ type: 'timestamp' }),
68
+ __metadata("design:type", Date)
69
+ ], DocumentationDepartments.prototype, "updated_at", void 0);
70
+ exports.DocumentationDepartments = DocumentationDepartments = __decorate([
71
+ (0, typeorm_1.Entity)({ name: 'documentation_departments' })
72
+ ], DocumentationDepartments);
@@ -0,0 +1,19 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ export declare class Folder {
3
+ id: string;
4
+ name: string;
5
+ path: string;
6
+ parent_path: string;
7
+ department: Departments;
8
+ department_id: number;
9
+ description: string;
10
+ access_level: 'general' | 'restricted';
11
+ allowed_roles: string[];
12
+ allowed_users: string[];
13
+ created_by: string;
14
+ created_by_name: string;
15
+ updated_by: string;
16
+ is_active: boolean;
17
+ created_at: Date;
18
+ updated_at: Date;
19
+ }
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Folder = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const DepartmentsModel_1 = require("./DepartmentsModel");
15
+ // Note: DocumentMetadata import removed to avoid circular dependency
16
+ // Use lazy loading or query builder when needed
17
+ let Folder = class Folder {
18
+ };
19
+ exports.Folder = Folder;
20
+ __decorate([
21
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
22
+ __metadata("design:type", String)
23
+ ], Folder.prototype, "id", void 0);
24
+ __decorate([
25
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
26
+ __metadata("design:type", String)
27
+ ], Folder.prototype, "name", void 0);
28
+ __decorate([
29
+ (0, typeorm_1.Column)({ type: 'varchar', length: 1000 }),
30
+ __metadata("design:type", String)
31
+ ], Folder.prototype, "path", void 0);
32
+ __decorate([
33
+ (0, typeorm_1.Column)({ type: 'varchar', length: 1000, nullable: true }),
34
+ __metadata("design:type", String)
35
+ ], Folder.prototype, "parent_path", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.ManyToOne)('Departments', { eager: true }),
38
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
39
+ __metadata("design:type", DepartmentsModel_1.Departments)
40
+ ], Folder.prototype, "department", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ type: 'integer' }),
43
+ __metadata("design:type", Number)
44
+ ], Folder.prototype, "department_id", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
47
+ __metadata("design:type", String)
48
+ ], Folder.prototype, "description", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({ type: 'enum', enum: ['general', 'restricted'], default: 'general' }),
51
+ (0, typeorm_1.Index)(),
52
+ __metadata("design:type", String)
53
+ ], Folder.prototype, "access_level", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
56
+ __metadata("design:type", Array)
57
+ ], Folder.prototype, "allowed_roles", void 0);
58
+ __decorate([
59
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
60
+ __metadata("design:type", Array)
61
+ ], Folder.prototype, "allowed_users", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.Column)({ type: 'uuid' }),
64
+ __metadata("design:type", String)
65
+ ], Folder.prototype, "created_by", void 0);
66
+ __decorate([
67
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
68
+ __metadata("design:type", String)
69
+ ], Folder.prototype, "created_by_name", void 0);
70
+ __decorate([
71
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
72
+ __metadata("design:type", String)
73
+ ], Folder.prototype, "updated_by", void 0);
74
+ __decorate([
75
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
76
+ (0, typeorm_1.Index)(),
77
+ __metadata("design:type", Boolean)
78
+ ], Folder.prototype, "is_active", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.CreateDateColumn)({ type: 'timestamp' }),
81
+ __metadata("design:type", Date)
82
+ ], Folder.prototype, "created_at", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.UpdateDateColumn)({ type: 'timestamp' }),
85
+ __metadata("design:type", Date)
86
+ ], Folder.prototype, "updated_at", void 0);
87
+ exports.Folder = Folder = __decorate([
88
+ (0, typeorm_1.Entity)({ name: 'folders' })
89
+ ], Folder);
@@ -0,0 +1,21 @@
1
+ import { Role } from './role';
2
+ export declare enum PermissionType {
3
+ VIEW = "view",
4
+ UPLOAD = "upload",
5
+ UPDATE = "update",
6
+ DELETE = "delete",
7
+ PUBLISH = "publish"
8
+ }
9
+ export declare class Permission {
10
+ id: string;
11
+ name: string;
12
+ code: string;
13
+ type: PermissionType;
14
+ description: string;
15
+ is_active: boolean;
16
+ roles: Role[];
17
+ created_by: string;
18
+ updated_by: string;
19
+ created_at: Date;
20
+ updated_at: Date;
21
+ }