@platform-modules/civil-aviation-authority 2.3.106 → 2.3.109

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 (36) hide show
  1. package/.env +11 -8
  2. package/dist/models/AnnualTrainingPlanRequestModel.d.ts +4 -1
  3. package/dist/models/AnnualTrainingPlanRequestModel.js +17 -2
  4. package/dist/models/DocumentMetadataModel.d.ts +45 -0
  5. package/dist/models/DocumentMetadataModel.js +171 -0
  6. package/dist/models/DocumentationDepartmentsModel.d.ts +13 -0
  7. package/dist/models/DocumentationDepartmentsModel.js +53 -0
  8. package/dist/models/FolderModel.d.ts +16 -0
  9. package/dist/models/FolderModel.js +85 -0
  10. package/dist/models/PermissionModel.d.ts +18 -0
  11. package/dist/models/PermissionModel.js +68 -0
  12. package/dist/models/StudyLeaveRequestModel.d.ts +7 -1
  13. package/dist/models/StudyLeaveRequestModel.js +32 -2
  14. package/dist/models/TrainingRoomBookingRequestModel.d.ts +6 -5
  15. package/dist/models/TrainingRoomBookingRequestModel.js +6 -5
  16. package/dist/models/UUIDBaseModel.d.ts +14 -0
  17. package/dist/models/UUIDBaseModel.js +66 -0
  18. package/package.json +1 -1
  19. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -138
  20. package/src/models/DepartmentsModel.ts +25 -25
  21. package/src/models/ITRequestChatModel.ts +62 -62
  22. package/src/models/ItApprovalsModel.ts +84 -84
  23. package/src/models/ItWorkflowModel.ts +55 -55
  24. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  25. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  26. package/src/models/StudyLeaveRequestModel.ts +31 -1
  27. package/src/models/TrainingRoomBookingRequestModel.ts +137 -136
  28. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  29. package/dist/models/ITApprovalSettings.d.ts +0 -7
  30. package/dist/models/ITApprovalSettings.js +0 -40
  31. package/dist/models/ITServicesTypesMuscatModel.d.ts +0 -6
  32. package/dist/models/ITServicesTypesMuscatModel.js +0 -34
  33. package/dist/models/ITServicesTypesSalalahModel.d.ts +0 -6
  34. package/dist/models/ITServicesTypesSalalahModel.js +0 -34
  35. package/dist/models/Workflows.d.ts +0 -0
  36. package/dist/models/Workflows.js +0 -31
package/.env CHANGED
@@ -1,17 +1,20 @@
1
- # DB_HOST=localhost
2
- # DB_PORT=5433
3
- # DB_USER=postgres
4
- # DB_PASS=123
5
- # DB_NAME=CAA
6
-
7
1
  DB_HOST=164.52.222.169
8
- DB_PORT=5432
2
+ DB_PORT=5432
9
3
  DB_USER=postgres_admin_user
10
4
  DB_PASS=pg_admin_user_pwd_caa_fa_$%^&OIukhjgcvbn
11
5
  DB_NAME=CAA
12
6
 
13
7
  # DB_HOST=216.48.187.46
14
- # DB_PORT=5432
8
+ # DB_PORT=5432
15
9
  # DB_USER=adminuser
16
10
  # DB_PASS=postgres_caa_fm_qa_34567
17
11
  # DB_NAME=CAA_QA
12
+
13
+
14
+
15
+
16
+ # DB_HOST=localhost
17
+ # DB_PORT=5432
18
+ # DB_USER=postgres
19
+ # DB_PASS=stevejobs
20
+ # DB_NAME=CAA
@@ -32,5 +32,8 @@ export declare class AnnualTrainingPlanRequest extends BaseModel {
32
32
  assigned_to_user_id: number | null;
33
33
  assigned_at: Date | null;
34
34
  workflow_execution_id: string | null;
35
- constructor(user_id: number, course_name: string, no_of_participants: number, course_cost: number, total_cost: number, proposed_implementation_date: Date, description: string, place: AnnualTrainingPlanPlace, reason: string, status?: AnnualTrainingPlanRequestStatus, service_id?: number | null, sub_service_id?: number | null, req_user_department_id?: number | null, req_user_section_id?: number | null, req_user_position_id?: number | null, location?: string | null, employee_list?: any[] | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null);
35
+ job_competency: string | null;
36
+ name_of_participants: string[] | null;
37
+ directarate: string | null;
38
+ constructor(user_id: number, course_name: string, no_of_participants: number, course_cost: number, total_cost: number, proposed_implementation_date: Date, description: string, place: AnnualTrainingPlanPlace, reason: string, status?: AnnualTrainingPlanRequestStatus, service_id?: number | null, sub_service_id?: number | null, req_user_department_id?: number | null, req_user_section_id?: number | null, req_user_position_id?: number | null, location?: string | null, employee_list?: any[] | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null, job_competency?: string | null, name_of_participants?: string[] | null, directarate?: string | null);
36
39
  }
@@ -26,7 +26,7 @@ var AnnualTrainingPlanPlace;
26
26
  AnnualTrainingPlanPlace["OUTSIDE"] = "Outside";
27
27
  })(AnnualTrainingPlanPlace || (exports.AnnualTrainingPlanPlace = AnnualTrainingPlanPlace = {}));
28
28
  let AnnualTrainingPlanRequest = class AnnualTrainingPlanRequest extends BaseModel_1.BaseModel {
29
- constructor(user_id, course_name, no_of_participants, course_cost, total_cost, proposed_implementation_date, description, place, reason, status = AnnualTrainingPlanRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, location, employee_list, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id) {
29
+ constructor(user_id, course_name, no_of_participants, course_cost, total_cost, proposed_implementation_date, description, place, reason, status = AnnualTrainingPlanRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, location, employee_list, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id, job_competency, name_of_participants, directarate) {
30
30
  super();
31
31
  this.user_id = user_id;
32
32
  this.course_name = course_name;
@@ -49,6 +49,9 @@ let AnnualTrainingPlanRequest = class AnnualTrainingPlanRequest extends BaseMode
49
49
  this.assigned_to_user_id = assigned_to_user_id || null;
50
50
  this.assigned_at = assigned_at || null;
51
51
  this.workflow_execution_id = workflow_execution_id || null;
52
+ this.job_competency = job_competency ?? null;
53
+ this.name_of_participants = name_of_participants ?? null;
54
+ this.directarate = directarate ?? null;
52
55
  }
53
56
  };
54
57
  exports.AnnualTrainingPlanRequest = AnnualTrainingPlanRequest;
@@ -145,7 +148,19 @@ __decorate([
145
148
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
146
149
  __metadata("design:type", Object)
147
150
  ], AnnualTrainingPlanRequest.prototype, "workflow_execution_id", void 0);
151
+ __decorate([
152
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
153
+ __metadata("design:type", Object)
154
+ ], AnnualTrainingPlanRequest.prototype, "job_competency", void 0);
155
+ __decorate([
156
+ (0, typeorm_1.Column)({ type: "jsonb", nullable: true }),
157
+ __metadata("design:type", Object)
158
+ ], AnnualTrainingPlanRequest.prototype, "name_of_participants", void 0);
159
+ __decorate([
160
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
161
+ __metadata("design:type", Object)
162
+ ], AnnualTrainingPlanRequest.prototype, "directarate", void 0);
148
163
  exports.AnnualTrainingPlanRequest = AnnualTrainingPlanRequest = __decorate([
149
164
  (0, typeorm_1.Entity)({ name: "annual_training_plan_requests" }),
150
- __metadata("design:paramtypes", [Number, String, Number, Number, Number, Date, String, String, String, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
165
+ __metadata("design:paramtypes", [Number, String, Number, Number, Number, Date, String, String, String, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
151
166
  ], AnnualTrainingPlanRequest);
@@ -0,0 +1,45 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ import { UUIDBaseModel } from './UUIDBaseModel';
3
+ export declare enum DocumentType {
4
+ POLICY = "policy",
5
+ PROCEDURE = "procedure",
6
+ MANUAL = "manual",
7
+ TEMPLATE = "template",
8
+ REPORT = "report"
9
+ }
10
+ export declare enum DocumentStatus {
11
+ ACTIVE = "active",
12
+ ARCHIVED = "archived",
13
+ DRAFT = "draft"
14
+ }
15
+ export declare enum AccessLevel {
16
+ GENERAL = "general",
17
+ RESTRICTED = "restricted"
18
+ }
19
+ export declare class DocumentMetadata extends UUIDBaseModel {
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
+ constructor(title: string, original_name: string, mime_type: string, size: number, mongodb_file_id: string, document_type: DocumentType, department_id: number, uploaded_by: string, access_level?: AccessLevel, status?: DocumentStatus, version?: string, folder_path?: string, created_by?: string, description?: string, folder_id?: string | null, uploaded_by_name?: string, authorized_person?: string, tags?: string[], allowed_roles?: string[], allowed_users?: string[], is_sensitive?: boolean, download_count?: number, last_accessed_at?: Date, metadata?: Record<string, any>);
45
+ }
@@ -0,0 +1,171 @@
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
+ const UUIDBaseModel_1 = require("./UUIDBaseModel");
16
+ var DocumentType;
17
+ (function (DocumentType) {
18
+ DocumentType["POLICY"] = "policy";
19
+ DocumentType["PROCEDURE"] = "procedure";
20
+ DocumentType["MANUAL"] = "manual";
21
+ DocumentType["TEMPLATE"] = "template";
22
+ DocumentType["REPORT"] = "report";
23
+ })(DocumentType || (exports.DocumentType = DocumentType = {}));
24
+ var DocumentStatus;
25
+ (function (DocumentStatus) {
26
+ DocumentStatus["ACTIVE"] = "active";
27
+ DocumentStatus["ARCHIVED"] = "archived";
28
+ DocumentStatus["DRAFT"] = "draft";
29
+ })(DocumentStatus || (exports.DocumentStatus = DocumentStatus = {}));
30
+ var AccessLevel;
31
+ (function (AccessLevel) {
32
+ AccessLevel["GENERAL"] = "general";
33
+ AccessLevel["RESTRICTED"] = "restricted";
34
+ })(AccessLevel || (exports.AccessLevel = AccessLevel = {}));
35
+ let DocumentMetadata = class DocumentMetadata extends UUIDBaseModel_1.UUIDBaseModel {
36
+ constructor(title, original_name, mime_type, size, mongodb_file_id, document_type, department_id, uploaded_by, access_level = AccessLevel.GENERAL, status = DocumentStatus.ACTIVE, version = '1.0.0', folder_path = '/', created_by, description, folder_id, uploaded_by_name, authorized_person, tags, allowed_roles, allowed_users, is_sensitive = false, download_count = 0, last_accessed_at, metadata) {
37
+ super();
38
+ this.title = title;
39
+ this.original_name = original_name;
40
+ this.mime_type = mime_type;
41
+ this.size = size;
42
+ this.mongodb_file_id = mongodb_file_id;
43
+ this.document_type = document_type;
44
+ this.department_id = department_id;
45
+ this.uploaded_by = uploaded_by;
46
+ this.access_level = access_level;
47
+ this.status = status;
48
+ this.version = version;
49
+ this.folder_path = folder_path;
50
+ this.description = description;
51
+ this.folder_id = folder_id;
52
+ this.uploaded_by_name = uploaded_by_name;
53
+ this.authorized_person = authorized_person;
54
+ this.tags = tags || [];
55
+ this.allowed_roles = allowed_roles || [];
56
+ this.allowed_users = allowed_users || [];
57
+ this.is_sensitive = is_sensitive;
58
+ this.download_count = download_count;
59
+ this.last_accessed_at = last_accessed_at;
60
+ this.metadata = metadata;
61
+ if (created_by) {
62
+ this.created_by = created_by;
63
+ }
64
+ }
65
+ };
66
+ exports.DocumentMetadata = DocumentMetadata;
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ type: 'varchar', length: 500 }),
69
+ (0, typeorm_1.Index)(),
70
+ __metadata("design:type", String)
71
+ ], DocumentMetadata.prototype, "title", void 0);
72
+ __decorate([
73
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
74
+ __metadata("design:type", String)
75
+ ], DocumentMetadata.prototype, "description", void 0);
76
+ __decorate([
77
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
78
+ __metadata("design:type", String)
79
+ ], DocumentMetadata.prototype, "original_name", void 0);
80
+ __decorate([
81
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100 }),
82
+ __metadata("design:type", String)
83
+ ], DocumentMetadata.prototype, "mime_type", void 0);
84
+ __decorate([
85
+ (0, typeorm_1.Column)({ type: 'bigint' }),
86
+ __metadata("design:type", Number)
87
+ ], DocumentMetadata.prototype, "size", void 0);
88
+ __decorate([
89
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, unique: true }),
90
+ __metadata("design:type", String)
91
+ ], DocumentMetadata.prototype, "mongodb_file_id", void 0);
92
+ __decorate([
93
+ (0, typeorm_1.Column)({ type: 'enum', enum: DocumentType }),
94
+ (0, typeorm_1.Index)(),
95
+ __metadata("design:type", String)
96
+ ], DocumentMetadata.prototype, "document_type", void 0);
97
+ __decorate([
98
+ (0, typeorm_1.Column)({ type: 'enum', enum: AccessLevel, default: AccessLevel.GENERAL }),
99
+ (0, typeorm_1.Index)(),
100
+ __metadata("design:type", String)
101
+ ], DocumentMetadata.prototype, "access_level", void 0);
102
+ __decorate([
103
+ (0, typeorm_1.Column)({ type: 'enum', enum: DocumentStatus, default: DocumentStatus.ACTIVE }),
104
+ (0, typeorm_1.Index)(),
105
+ __metadata("design:type", String)
106
+ ], DocumentMetadata.prototype, "status", void 0);
107
+ __decorate([
108
+ (0, typeorm_1.Column)({ type: 'varchar', length: 50, default: '1.0.0' }),
109
+ __metadata("design:type", String)
110
+ ], DocumentMetadata.prototype, "version", void 0);
111
+ __decorate([
112
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
113
+ __metadata("design:type", Array)
114
+ ], DocumentMetadata.prototype, "tags", void 0);
115
+ __decorate([
116
+ (0, typeorm_1.Column)({ type: 'boolean', default: false }),
117
+ __metadata("design:type", Boolean)
118
+ ], DocumentMetadata.prototype, "is_sensitive", void 0);
119
+ __decorate([
120
+ (0, typeorm_1.ManyToOne)('Departments', { eager: true }),
121
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
122
+ __metadata("design:type", DepartmentsModel_1.Departments)
123
+ ], DocumentMetadata.prototype, "department", void 0);
124
+ __decorate([
125
+ (0, typeorm_1.Column)({ type: 'integer' }),
126
+ __metadata("design:type", Number)
127
+ ], DocumentMetadata.prototype, "department_id", void 0);
128
+ __decorate([
129
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
130
+ __metadata("design:type", Object)
131
+ ], DocumentMetadata.prototype, "folder_id", void 0);
132
+ __decorate([
133
+ (0, typeorm_1.Column)({ type: 'varchar', length: 500, default: '/' }),
134
+ __metadata("design:type", String)
135
+ ], DocumentMetadata.prototype, "folder_path", void 0);
136
+ __decorate([
137
+ (0, typeorm_1.Column)({ type: 'uuid' }),
138
+ __metadata("design:type", String)
139
+ ], DocumentMetadata.prototype, "uploaded_by", void 0);
140
+ __decorate([
141
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
142
+ __metadata("design:type", String)
143
+ ], DocumentMetadata.prototype, "uploaded_by_name", void 0);
144
+ __decorate([
145
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
146
+ __metadata("design:type", String)
147
+ ], DocumentMetadata.prototype, "authorized_person", void 0);
148
+ __decorate([
149
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
150
+ __metadata("design:type", Array)
151
+ ], DocumentMetadata.prototype, "allowed_roles", void 0);
152
+ __decorate([
153
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
154
+ __metadata("design:type", Array)
155
+ ], DocumentMetadata.prototype, "allowed_users", void 0);
156
+ __decorate([
157
+ (0, typeorm_1.Column)({ type: 'int', default: 0 }),
158
+ __metadata("design:type", Number)
159
+ ], DocumentMetadata.prototype, "download_count", void 0);
160
+ __decorate([
161
+ (0, typeorm_1.Column)({ type: 'timestamp', nullable: true }),
162
+ __metadata("design:type", Date)
163
+ ], DocumentMetadata.prototype, "last_accessed_at", void 0);
164
+ __decorate([
165
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
166
+ __metadata("design:type", Object)
167
+ ], DocumentMetadata.prototype, "metadata", void 0);
168
+ exports.DocumentMetadata = DocumentMetadata = __decorate([
169
+ (0, typeorm_1.Entity)({ name: 'document_metadata' }),
170
+ __metadata("design:paramtypes", [String, String, String, Number, String, String, Number, String, String, String, String, String, String, String, Object, String, String, Array, Array, Array, Boolean, Number, Date, Object])
171
+ ], DocumentMetadata);
@@ -0,0 +1,13 @@
1
+ import { BaseModel } from './BaseModel';
2
+ /**
3
+ * Documentation Service specific department configuration
4
+ * Links departments with authorized persons for document management
5
+ */
6
+ export declare class DocumentationDepartments extends BaseModel {
7
+ department_id: number;
8
+ authorized_person_id: string;
9
+ authorized_person_name?: string;
10
+ authorized_person_email?: string;
11
+ is_active: boolean;
12
+ constructor(department_id: number, authorized_person_id: string, authorized_person_name: string, authorized_person_email: string, is_active?: boolean);
13
+ }
@@ -0,0 +1,53 @@
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 BaseModel_1 = require("./BaseModel");
15
+ /**
16
+ * Documentation Service specific department configuration
17
+ * Links departments with authorized persons for document management
18
+ */
19
+ let DocumentationDepartments = class DocumentationDepartments extends BaseModel_1.BaseModel {
20
+ constructor(department_id, authorized_person_id, authorized_person_name, authorized_person_email, is_active = true) {
21
+ super();
22
+ this.department_id = department_id;
23
+ this.authorized_person_id = authorized_person_id;
24
+ this.authorized_person_name = authorized_person_name;
25
+ this.authorized_person_email = authorized_person_email;
26
+ this.is_active = is_active;
27
+ }
28
+ };
29
+ exports.DocumentationDepartments = DocumentationDepartments;
30
+ __decorate([
31
+ (0, typeorm_1.Column)({ type: 'integer' }),
32
+ __metadata("design:type", Number)
33
+ ], DocumentationDepartments.prototype, "department_id", void 0);
34
+ __decorate([
35
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
36
+ __metadata("design:type", String)
37
+ ], DocumentationDepartments.prototype, "authorized_person_id", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
40
+ __metadata("design:type", String)
41
+ ], DocumentationDepartments.prototype, "authorized_person_name", void 0);
42
+ __decorate([
43
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
44
+ __metadata("design:type", String)
45
+ ], DocumentationDepartments.prototype, "authorized_person_email", void 0);
46
+ __decorate([
47
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
48
+ __metadata("design:type", Boolean)
49
+ ], DocumentationDepartments.prototype, "is_active", void 0);
50
+ exports.DocumentationDepartments = DocumentationDepartments = __decorate([
51
+ (0, typeorm_1.Entity)({ name: 'documentation_departments' }),
52
+ __metadata("design:paramtypes", [Number, String, String, String, Boolean])
53
+ ], DocumentationDepartments);
@@ -0,0 +1,16 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ import { UUIDBaseModel } from './UUIDBaseModel';
3
+ export declare class Folder extends UUIDBaseModel {
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_name?: string;
14
+ is_active: boolean;
15
+ constructor(name: string, path: string, department_id: number, created_by: string, access_level?: 'general' | 'restricted', parent_path?: string, description?: string, created_by_name?: string, allowed_roles?: string[], allowed_users?: string[], is_active?: boolean);
16
+ }
@@ -0,0 +1,85 @@
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
+ const UUIDBaseModel_1 = require("./UUIDBaseModel");
16
+ // Note: DocumentMetadata import removed to avoid circular dependency
17
+ // Use lazy loading or query builder when needed
18
+ let Folder = class Folder extends UUIDBaseModel_1.UUIDBaseModel {
19
+ constructor(name, path, department_id, created_by, access_level = 'general', parent_path, description, created_by_name, allowed_roles, allowed_users, is_active = true) {
20
+ super();
21
+ this.name = name;
22
+ this.path = path;
23
+ this.department_id = department_id;
24
+ this.created_by = created_by;
25
+ this.access_level = access_level;
26
+ this.parent_path = parent_path;
27
+ this.description = description;
28
+ this.created_by_name = created_by_name;
29
+ this.allowed_roles = allowed_roles || [];
30
+ this.allowed_users = allowed_users || [];
31
+ this.is_active = is_active;
32
+ }
33
+ };
34
+ exports.Folder = Folder;
35
+ __decorate([
36
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
37
+ __metadata("design:type", String)
38
+ ], Folder.prototype, "name", void 0);
39
+ __decorate([
40
+ (0, typeorm_1.Column)({ type: 'varchar', length: 1000 }),
41
+ __metadata("design:type", String)
42
+ ], Folder.prototype, "path", void 0);
43
+ __decorate([
44
+ (0, typeorm_1.Column)({ type: 'varchar', length: 1000, nullable: true }),
45
+ __metadata("design:type", String)
46
+ ], Folder.prototype, "parent_path", void 0);
47
+ __decorate([
48
+ (0, typeorm_1.ManyToOne)('Departments', { eager: true }),
49
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
50
+ __metadata("design:type", DepartmentsModel_1.Departments)
51
+ ], Folder.prototype, "department", void 0);
52
+ __decorate([
53
+ (0, typeorm_1.Column)({ type: 'integer' }),
54
+ __metadata("design:type", Number)
55
+ ], Folder.prototype, "department_id", void 0);
56
+ __decorate([
57
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
58
+ __metadata("design:type", String)
59
+ ], Folder.prototype, "description", void 0);
60
+ __decorate([
61
+ (0, typeorm_1.Column)({ type: 'enum', enum: ['general', 'restricted'], default: 'general' }),
62
+ (0, typeorm_1.Index)(),
63
+ __metadata("design:type", String)
64
+ ], Folder.prototype, "access_level", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
67
+ __metadata("design:type", Array)
68
+ ], Folder.prototype, "allowed_roles", void 0);
69
+ __decorate([
70
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
71
+ __metadata("design:type", Array)
72
+ ], Folder.prototype, "allowed_users", void 0);
73
+ __decorate([
74
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
75
+ __metadata("design:type", String)
76
+ ], Folder.prototype, "created_by_name", void 0);
77
+ __decorate([
78
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
79
+ (0, typeorm_1.Index)(),
80
+ __metadata("design:type", Boolean)
81
+ ], Folder.prototype, "is_active", void 0);
82
+ exports.Folder = Folder = __decorate([
83
+ (0, typeorm_1.Entity)({ name: 'folders' }),
84
+ __metadata("design:paramtypes", [String, String, Number, String, String, String, String, String, Array, Array, Boolean])
85
+ ], Folder);
@@ -0,0 +1,18 @@
1
+ import { Role } from './role';
2
+ import { UUIDBaseModel } from './UUIDBaseModel';
3
+ export declare enum PermissionType {
4
+ VIEW = "view",
5
+ UPLOAD = "upload",
6
+ UPDATE = "update",
7
+ DELETE = "delete",
8
+ PUBLISH = "publish"
9
+ }
10
+ export declare class Permission extends UUIDBaseModel {
11
+ name: string;
12
+ code: string;
13
+ type: PermissionType;
14
+ description?: string;
15
+ is_active: boolean;
16
+ roles: Role[];
17
+ constructor(name: string, code: string, type: PermissionType, created_by: string, description?: string, is_active?: boolean);
18
+ }
@@ -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.Permission = exports.PermissionType = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const role_1 = require("./role");
15
+ const UUIDBaseModel_1 = require("./UUIDBaseModel");
16
+ var PermissionType;
17
+ (function (PermissionType) {
18
+ PermissionType["VIEW"] = "view";
19
+ PermissionType["UPLOAD"] = "upload";
20
+ PermissionType["UPDATE"] = "update";
21
+ PermissionType["DELETE"] = "delete";
22
+ PermissionType["PUBLISH"] = "publish";
23
+ })(PermissionType || (exports.PermissionType = PermissionType = {}));
24
+ let Permission = class Permission extends UUIDBaseModel_1.UUIDBaseModel {
25
+ constructor(name, code, type, created_by, description, is_active = true) {
26
+ super();
27
+ this.name = name;
28
+ this.code = code;
29
+ this.type = type;
30
+ this.created_by = created_by;
31
+ this.description = description;
32
+ this.is_active = is_active;
33
+ }
34
+ };
35
+ exports.Permission = Permission;
36
+ __decorate([
37
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100, unique: true }),
38
+ __metadata("design:type", String)
39
+ ], Permission.prototype, "name", void 0);
40
+ __decorate([
41
+ (0, typeorm_1.Column)({ type: 'varchar', length: 50, unique: true }),
42
+ __metadata("design:type", String)
43
+ ], Permission.prototype, "code", void 0);
44
+ __decorate([
45
+ (0, typeorm_1.Column)({ type: 'enum', enum: PermissionType }),
46
+ __metadata("design:type", String)
47
+ ], Permission.prototype, "type", void 0);
48
+ __decorate([
49
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
50
+ __metadata("design:type", String)
51
+ ], Permission.prototype, "description", void 0);
52
+ __decorate([
53
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
54
+ __metadata("design:type", Boolean)
55
+ ], Permission.prototype, "is_active", void 0);
56
+ __decorate([
57
+ (0, typeorm_1.ManyToMany)(() => role_1.Role),
58
+ (0, typeorm_1.JoinTable)({
59
+ name: 'role_permissions',
60
+ joinColumn: { name: 'permission_id', referencedColumnName: 'id' },
61
+ inverseJoinColumn: { name: 'role_id', referencedColumnName: 'id' },
62
+ }),
63
+ __metadata("design:type", Array)
64
+ ], Permission.prototype, "roles", void 0);
65
+ exports.Permission = Permission = __decorate([
66
+ (0, typeorm_1.Entity)({ name: 'permissions' }),
67
+ __metadata("design:paramtypes", [String, String, String, String, String, Boolean])
68
+ ], Permission);
@@ -25,5 +25,11 @@ export declare class StudyLeaveRequest extends BaseModel {
25
25
  assigned_to_user_id: number | null;
26
26
  assigned_at: Date | null;
27
27
  workflow_execution_id: string | null;
28
- constructor(user_id: number, course_name: string, institute_name: string, course_start_date: Date, course_end_date: Date, location: string, description: string, status?: StudyLeaveRequestStatus, service_id?: number | null, sub_service_id?: number | null, req_user_department_id?: number | null, req_user_section_id?: number | null, req_user_position_id?: number | null, duration_of_course?: string | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null);
28
+ already_submitted_in_ministry_of_education_system: boolean | null;
29
+ area_name: string | null;
30
+ country_name: string | null;
31
+ qualification_required: string | null;
32
+ have_you_ever_received_authority: boolean | null;
33
+ scholarship: string | null;
34
+ constructor(user_id: number, course_name: string, institute_name: string, course_start_date: Date, course_end_date: Date, location: string, description: string, status?: StudyLeaveRequestStatus, service_id?: number | null, sub_service_id?: number | null, req_user_department_id?: number | null, req_user_section_id?: number | null, req_user_position_id?: number | null, duration_of_course?: string | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null, already_submitted_in_ministry_of_education_system?: boolean | null, area_name?: string | null, country_name?: string | null, qualification_required?: string | null, have_you_ever_received_authority?: boolean | null, scholarship?: string | null);
29
35
  }
@@ -21,7 +21,7 @@ var StudyLeaveRequestStatus;
21
21
  StudyLeaveRequestStatus["REJECTED"] = "Rejected";
22
22
  })(StudyLeaveRequestStatus || (exports.StudyLeaveRequestStatus = StudyLeaveRequestStatus = {}));
23
23
  let StudyLeaveRequest = class StudyLeaveRequest extends BaseModel_1.BaseModel {
24
- constructor(user_id, course_name, institute_name, course_start_date, course_end_date, location, description, status = StudyLeaveRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, duration_of_course, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id) {
24
+ constructor(user_id, course_name, institute_name, course_start_date, course_end_date, location, description, status = StudyLeaveRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, duration_of_course, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id, already_submitted_in_ministry_of_education_system, area_name, country_name, qualification_required, have_you_ever_received_authority, scholarship) {
25
25
  super();
26
26
  this.user_id = user_id;
27
27
  this.course_name = course_name;
@@ -41,6 +41,12 @@ let StudyLeaveRequest = class StudyLeaveRequest extends BaseModel_1.BaseModel {
41
41
  this.assigned_to_user_id = assigned_to_user_id || null;
42
42
  this.assigned_at = assigned_at || null;
43
43
  this.workflow_execution_id = workflow_execution_id || null;
44
+ this.already_submitted_in_ministry_of_education_system = already_submitted_in_ministry_of_education_system ?? null;
45
+ this.area_name = area_name ?? null;
46
+ this.country_name = country_name ?? null;
47
+ this.qualification_required = qualification_required ?? null;
48
+ this.have_you_ever_received_authority = have_you_ever_received_authority ?? null;
49
+ this.scholarship = scholarship ?? null;
44
50
  }
45
51
  };
46
52
  exports.StudyLeaveRequest = StudyLeaveRequest;
@@ -121,8 +127,32 @@ __decorate([
121
127
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
122
128
  __metadata("design:type", Object)
123
129
  ], StudyLeaveRequest.prototype, "workflow_execution_id", void 0);
130
+ __decorate([
131
+ (0, typeorm_1.Column)({ type: "boolean", default: false, nullable: true }),
132
+ __metadata("design:type", Object)
133
+ ], StudyLeaveRequest.prototype, "already_submitted_in_ministry_of_education_system", void 0);
134
+ __decorate([
135
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
136
+ __metadata("design:type", Object)
137
+ ], StudyLeaveRequest.prototype, "area_name", void 0);
138
+ __decorate([
139
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
140
+ __metadata("design:type", Object)
141
+ ], StudyLeaveRequest.prototype, "country_name", void 0);
142
+ __decorate([
143
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
144
+ __metadata("design:type", Object)
145
+ ], StudyLeaveRequest.prototype, "qualification_required", void 0);
146
+ __decorate([
147
+ (0, typeorm_1.Column)({ type: "boolean", default: false, nullable: true }),
148
+ __metadata("design:type", Object)
149
+ ], StudyLeaveRequest.prototype, "have_you_ever_received_authority", void 0);
150
+ __decorate([
151
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
152
+ __metadata("design:type", Object)
153
+ ], StudyLeaveRequest.prototype, "scholarship", void 0);
124
154
  exports.StudyLeaveRequest = StudyLeaveRequest = __decorate([
125
155
  (0, typeorm_1.Entity)({ name: "study_leave_requests" }),
126
156
  __metadata("design:paramtypes", [Number, String, String, Date,
127
- Date, String, String, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
157
+ Date, String, String, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
128
158
  ], StudyLeaveRequest);
@@ -7,11 +7,12 @@ export declare enum TrainingRoomBookingRequestStatus {
7
7
  REJECTED = "Rejected"
8
8
  }
9
9
  export declare enum TrainingRoomBookingRoomType {
10
- CLASSROOM_1 = "Classroom 1",
11
- CLASSROOM_2 = "Classroom 2",
12
- CLASSROOM_3 = "Classroom 3",
13
- CLASSROOM_4 = "Classroom 4",
14
- TRAINING_CENTRE_HALL = "Training Centre Hall"
10
+ TRAINING_ROOMS_A = "Training Rooms (A1, A2)",
11
+ TRAINING_ROOMS_B = "Training Rooms (B1, B2)",
12
+ TRAINING_ROOMS_C = "Training Rooms (C1, C2)",
13
+ TRAINING_ROOMS_D = "Training Rooms (D1, D2)",
14
+ LECTURE_HALL = "Lecture Hall",
15
+ LABORATORY = "Laboratory"
15
16
  }
16
17
  export declare class TrainingRoomBookingRequest extends BaseModel {
17
18
  req_user_department_id: number | null;