@platform-modules/civil-aviation-authority 2.3.145 → 2.3.147

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 (76) hide show
  1. package/.env +9 -17
  2. package/dist/data-source.js +10 -0
  3. package/dist/index.d.ts +5 -0
  4. package/dist/index.js +5 -0
  5. package/dist/models/CyberSecurityRiskManagementRiskModel.js +2 -2
  6. package/dist/models/ITApprovalSettings.d.ts +7 -0
  7. package/dist/models/ITApprovalSettings.js +40 -0
  8. package/dist/models/ITServicesTypesMuscatModel.d.ts +6 -0
  9. package/dist/models/ITServicesTypesMuscatModel.js +34 -0
  10. package/dist/models/ITServicesTypesSalalahModel.d.ts +6 -0
  11. package/dist/models/ITServicesTypesSalalahModel.js +34 -0
  12. package/dist/models/ScholarshipApprovalModel.d.ts +24 -0
  13. package/dist/models/ScholarshipApprovalModel.js +88 -0
  14. package/dist/models/ScholarshipAttachmentModel.d.ts +12 -0
  15. package/dist/models/ScholarshipAttachmentModel.js +56 -0
  16. package/dist/models/ScholarshipChatModel.d.ts +18 -0
  17. package/dist/models/ScholarshipChatModel.js +65 -0
  18. package/dist/models/ScholarshipRequestModel.d.ts +30 -0
  19. package/dist/models/ScholarshipRequestModel.js +94 -0
  20. package/dist/models/ScholarshipWorkflowModel.d.ts +19 -0
  21. package/dist/models/ScholarshipWorkflowModel.js +66 -0
  22. package/dist/models/Workflows.d.ts +9 -0
  23. package/dist/models/Workflows.js +31 -0
  24. package/package.json +1 -1
  25. package/src/data-source.ts +337 -327
  26. package/src/index.ts +362 -357
  27. package/src/models/AccommodationApprovalModel.ts +8 -8
  28. package/src/models/AnnualIncrementRequestEmployeeModel.ts +65 -65
  29. package/src/models/AnnualIncrementRequestModel.ts +25 -25
  30. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -153
  31. package/src/models/AppealAgainstAdministrativeDecisionRequestModel.ts +23 -23
  32. package/src/models/CAAServices.ts +33 -33
  33. package/src/models/CAASubServices.ts +33 -33
  34. package/src/models/CAIRatingMasterModel.ts +39 -39
  35. package/src/models/CSRMBusinessImpactRatingMasterModel.ts +25 -25
  36. package/src/models/CSRMLikelihoodMasterModel.ts +25 -25
  37. package/src/models/CashAllowanceLeaveRequestModel.ts +11 -11
  38. package/src/models/CyberSecurityAuditRequestModel.ts +32 -32
  39. package/src/models/CyberSecurityRiskManagementRiskModel.ts +4 -4
  40. package/src/models/DepartmentsModel.ts +25 -25
  41. package/src/models/DocumentDriveModel.ts +28 -28
  42. package/src/models/DocumentFolderModel.ts +45 -45
  43. package/src/models/HousingContractCancelChatModel.ts +56 -56
  44. package/src/models/HousingContractRenewalChatModel.ts +59 -59
  45. package/src/models/HrServiceRequestModel.ts +193 -193
  46. package/src/models/ITRequestChatModel.ts +62 -62
  47. package/src/models/ItApprovalsModel.ts +84 -84
  48. package/src/models/ItWorkflowModel.ts +55 -55
  49. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  50. package/src/models/PerformanceCyclePeriodModel.ts +26 -26
  51. package/src/models/PerformanceGoalMasterModel.ts +27 -27
  52. package/src/models/PerformanceManagementRequestGoalModel.ts +46 -46
  53. package/src/models/PerformanceManagementRequestModel.ts +14 -14
  54. package/src/models/PromotionRequestModel.ts +11 -11
  55. package/src/models/ResidentialUnitRentalChatModel.ts +56 -56
  56. package/src/models/ResidentialUnitRentalRequestModel.ts +218 -218
  57. package/src/models/ScholarshipApprovalModel.ts +60 -0
  58. package/src/models/ScholarshipAttachmentModel.ts +32 -0
  59. package/src/models/ScholarshipChatModel.ts +42 -0
  60. package/src/models/ScholarshipRequestModel.ts +64 -0
  61. package/src/models/ScholarshipWorkflowModel.ts +42 -0
  62. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  63. package/src/models/StudyLeaveRequestModel.ts +144 -144
  64. package/src/models/TrainingRoomBookingRequestModel.ts +142 -142
  65. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  66. package/src/models/UserSkillModel.ts +56 -56
  67. package/dist/models/DocumentMetadataModel.d.ts +0 -45
  68. package/dist/models/DocumentMetadataModel.js +0 -171
  69. package/dist/models/DocumentationDepartmentsModel.d.ts +0 -13
  70. package/dist/models/DocumentationDepartmentsModel.js +0 -53
  71. package/dist/models/FolderModel.d.ts +0 -16
  72. package/dist/models/FolderModel.js +0 -85
  73. package/dist/models/PermissionModel.d.ts +0 -18
  74. package/dist/models/PermissionModel.js +0 -68
  75. package/dist/models/UUIDBaseModel.d.ts +0 -14
  76. package/dist/models/UUIDBaseModel.js +0 -66
@@ -1,219 +1,219 @@
1
- import { Column, Entity } from "typeorm";
2
-
3
- import { BaseModel } from "./BaseModel";
4
-
5
-
6
-
7
-
8
- export enum ResidentialUnitRentalRequestStatus {
9
-
10
- Pending = 'Pending',
11
-
12
- Approved = 'Approved',
13
-
14
- Rejected = 'Rejected',
15
-
16
- RFC = 'RFC'
17
-
18
- }
19
-
20
-
21
-
22
-
23
- @Entity({ name: 'residential_unit_rental_requests' })
24
-
25
- export class ResidentialUnitRentalRequest extends BaseModel {
26
-
27
-
28
-
29
-
30
- @Column({ type: 'varchar', length: 20, nullable: false })
31
-
32
- request_id: string;
33
-
34
-
35
-
36
-
37
- @Column({ type: 'int', nullable: false })
38
-
39
- service_id: number;
40
-
41
-
42
-
43
-
44
- @Column({ type: 'int', nullable: false })
45
-
46
- sub_service_id: number;
47
-
48
-
49
-
50
-
51
- @Column({ type: 'varchar', length: 50, nullable: false })
52
-
53
- requested_unit_type: string; // Apartment, Villa
54
-
55
-
56
-
57
-
58
- /** UI sends apartment type as a plain string value */
59
-
60
- @Column({ type: 'json', nullable: true })
61
-
62
- apartment_type: string | null;
63
-
64
-
65
-
66
-
67
- /** BRD: Villa options with OMR rates - 1 ROOM 201, 2 ROOM 350, 3 ROOM 400 */
68
-
69
- @Column({ type: 'json', nullable: true })
70
-
71
- villa_type: {
72
-
73
- one_room?: boolean;
74
-
75
- two_room?: boolean;
76
-
77
- three_room?: boolean;
78
-
79
- };
80
-
81
-
82
-
83
-
84
- @Column({ type: 'varchar', length: 20, nullable: true })
85
-
86
- extension_number: string;
87
-
88
-
89
-
90
-
91
- @Column({ type: 'date', nullable: false })
92
-
93
- preferred_start_date: Date;
94
-
95
-
96
-
97
-
98
- @Column({ type: 'int', nullable: false })
99
-
100
- family_size: number;
101
-
102
-
103
-
104
-
105
- @Column({ type: 'varchar', length: 50, nullable: false })
106
-
107
- duration_of_stay: string; // Months/Years
108
-
109
-
110
-
111
-
112
- @Column({ type: 'varchar', length: 255, nullable: true })
113
-
114
- location_of_unit: string;
115
-
116
-
117
-
118
-
119
- @Column({ type: 'text', nullable: true })
120
-
121
- comment: string;
122
-
123
-
124
-
125
-
126
- @Column({ type: 'varchar', length: 20, nullable: false, default: 'Pending' })
127
-
128
- status: string;
129
-
130
-
131
-
132
-
133
- @Column({ type: 'int', nullable: true })
134
-
135
- user_id: number;
136
-
137
-
138
-
139
-
140
- @Column({ type: 'varchar', length: 255, nullable: true })
141
-
142
- workflow_execution_id: string;
143
-
144
-
145
-
146
-
147
- @Column({ type: 'int', nullable: false })
148
-
149
- created_by: number;
150
-
151
-
152
-
153
-
154
- @Column({ type: 'int', nullable: true })
155
-
156
- approved_by: number;
157
-
158
-
159
-
160
-
161
- @Column({ type: 'date', nullable: true })
162
-
163
- approved_at: Date;
164
-
165
-
166
-
167
-
168
- @Column({ type: 'text', nullable: true })
169
-
170
- approver_comment: string;
171
-
172
-
173
-
174
-
175
- @Column({ type: 'json', nullable: true })
176
-
177
- unit_details: {
178
-
179
- type: string;
180
-
181
- specifications: any;
182
-
183
- rate: number;
184
-
185
- };
186
-
187
-
188
-
189
-
190
- @Column({ type: 'date', nullable: true })
191
-
192
- rental_start_date: Date;
193
-
194
-
195
-
196
-
197
- @Column({ type: 'date', nullable: true })
198
-
199
- rental_end_date: Date;
200
-
201
-
202
-
203
-
204
- @Column({ type: 'text', nullable: true })
205
-
206
- rental_agreement_url: string;
207
-
208
-
209
-
210
-
211
- constructor() {
212
-
213
- super();
214
-
215
- }
216
-
217
- }
218
-
1
+ import { Column, Entity } from "typeorm";
2
+
3
+ import { BaseModel } from "./BaseModel";
4
+
5
+
6
+
7
+
8
+ export enum ResidentialUnitRentalRequestStatus {
9
+
10
+ Pending = 'Pending',
11
+
12
+ Approved = 'Approved',
13
+
14
+ Rejected = 'Rejected',
15
+
16
+ RFC = 'RFC'
17
+
18
+ }
19
+
20
+
21
+
22
+
23
+ @Entity({ name: 'residential_unit_rental_requests' })
24
+
25
+ export class ResidentialUnitRentalRequest extends BaseModel {
26
+
27
+
28
+
29
+
30
+ @Column({ type: 'varchar', length: 20, nullable: false })
31
+
32
+ request_id: string;
33
+
34
+
35
+
36
+
37
+ @Column({ type: 'int', nullable: false })
38
+
39
+ service_id: number;
40
+
41
+
42
+
43
+
44
+ @Column({ type: 'int', nullable: false })
45
+
46
+ sub_service_id: number;
47
+
48
+
49
+
50
+
51
+ @Column({ type: 'varchar', length: 50, nullable: false })
52
+
53
+ requested_unit_type: string; // Apartment, Villa
54
+
55
+
56
+
57
+
58
+ /** UI sends apartment type as a plain string value */
59
+
60
+ @Column({ type: 'json', nullable: true })
61
+
62
+ apartment_type: string | null;
63
+
64
+
65
+
66
+
67
+ /** BRD: Villa options with OMR rates - 1 ROOM 201, 2 ROOM 350, 3 ROOM 400 */
68
+
69
+ @Column({ type: 'json', nullable: true })
70
+
71
+ villa_type: {
72
+
73
+ one_room?: boolean;
74
+
75
+ two_room?: boolean;
76
+
77
+ three_room?: boolean;
78
+
79
+ };
80
+
81
+
82
+
83
+
84
+ @Column({ type: 'varchar', length: 20, nullable: true })
85
+
86
+ extension_number: string;
87
+
88
+
89
+
90
+
91
+ @Column({ type: 'date', nullable: false })
92
+
93
+ preferred_start_date: Date;
94
+
95
+
96
+
97
+
98
+ @Column({ type: 'int', nullable: false })
99
+
100
+ family_size: number;
101
+
102
+
103
+
104
+
105
+ @Column({ type: 'varchar', length: 50, nullable: false })
106
+
107
+ duration_of_stay: string; // Months/Years
108
+
109
+
110
+
111
+
112
+ @Column({ type: 'varchar', length: 255, nullable: true })
113
+
114
+ location_of_unit: string;
115
+
116
+
117
+
118
+
119
+ @Column({ type: 'text', nullable: true })
120
+
121
+ comment: string;
122
+
123
+
124
+
125
+
126
+ @Column({ type: 'varchar', length: 20, nullable: false, default: 'Pending' })
127
+
128
+ status: string;
129
+
130
+
131
+
132
+
133
+ @Column({ type: 'int', nullable: true })
134
+
135
+ user_id: number;
136
+
137
+
138
+
139
+
140
+ @Column({ type: 'varchar', length: 255, nullable: true })
141
+
142
+ workflow_execution_id: string;
143
+
144
+
145
+
146
+
147
+ @Column({ type: 'int', nullable: false })
148
+
149
+ created_by: number;
150
+
151
+
152
+
153
+
154
+ @Column({ type: 'int', nullable: true })
155
+
156
+ approved_by: number;
157
+
158
+
159
+
160
+
161
+ @Column({ type: 'date', nullable: true })
162
+
163
+ approved_at: Date;
164
+
165
+
166
+
167
+
168
+ @Column({ type: 'text', nullable: true })
169
+
170
+ approver_comment: string;
171
+
172
+
173
+
174
+
175
+ @Column({ type: 'json', nullable: true })
176
+
177
+ unit_details: {
178
+
179
+ type: string;
180
+
181
+ specifications: any;
182
+
183
+ rate: number;
184
+
185
+ };
186
+
187
+
188
+
189
+
190
+ @Column({ type: 'date', nullable: true })
191
+
192
+ rental_start_date: Date;
193
+
194
+
195
+
196
+
197
+ @Column({ type: 'date', nullable: true })
198
+
199
+ rental_end_date: Date;
200
+
201
+
202
+
203
+
204
+ @Column({ type: 'text', nullable: true })
205
+
206
+ rental_agreement_url: string;
207
+
208
+
209
+
210
+
211
+ constructor() {
212
+
213
+ super();
214
+
215
+ }
216
+
217
+ }
218
+
219
219
 
@@ -0,0 +1,60 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum ScholarshipApprovalStatus {
5
+ PENDING = "Pending",
6
+ IN_PROGRESS = "In Progress",
7
+ APPROVED = "Approved",
8
+ REJECTED = "Rejected",
9
+ }
10
+
11
+ @Entity({ name: "scholarship_approvals" })
12
+ export class ScholarshipApprovalDetails extends BaseModel {
13
+ @Column({ type: "integer", nullable: false })
14
+ request_id: number;
15
+
16
+ @Column({ type: "integer", nullable: true })
17
+ service_id: number | null;
18
+
19
+ @Column({ type: "integer", nullable: true })
20
+ sub_service_id: number | null;
21
+
22
+ @Column({ type: "integer", nullable: false })
23
+ level: number;
24
+
25
+ /** Matches workflow_hierarchy.step_order / scholarship_workflows.step_order for this approval row */
26
+ @Column({ type: "integer", nullable: true })
27
+ workflow_step_order: number | null;
28
+
29
+ @Column({ type: "integer", nullable: true })
30
+ approver_role_id: number | null;
31
+
32
+ @Column({ type: "integer", nullable: true })
33
+ department_id: number | null;
34
+
35
+ @Column({ type: "integer", nullable: true })
36
+ section_id: number | null;
37
+
38
+ @Column({ type: "integer", nullable: true })
39
+ approver_user_id: number | null;
40
+
41
+ @Column({ type: "integer", nullable: true })
42
+ delegate_user_id: number | null;
43
+
44
+ @Column({ type: "integer", nullable: true })
45
+ approved_by: number | null;
46
+
47
+ @Column({ type: "varchar", length: 500, nullable: true, default: "" })
48
+ comment: string;
49
+
50
+ @Column({
51
+ type: "enum",
52
+ enum: ScholarshipApprovalStatus,
53
+ default: ScholarshipApprovalStatus.PENDING,
54
+ nullable: false,
55
+ })
56
+ approval_status: ScholarshipApprovalStatus;
57
+
58
+ @Column({ type: "boolean", default: true, nullable: false })
59
+ is_allowed: boolean;
60
+ }
@@ -0,0 +1,32 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "scholarship_attachments" })
5
+ export class ScholarshipRequestAttachment extends BaseModel {
6
+ @Column({ type: "integer", nullable: false })
7
+ request_id: number;
8
+
9
+ @Column({ type: "integer", nullable: true })
10
+ service_id: number | null;
11
+
12
+ @Column({ type: "integer", nullable: true })
13
+ sub_service_id: number | null;
14
+
15
+ @Column({ type: "varchar", length: 500, nullable: false })
16
+ file_url: string;
17
+
18
+ @Column({ type: "varchar", length: 255, nullable: true })
19
+ file_name: string;
20
+
21
+ @Column({ type: "varchar", length: 100, nullable: true })
22
+ file_type: string;
23
+
24
+ @Column({ type: "bigint", nullable: true })
25
+ file_size: number | null;
26
+
27
+ @Column({ type: "integer", nullable: true })
28
+ chat_id: number | null;
29
+
30
+ @Column({ type: "varchar", length: 255, nullable: true })
31
+ attachment_for: string | null;
32
+ }
@@ -0,0 +1,42 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum ScholarshipMessageType {
5
+ TEXT = "text",
6
+ IMAGE = "image",
7
+ VIDEO = "video",
8
+ FILE = "file",
9
+ LINK = "link",
10
+ }
11
+
12
+ @Entity({ name: "scholarship_chats" })
13
+ export class ScholarshipRequestChat extends BaseModel {
14
+ @Column({ type: "integer", nullable: false })
15
+ request_id: number;
16
+
17
+ @Column({ type: "integer", nullable: true })
18
+ service_id: number | null;
19
+
20
+ @Column({ type: "integer", nullable: true })
21
+ sub_service_id: number | null;
22
+
23
+ @Column({ type: "integer", nullable: false })
24
+ user_id: number;
25
+
26
+ @Column({ type: "integer", nullable: true })
27
+ role_id: number | null;
28
+
29
+ @Column({ type: "text", nullable: false })
30
+ message: string;
31
+
32
+ @Column({
33
+ type: "enum",
34
+ enum: ScholarshipMessageType,
35
+ default: ScholarshipMessageType.TEXT,
36
+ nullable: false,
37
+ })
38
+ messageType: ScholarshipMessageType;
39
+
40
+ @Column({ type: "text", nullable: true })
41
+ status: string | null;
42
+ }
@@ -0,0 +1,64 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum ScholarshipRequestStatus {
5
+ PENDING = "Pending",
6
+ ASSIGNED = "Assigned",
7
+ IN_PROGRESS = "In Progress",
8
+ APPROVED = "Approved",
9
+ REJECTED = "Rejected",
10
+ CANCELLED = "Cancelled",
11
+ }
12
+
13
+ export enum ScholarshipType {
14
+ PLANNED = "Planned",
15
+ UNPLANNED = "Unplanned",
16
+ }
17
+
18
+ @Entity({ name: "scholarship_requests" })
19
+ export class ScholarshipRequests extends BaseModel {
20
+ @Column({ type: "integer", nullable: true })
21
+ req_user_department_id: number | null;
22
+
23
+ @Column({ type: "integer", nullable: true })
24
+ req_user_section_id: number | null;
25
+
26
+ @Column({ type: "integer", nullable: true })
27
+ service_id: number | null;
28
+
29
+ @Column({ type: "integer", nullable: true })
30
+ sub_service_id: number | null;
31
+
32
+ @Column({ type: "integer", nullable: false })
33
+ user_id: number;
34
+
35
+ @Column({ type: "enum", enum: ScholarshipRequestStatus, default: ScholarshipRequestStatus.PENDING, nullable: false })
36
+ status: ScholarshipRequestStatus;
37
+
38
+ @Column({ type: "varchar", nullable: true })
39
+ workflow_execution_id: string | null;
40
+
41
+ @Column({ type: "varchar", length: 500, nullable: true })
42
+ scholarship_name: string | null;
43
+
44
+ @Column({ type: "enum", enum: ScholarshipType, nullable: false })
45
+ type: ScholarshipType;
46
+
47
+ @Column({ type: "text", nullable: true })
48
+ reason: string | null;
49
+
50
+ @Column({ type: "text", nullable: true })
51
+ description: string | null;
52
+
53
+ @Column({ type: "date", nullable: true })
54
+ start_date: string | null;
55
+
56
+ @Column({ type: "date", nullable: true })
57
+ end_date: string | null;
58
+
59
+ @Column({ type: "integer", nullable: true })
60
+ number_of_attendees: number | null;
61
+
62
+ @Column({ type: "varchar", length: 500, nullable: true })
63
+ place: string | null;
64
+ }
@@ -0,0 +1,42 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum ScholarshipWorkFlowStatus {
5
+ COMPLETED = "Completed",
6
+ NOT_YET_STARTED = "Not Yet Started",
7
+ PENDING = "Pending",
8
+ }
9
+
10
+ @Entity({ name: "scholarship_workflows" })
11
+ export class ScholarshipWorkFlow extends BaseModel {
12
+ @Column({ type: "integer", nullable: false })
13
+ request_id: number;
14
+
15
+ @Column({ type: "integer", nullable: true })
16
+ service_id: number | null;
17
+
18
+ @Column({ type: "integer", nullable: true })
19
+ sub_service_id: number | null;
20
+
21
+ @Column({ type: "varchar", length: 500, nullable: false })
22
+ content: string;
23
+
24
+ @Column({ type: "enum", enum: ScholarshipWorkFlowStatus, default: ScholarshipWorkFlowStatus.NOT_YET_STARTED, nullable: false })
25
+ status: ScholarshipWorkFlowStatus;
26
+
27
+ @Column({ type: "integer", nullable: true })
28
+ user_id: number | null;
29
+
30
+ @Column({ type: "integer", nullable: true })
31
+ role_id: number | null;
32
+
33
+ @Column({ type: "integer", nullable: true })
34
+ department_id: number | null;
35
+
36
+ @Column({ type: "integer", nullable: true })
37
+ section_id: number | null;
38
+
39
+ /** Aligns with workflow hierarchy step_order / Conductor human stepOrder */
40
+ @Column({ type: "integer", nullable: true })
41
+ step_order: number | null;
42
+ }