@platform-modules/civil-aviation-authority 2.3.192 → 2.3.193

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 (37) hide show
  1. package/.env +0 -8
  2. package/dist/models/ScholarshipAttendeeModel.d.ts +1 -0
  3. package/dist/models/ScholarshipAttendeeModel.js +4 -0
  4. package/package.json +1 -1
  5. package/platform-modules-civil-aviation-authority-2.3.193.tgz +0 -0
  6. package/src/models/AccessCardRequestModel.ts +135 -135
  7. package/src/models/AirportEntryPermitModel.ts +276 -276
  8. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -153
  9. package/src/models/DepartmentsModel.ts +25 -25
  10. package/src/models/DocumentDriveModel.ts +28 -28
  11. package/src/models/DocumentFolderModel.ts +45 -45
  12. package/src/models/HousingContractCancelChatModel.ts +56 -56
  13. package/src/models/HousingContractRenewalChatModel.ts +59 -59
  14. package/src/models/ITRequestAttachmentModel.ts +73 -73
  15. package/src/models/ITRequestChatModel.ts +74 -74
  16. package/src/models/ItApprovalsModel.ts +84 -84
  17. package/src/models/ItWorkflowModel.ts +55 -55
  18. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  19. package/src/models/ResidentialUnitRentalChatModel.ts +56 -56
  20. package/src/models/ResidentialUnitRentalRequestModel.ts +218 -218
  21. package/src/models/ScholarshipAttendeeModel.ts +3 -0
  22. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  23. package/src/models/StudyLeaveRequestModel.ts +144 -144
  24. package/src/models/TrainingRequestModel.ts +164 -164
  25. package/src/models/TrainingRoomBookingRequestModel.ts +142 -142
  26. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  27. package/src/models/user.ts +233 -233
  28. package/dist/models/DocumentMetadataModel.d.ts +0 -45
  29. package/dist/models/DocumentMetadataModel.js +0 -171
  30. package/dist/models/DocumentationDepartmentsModel.d.ts +0 -13
  31. package/dist/models/DocumentationDepartmentsModel.js +0 -53
  32. package/dist/models/FolderModel.d.ts +0 -16
  33. package/dist/models/FolderModel.js +0 -85
  34. package/dist/models/PermissionModel.d.ts +0 -18
  35. package/dist/models/PermissionModel.js +0 -68
  36. package/dist/models/UUIDBaseModel.d.ts +0 -14
  37. package/dist/models/UUIDBaseModel.js +0 -66
@@ -1,276 +1,276 @@
1
- import { Entity, Column } from 'typeorm';
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum AirportEntryPermitCategory {
5
- ISSUING_NEW_PERMIT = "Issuing New Permit",
6
- RENEWAL_OF_PERMIT = "Renewal of Permit",
7
- AMENDING = "Amending",
8
- REPLACING_LOST = "Replacing lost",
9
- CANCELLING_AIRPORT_SECURITY_PERMITS = "Cancelling airport security permits"
10
- }
11
-
12
- export enum AirportEntryPermitType {
13
- PERMANENT = "Permanent",
14
- TEMPORARY = "Temporary"
15
- }
16
-
17
- export enum AirportEntryPermitLocation {
18
- MUSCAT = "Muscat",
19
- SALALAH = "Salalah",
20
- MARMUL = "Marmul",
21
- DURUM = "Durum",
22
- SOHAR = "Sohar",
23
- FUHUD = "Fuhud",
24
- MUKHAZINA = "Mukhazina"
25
- }
26
-
27
- export enum AirportEntryPermitArea {
28
- PURPLE = "VIP Building",
29
- HEAVENLY = "Cargo Building (Imports & Exports)",
30
- ORANGE = "Arrivals Hall / Arrivals Building",
31
- GREEN = "Departures Hall / Departures Building",
32
- YELLOW = "Information Center / Control Tower",
33
- BLUE = "Aircraft Parking Area, Aircraft Maintenance Building, Vehicle Repair Workshop, Fire Station, and Fueling Stations",
34
- PINK = "Baggage Sorting Area",
35
- GRAY = "Catering Building",
36
- BLACK = "Aircraft Maintenance Building",
37
- GOLD = "Gold Building",
38
- RED = "All Civil Airports"
39
- }
40
-
41
- export enum AirportEntryPermitStatus {
42
- PENDING = "Pending",
43
- APPROVED = "Approved",
44
- REJECTED = "Rejected",
45
- IN_PROGRESS = "In Progress"
46
- }
47
-
48
- export enum VisitorOption {
49
- VISA_TYPE = "Visa Type",
50
- VISA_NO = "Visa No",
51
- DATE_EXPIRY_VISA = "Date Expiry Visa"
52
- }
53
-
54
- export enum AdditionalServices {
55
- LAPTOP_TABLET = "Laptop / Tablet",
56
- BOARDING_THE_AIRCRAFT = "Boarding the Aircraft",
57
- EMPLOYEE_ASSISTING_PEOPLE_WITH_SPECIAL_NEEDS = "Employee Assisting People with Special Needs"
58
- }
59
-
60
- @Entity({ name: 'airport_entry_permits' })
61
- export class AirportEntryPermit extends BaseModel {
62
- // Workflow fields
63
- @Column({ type: 'int', nullable: true })
64
- req_user_department_id: number | null;
65
-
66
- @Column({ type: 'int', nullable: true })
67
- req_user_section_id: number | null;
68
-
69
- @Column({ type: 'int', nullable: true })
70
- service_id: number | null;
71
-
72
- @Column({ type: 'int', nullable: true })
73
- sub_service_id: number | null;
74
-
75
- @Column({ type: 'varchar', length: 20, nullable: true })
76
- service_type: string | null;
77
-
78
- @Column({ type: 'varchar', nullable: true })
79
- workflow_execution_id: string | null;
80
-
81
- @Column({
82
- type: "enum",
83
- enum: AirportEntryPermitStatus,
84
- default: AirportEntryPermitStatus.PENDING,
85
- nullable: false,
86
- })
87
- status: AirportEntryPermitStatus;
88
-
89
- @Column({ nullable: false })
90
- user_id: number;
91
-
92
- // Request ID - Auto generated
93
- @Column({ type: 'varchar', length: 50, nullable: true, unique: true })
94
- request_id: string | null;
95
-
96
- // User fields from requirements
97
- @Column({ type: 'varchar', length: 255, nullable: false })
98
- name_full_family_name: string;
99
-
100
- @Column({ type: 'varchar', length: 100, nullable: false })
101
- nationality: string;
102
-
103
- @Column({ type: 'date', nullable: false })
104
- dob: Date;
105
-
106
- @Column({ type: 'varchar', length: 255, nullable: false })
107
- place: string;
108
-
109
- @Column({ type: 'varchar', length: 50, nullable: false })
110
- passport_id_card_no: string;
111
-
112
- @Column({
113
- type: "enum",
114
- enum: AirportEntryPermitCategory,
115
- nullable: false,
116
- })
117
- category_of_permit: AirportEntryPermitCategory;
118
-
119
- @Column({ type: 'date', nullable: false })
120
- date_of_submission: Date;
121
-
122
- @Column({ type: 'varchar', length: 20, nullable: false })
123
- phone_number: string;
124
-
125
- @Column({
126
- type: "enum",
127
- enum: AirportEntryPermitLocation,
128
- nullable: false,
129
- })
130
- location: AirportEntryPermitLocation;
131
-
132
- @Column({
133
- type: "enum",
134
- enum: AirportEntryPermitType,
135
- nullable: false,
136
- })
137
- type_of_permit: AirportEntryPermitType;
138
-
139
- @Column({ type: 'date', nullable: true })
140
- temporary_start_time: Date | null;
141
-
142
- @Column({ type: 'varchar', length: 100, nullable: true })
143
- temporary_duration: string | null;
144
-
145
- @Column({ type: 'jsonb', nullable: true })
146
- permission_to_required_areas: Array<{ permit: string; text: string }>;
147
-
148
- @Column({ type: 'text', nullable: true })
149
- attachment_url: string | null;
150
-
151
- @Column({ type: 'text', nullable: false })
152
- details: string;
153
-
154
- @Column({ type: 'varchar', length: 255, nullable: false })
155
- occupation_staff: string;
156
-
157
- // Visitor fields (optional)
158
- @Column({ type: 'text', array: true, nullable: true })
159
- for_visitor: VisitorOption[] | null;
160
-
161
- // Additional Services (optional)
162
- @Column({ type: 'text', array: true, nullable: true })
163
- additional_services: AdditionalServices[] | null;
164
-
165
- // Acknowledgement fields (from form checkboxes)
166
- @Column({ type: 'boolean', default: false })
167
- acknowledge_security_policies: boolean;
168
-
169
- @Column({ type: 'boolean', default: false })
170
- acknowledge_disciplinary_action: boolean;
171
-
172
- // Consent fields (for approvers - not in create form)
173
- @Column({ type: 'boolean', default: false })
174
- consent_approve_to_issue_permit: boolean;
175
-
176
- @Column({ type: 'boolean', default: false })
177
- consent_do_not_approve_to_issue_permit: boolean;
178
-
179
- @Column({ type: 'text', nullable: true })
180
- consent_justification: string | null;
181
-
182
- @Column({ type: 'varchar', length: 100, nullable: false })
183
- requested_by: string;
184
-
185
- @Column({ type: 'date', nullable: true })
186
- expiration_date: Date | null;
187
-
188
- @Column({ type: 'timestamptz', nullable: true })
189
- end_date: Date | null;
190
-
191
- @Column({ type: 'varchar', length: 255, nullable: true })
192
- device_serial_number: string | null;
193
-
194
- @Column({ type: 'varchar', length: 500, nullable: true })
195
- new_permit_issuance_file: string | null;
196
-
197
- @Column({ type: 'varchar', length: 500, nullable: true })
198
- forms_attachment_file: string | null;
199
-
200
- @Column({ type: 'varchar', length: 500, nullable: true })
201
- permit_renewal_file: string | null;
202
-
203
- constructor(
204
- name_full_family_name: string,
205
- nationality: string,
206
- dob: Date,
207
- place: string,
208
- passport_id_card_no: string,
209
- category_of_permit: AirportEntryPermitCategory,
210
- date_of_submission: Date,
211
- phone_number: string,
212
- location: AirportEntryPermitLocation,
213
- type_of_permit: AirportEntryPermitType,
214
- permission_to_required_areas: Array<{ permit: string; text: string }>,
215
- details: string,
216
- occupation_staff: string,
217
- requested_by: string,
218
- user_id: number,
219
- status: AirportEntryPermitStatus = AirportEntryPermitStatus.PENDING,
220
- service_id?: number | null,
221
- sub_service_id?: number | null,
222
- service_type?: string | null,
223
- workflow_execution_id?: string | null,
224
- req_user_department_id?: number | null,
225
- req_user_section_id?: number | null,
226
- attachment_url?: string | null,
227
- temporary_start_time?: Date | null,
228
- temporary_duration?: string | null,
229
- for_visitor?: VisitorOption[] | null,
230
- additional_services?: AdditionalServices[] | null,
231
- acknowledge_security_policies: boolean = false,
232
- acknowledge_disciplinary_action: boolean = false,
233
- consent_approve_to_issue_permit: boolean = false,
234
- consent_do_not_approve_to_issue_permit: boolean = false,
235
- consent_justification?: string | null,
236
- request_id?: string | null,
237
- expiration_date?: Date | null
238
- ) {
239
- super();
240
- this.name_full_family_name = name_full_family_name;
241
- this.nationality = nationality;
242
- this.dob = dob;
243
- this.place = place;
244
- this.passport_id_card_no = passport_id_card_no;
245
- this.category_of_permit = category_of_permit;
246
- this.date_of_submission = date_of_submission;
247
- this.phone_number = phone_number;
248
- this.location = location;
249
- this.type_of_permit = type_of_permit;
250
- this.permission_to_required_areas = permission_to_required_areas;
251
- this.details = details;
252
- this.occupation_staff = occupation_staff;
253
- this.requested_by = requested_by;
254
- this.user_id = user_id;
255
- this.status = status;
256
- this.service_id = service_id ?? null;
257
- this.sub_service_id = sub_service_id ?? null;
258
- this.service_type = service_type ?? null;
259
- this.workflow_execution_id = workflow_execution_id ?? null;
260
- this.req_user_department_id = req_user_department_id ?? null;
261
- this.req_user_section_id = req_user_section_id ?? null;
262
- this.attachment_url = attachment_url ?? null;
263
- this.temporary_start_time = temporary_start_time ?? null;
264
- this.temporary_duration = temporary_duration ?? null;
265
- this.for_visitor = for_visitor ?? null;
266
- this.additional_services = additional_services ?? null;
267
- this.acknowledge_security_policies = acknowledge_security_policies;
268
- this.acknowledge_disciplinary_action = acknowledge_disciplinary_action;
269
- this.consent_approve_to_issue_permit = consent_approve_to_issue_permit;
270
- this.consent_do_not_approve_to_issue_permit = consent_do_not_approve_to_issue_permit;
271
- this.consent_justification = consent_justification ?? null;
272
- this.request_id = request_id ?? null;
273
- this.expiration_date = expiration_date ?? null;
274
- }
275
- }
276
-
1
+ import { Entity, Column } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum AirportEntryPermitCategory {
5
+ ISSUING_NEW_PERMIT = "Issuing New Permit",
6
+ RENEWAL_OF_PERMIT = "Renewal of Permit",
7
+ AMENDING = "Amending",
8
+ REPLACING_LOST = "Replacing lost",
9
+ CANCELLING_AIRPORT_SECURITY_PERMITS = "Cancelling airport security permits"
10
+ }
11
+
12
+ export enum AirportEntryPermitType {
13
+ PERMANENT = "Permanent",
14
+ TEMPORARY = "Temporary"
15
+ }
16
+
17
+ export enum AirportEntryPermitLocation {
18
+ MUSCAT = "Muscat",
19
+ SALALAH = "Salalah",
20
+ MARMUL = "Marmul",
21
+ DURUM = "Durum",
22
+ SOHAR = "Sohar",
23
+ FUHUD = "Fuhud",
24
+ MUKHAZINA = "Mukhazina"
25
+ }
26
+
27
+ export enum AirportEntryPermitArea {
28
+ PURPLE = "VIP Building",
29
+ HEAVENLY = "Cargo Building (Imports & Exports)",
30
+ ORANGE = "Arrivals Hall / Arrivals Building",
31
+ GREEN = "Departures Hall / Departures Building",
32
+ YELLOW = "Information Center / Control Tower",
33
+ BLUE = "Aircraft Parking Area, Aircraft Maintenance Building, Vehicle Repair Workshop, Fire Station, and Fueling Stations",
34
+ PINK = "Baggage Sorting Area",
35
+ GRAY = "Catering Building",
36
+ BLACK = "Aircraft Maintenance Building",
37
+ GOLD = "Gold Building",
38
+ RED = "All Civil Airports"
39
+ }
40
+
41
+ export enum AirportEntryPermitStatus {
42
+ PENDING = "Pending",
43
+ APPROVED = "Approved",
44
+ REJECTED = "Rejected",
45
+ IN_PROGRESS = "In Progress"
46
+ }
47
+
48
+ export enum VisitorOption {
49
+ VISA_TYPE = "Visa Type",
50
+ VISA_NO = "Visa No",
51
+ DATE_EXPIRY_VISA = "Date Expiry Visa"
52
+ }
53
+
54
+ export enum AdditionalServices {
55
+ LAPTOP_TABLET = "Laptop / Tablet",
56
+ BOARDING_THE_AIRCRAFT = "Boarding the Aircraft",
57
+ EMPLOYEE_ASSISTING_PEOPLE_WITH_SPECIAL_NEEDS = "Employee Assisting People with Special Needs"
58
+ }
59
+
60
+ @Entity({ name: 'airport_entry_permits' })
61
+ export class AirportEntryPermit extends BaseModel {
62
+ // Workflow fields
63
+ @Column({ type: 'int', nullable: true })
64
+ req_user_department_id: number | null;
65
+
66
+ @Column({ type: 'int', nullable: true })
67
+ req_user_section_id: number | null;
68
+
69
+ @Column({ type: 'int', nullable: true })
70
+ service_id: number | null;
71
+
72
+ @Column({ type: 'int', nullable: true })
73
+ sub_service_id: number | null;
74
+
75
+ @Column({ type: 'varchar', length: 20, nullable: true })
76
+ service_type: string | null;
77
+
78
+ @Column({ type: 'varchar', nullable: true })
79
+ workflow_execution_id: string | null;
80
+
81
+ @Column({
82
+ type: "enum",
83
+ enum: AirportEntryPermitStatus,
84
+ default: AirportEntryPermitStatus.PENDING,
85
+ nullable: false,
86
+ })
87
+ status: AirportEntryPermitStatus;
88
+
89
+ @Column({ nullable: false })
90
+ user_id: number;
91
+
92
+ // Request ID - Auto generated
93
+ @Column({ type: 'varchar', length: 50, nullable: true, unique: true })
94
+ request_id: string | null;
95
+
96
+ // User fields from requirements
97
+ @Column({ type: 'varchar', length: 255, nullable: false })
98
+ name_full_family_name: string;
99
+
100
+ @Column({ type: 'varchar', length: 100, nullable: false })
101
+ nationality: string;
102
+
103
+ @Column({ type: 'date', nullable: false })
104
+ dob: Date;
105
+
106
+ @Column({ type: 'varchar', length: 255, nullable: false })
107
+ place: string;
108
+
109
+ @Column({ type: 'varchar', length: 50, nullable: false })
110
+ passport_id_card_no: string;
111
+
112
+ @Column({
113
+ type: "enum",
114
+ enum: AirportEntryPermitCategory,
115
+ nullable: false,
116
+ })
117
+ category_of_permit: AirportEntryPermitCategory;
118
+
119
+ @Column({ type: 'date', nullable: false })
120
+ date_of_submission: Date;
121
+
122
+ @Column({ type: 'varchar', length: 20, nullable: false })
123
+ phone_number: string;
124
+
125
+ @Column({
126
+ type: "enum",
127
+ enum: AirportEntryPermitLocation,
128
+ nullable: false,
129
+ })
130
+ location: AirportEntryPermitLocation;
131
+
132
+ @Column({
133
+ type: "enum",
134
+ enum: AirportEntryPermitType,
135
+ nullable: false,
136
+ })
137
+ type_of_permit: AirportEntryPermitType;
138
+
139
+ @Column({ type: 'date', nullable: true })
140
+ temporary_start_time: Date | null;
141
+
142
+ @Column({ type: 'varchar', length: 100, nullable: true })
143
+ temporary_duration: string | null;
144
+
145
+ @Column({ type: 'jsonb', nullable: true })
146
+ permission_to_required_areas: Array<{ permit: string; text: string }>;
147
+
148
+ @Column({ type: 'text', nullable: true })
149
+ attachment_url: string | null;
150
+
151
+ @Column({ type: 'text', nullable: false })
152
+ details: string;
153
+
154
+ @Column({ type: 'varchar', length: 255, nullable: false })
155
+ occupation_staff: string;
156
+
157
+ // Visitor fields (optional)
158
+ @Column({ type: 'text', array: true, nullable: true })
159
+ for_visitor: VisitorOption[] | null;
160
+
161
+ // Additional Services (optional)
162
+ @Column({ type: 'text', array: true, nullable: true })
163
+ additional_services: AdditionalServices[] | null;
164
+
165
+ // Acknowledgement fields (from form checkboxes)
166
+ @Column({ type: 'boolean', default: false })
167
+ acknowledge_security_policies: boolean;
168
+
169
+ @Column({ type: 'boolean', default: false })
170
+ acknowledge_disciplinary_action: boolean;
171
+
172
+ // Consent fields (for approvers - not in create form)
173
+ @Column({ type: 'boolean', default: false })
174
+ consent_approve_to_issue_permit: boolean;
175
+
176
+ @Column({ type: 'boolean', default: false })
177
+ consent_do_not_approve_to_issue_permit: boolean;
178
+
179
+ @Column({ type: 'text', nullable: true })
180
+ consent_justification: string | null;
181
+
182
+ @Column({ type: 'varchar', length: 100, nullable: false })
183
+ requested_by: string;
184
+
185
+ @Column({ type: 'date', nullable: true })
186
+ expiration_date: Date | null;
187
+
188
+ @Column({ type: 'timestamptz', nullable: true })
189
+ end_date: Date | null;
190
+
191
+ @Column({ type: 'varchar', length: 255, nullable: true })
192
+ device_serial_number: string | null;
193
+
194
+ @Column({ type: 'varchar', length: 500, nullable: true })
195
+ new_permit_issuance_file: string | null;
196
+
197
+ @Column({ type: 'varchar', length: 500, nullable: true })
198
+ forms_attachment_file: string | null;
199
+
200
+ @Column({ type: 'varchar', length: 500, nullable: true })
201
+ permit_renewal_file: string | null;
202
+
203
+ constructor(
204
+ name_full_family_name: string,
205
+ nationality: string,
206
+ dob: Date,
207
+ place: string,
208
+ passport_id_card_no: string,
209
+ category_of_permit: AirportEntryPermitCategory,
210
+ date_of_submission: Date,
211
+ phone_number: string,
212
+ location: AirportEntryPermitLocation,
213
+ type_of_permit: AirportEntryPermitType,
214
+ permission_to_required_areas: Array<{ permit: string; text: string }>,
215
+ details: string,
216
+ occupation_staff: string,
217
+ requested_by: string,
218
+ user_id: number,
219
+ status: AirportEntryPermitStatus = AirportEntryPermitStatus.PENDING,
220
+ service_id?: number | null,
221
+ sub_service_id?: number | null,
222
+ service_type?: string | null,
223
+ workflow_execution_id?: string | null,
224
+ req_user_department_id?: number | null,
225
+ req_user_section_id?: number | null,
226
+ attachment_url?: string | null,
227
+ temporary_start_time?: Date | null,
228
+ temporary_duration?: string | null,
229
+ for_visitor?: VisitorOption[] | null,
230
+ additional_services?: AdditionalServices[] | null,
231
+ acknowledge_security_policies: boolean = false,
232
+ acknowledge_disciplinary_action: boolean = false,
233
+ consent_approve_to_issue_permit: boolean = false,
234
+ consent_do_not_approve_to_issue_permit: boolean = false,
235
+ consent_justification?: string | null,
236
+ request_id?: string | null,
237
+ expiration_date?: Date | null
238
+ ) {
239
+ super();
240
+ this.name_full_family_name = name_full_family_name;
241
+ this.nationality = nationality;
242
+ this.dob = dob;
243
+ this.place = place;
244
+ this.passport_id_card_no = passport_id_card_no;
245
+ this.category_of_permit = category_of_permit;
246
+ this.date_of_submission = date_of_submission;
247
+ this.phone_number = phone_number;
248
+ this.location = location;
249
+ this.type_of_permit = type_of_permit;
250
+ this.permission_to_required_areas = permission_to_required_areas;
251
+ this.details = details;
252
+ this.occupation_staff = occupation_staff;
253
+ this.requested_by = requested_by;
254
+ this.user_id = user_id;
255
+ this.status = status;
256
+ this.service_id = service_id ?? null;
257
+ this.sub_service_id = sub_service_id ?? null;
258
+ this.service_type = service_type ?? null;
259
+ this.workflow_execution_id = workflow_execution_id ?? null;
260
+ this.req_user_department_id = req_user_department_id ?? null;
261
+ this.req_user_section_id = req_user_section_id ?? null;
262
+ this.attachment_url = attachment_url ?? null;
263
+ this.temporary_start_time = temporary_start_time ?? null;
264
+ this.temporary_duration = temporary_duration ?? null;
265
+ this.for_visitor = for_visitor ?? null;
266
+ this.additional_services = additional_services ?? null;
267
+ this.acknowledge_security_policies = acknowledge_security_policies;
268
+ this.acknowledge_disciplinary_action = acknowledge_disciplinary_action;
269
+ this.consent_approve_to_issue_permit = consent_approve_to_issue_permit;
270
+ this.consent_do_not_approve_to_issue_permit = consent_do_not_approve_to_issue_permit;
271
+ this.consent_justification = consent_justification ?? null;
272
+ this.request_id = request_id ?? null;
273
+ this.expiration_date = expiration_date ?? null;
274
+ }
275
+ }
276
+