@platform-modules/civil-aviation-authority 2.3.152 → 2.3.155

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 (31) hide show
  1. package/.env +8 -0
  2. package/dist/models/DocumentMetadataModel.d.ts +45 -0
  3. package/dist/models/DocumentMetadataModel.js +171 -0
  4. package/dist/models/DocumentationDepartmentsModel.d.ts +13 -0
  5. package/dist/models/DocumentationDepartmentsModel.js +53 -0
  6. package/dist/models/FolderModel.d.ts +16 -0
  7. package/dist/models/FolderModel.js +85 -0
  8. package/dist/models/LegalComplaintRequestModel.d.ts +101 -6
  9. package/dist/models/LegalComplaintRequestModel.js +257 -5
  10. package/dist/models/PermissionModel.d.ts +18 -0
  11. package/dist/models/PermissionModel.js +68 -0
  12. package/dist/models/UUIDBaseModel.d.ts +14 -0
  13. package/dist/models/UUIDBaseModel.js +66 -0
  14. package/package.json +1 -1
  15. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -153
  16. package/src/models/DepartmentsModel.ts +25 -25
  17. package/src/models/DocumentDriveModel.ts +28 -28
  18. package/src/models/DocumentFolderModel.ts +45 -45
  19. package/src/models/HousingContractCancelChatModel.ts +56 -56
  20. package/src/models/HousingContractRenewalChatModel.ts +59 -59
  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/LegalComplaintRequestModel.ts +322 -8
  25. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  26. package/src/models/ResidentialUnitRentalChatModel.ts +56 -56
  27. package/src/models/ResidentialUnitRentalRequestModel.ts +218 -218
  28. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  29. package/src/models/StudyLeaveRequestModel.ts +144 -144
  30. package/src/models/TrainingRoomBookingRequestModel.ts +142 -142
  31. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
@@ -1,153 +1,153 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- export enum AnnualTrainingPlanRequestStatus {
5
- PENDING = "Pending",
6
- IN_PROGRESS = "In Progress",
7
- COMPLETED = "Completed",
8
- APPROVED = "Approved",
9
- REJECTED = "Rejected"
10
- }
11
-
12
- export enum AnnualTrainingPlanPlace {
13
- INSIDE = "Inside",
14
- OUTSIDE = "Outside"
15
- }
16
-
17
- @Entity({ name: "annual_training_plan_requests" })
18
- export class AnnualTrainingPlanRequest extends BaseModel {
19
- @Column({ type: "integer", nullable: true })
20
- req_user_department_id: number | null;
21
-
22
- @Column({ type: "integer", nullable: true })
23
- req_user_section_id: number | null;
24
-
25
- @Column({ type: "integer", nullable: true })
26
- req_user_position_id: number | null;
27
-
28
- @Column({ type: "integer", nullable: true })
29
- service_id: number | null;
30
-
31
- @Column({ type: "integer", nullable: true })
32
- sub_service_id: number | null;
33
-
34
- @Column({ type: "integer", nullable: false })
35
- user_id: number;
36
-
37
- @Column({ type: "varchar", length: 255, nullable: false })
38
- course_name: string;
39
-
40
- @Column({ type: "integer", nullable: false })
41
- no_of_participants: number;
42
-
43
- @Column({ type: "decimal", precision: 10, scale: 2, nullable: false })
44
- course_cost: number;
45
-
46
- @Column({ type: "decimal", precision: 10, scale: 2, nullable: false })
47
- total_cost: number;
48
-
49
- @Column({ type: "date", nullable: false })
50
- proposed_implementation_date: Date;
51
-
52
- @Column({ type: "text", nullable: false })
53
- description: string;
54
-
55
- @Column({
56
- type: "enum",
57
- enum: AnnualTrainingPlanPlace,
58
- nullable: false
59
- })
60
- place: AnnualTrainingPlanPlace;
61
-
62
- @Column({ type: "varchar", length: 255, nullable: true })
63
- location: string | null;
64
-
65
- @Column({ type: "text", nullable: false })
66
- reason: string;
67
-
68
- @Column({ type: "jsonb", nullable: true })
69
- employee_list: any[] | null; // List of employees for training attendance
70
-
71
- @Column({
72
- type: "enum",
73
- enum: AnnualTrainingPlanRequestStatus,
74
- default: AnnualTrainingPlanRequestStatus.PENDING,
75
- nullable: false
76
- })
77
- status: AnnualTrainingPlanRequestStatus;
78
-
79
- @Column({ type: "integer", nullable: true })
80
- reviewer_user_id: number | null;
81
-
82
- @Column({ type: "integer", nullable: true })
83
- assigned_to_user_id: number | null;
84
-
85
- @Column({ type: "timestamp", nullable: true })
86
- assigned_at: Date | null;
87
-
88
- @Column({ type: "varchar", length: 255, nullable: true })
89
- workflow_execution_id: string | null;
90
-
91
- @Column({ type: "varchar", length: 255, nullable: true })
92
- job_competency: string | null;
93
-
94
- @Column({ type: "jsonb", nullable: true })
95
- name_of_participants: string[] | null;
96
-
97
- @Column({ type: "varchar", length: 255, nullable: true })
98
- directarate: string | null;
99
-
100
- constructor(
101
- user_id: number,
102
- course_name: string,
103
- no_of_participants: number,
104
- course_cost: number,
105
- total_cost: number,
106
- proposed_implementation_date: Date,
107
- description: string,
108
- place: AnnualTrainingPlanPlace,
109
- reason: string,
110
- status: AnnualTrainingPlanRequestStatus = AnnualTrainingPlanRequestStatus.PENDING,
111
- service_id?: number | null,
112
- sub_service_id?: number | null,
113
- req_user_department_id?: number | null,
114
- req_user_section_id?: number | null,
115
- req_user_position_id?: number | null,
116
- location?: string | null,
117
- employee_list?: any[] | null,
118
- reviewer_user_id?: number | null,
119
- assigned_to_user_id?: number | null,
120
- assigned_at?: Date | null,
121
- workflow_execution_id?: string | null,
122
- job_competency?: string | null,
123
- name_of_participants?: string[] | null,
124
- directarate?: string | null
125
- ) {
126
- super();
127
- this.user_id = user_id;
128
- this.course_name = course_name;
129
- this.no_of_participants = no_of_participants;
130
- this.course_cost = course_cost;
131
- this.total_cost = total_cost;
132
- this.proposed_implementation_date = proposed_implementation_date;
133
- this.description = description;
134
- this.place = place;
135
- this.reason = reason;
136
- this.status = status;
137
- this.service_id = service_id || null;
138
- this.sub_service_id = sub_service_id || null;
139
- this.req_user_department_id = req_user_department_id || null;
140
- this.req_user_section_id = req_user_section_id || null;
141
- this.req_user_position_id = req_user_position_id || null;
142
- this.location = location || null;
143
- this.employee_list = employee_list || null;
144
- this.reviewer_user_id = reviewer_user_id || null;
145
- this.assigned_to_user_id = assigned_to_user_id || null;
146
- this.assigned_at = assigned_at || null;
147
- this.workflow_execution_id = workflow_execution_id || null;
148
- this.job_competency = job_competency ?? null;
149
- this.name_of_participants = name_of_participants ?? null;
150
- this.directarate = directarate ?? null;
151
- }
152
- }
153
-
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum AnnualTrainingPlanRequestStatus {
5
+ PENDING = "Pending",
6
+ IN_PROGRESS = "In Progress",
7
+ COMPLETED = "Completed",
8
+ APPROVED = "Approved",
9
+ REJECTED = "Rejected"
10
+ }
11
+
12
+ export enum AnnualTrainingPlanPlace {
13
+ INSIDE = "Inside",
14
+ OUTSIDE = "Outside"
15
+ }
16
+
17
+ @Entity({ name: "annual_training_plan_requests" })
18
+ export class AnnualTrainingPlanRequest extends BaseModel {
19
+ @Column({ type: "integer", nullable: true })
20
+ req_user_department_id: number | null;
21
+
22
+ @Column({ type: "integer", nullable: true })
23
+ req_user_section_id: number | null;
24
+
25
+ @Column({ type: "integer", nullable: true })
26
+ req_user_position_id: number | null;
27
+
28
+ @Column({ type: "integer", nullable: true })
29
+ service_id: number | null;
30
+
31
+ @Column({ type: "integer", nullable: true })
32
+ sub_service_id: number | null;
33
+
34
+ @Column({ type: "integer", nullable: false })
35
+ user_id: number;
36
+
37
+ @Column({ type: "varchar", length: 255, nullable: false })
38
+ course_name: string;
39
+
40
+ @Column({ type: "integer", nullable: false })
41
+ no_of_participants: number;
42
+
43
+ @Column({ type: "decimal", precision: 10, scale: 2, nullable: false })
44
+ course_cost: number;
45
+
46
+ @Column({ type: "decimal", precision: 10, scale: 2, nullable: false })
47
+ total_cost: number;
48
+
49
+ @Column({ type: "date", nullable: false })
50
+ proposed_implementation_date: Date;
51
+
52
+ @Column({ type: "text", nullable: false })
53
+ description: string;
54
+
55
+ @Column({
56
+ type: "enum",
57
+ enum: AnnualTrainingPlanPlace,
58
+ nullable: false
59
+ })
60
+ place: AnnualTrainingPlanPlace;
61
+
62
+ @Column({ type: "varchar", length: 255, nullable: true })
63
+ location: string | null;
64
+
65
+ @Column({ type: "text", nullable: false })
66
+ reason: string;
67
+
68
+ @Column({ type: "jsonb", nullable: true })
69
+ employee_list: any[] | null; // List of employees for training attendance
70
+
71
+ @Column({
72
+ type: "enum",
73
+ enum: AnnualTrainingPlanRequestStatus,
74
+ default: AnnualTrainingPlanRequestStatus.PENDING,
75
+ nullable: false
76
+ })
77
+ status: AnnualTrainingPlanRequestStatus;
78
+
79
+ @Column({ type: "integer", nullable: true })
80
+ reviewer_user_id: number | null;
81
+
82
+ @Column({ type: "integer", nullable: true })
83
+ assigned_to_user_id: number | null;
84
+
85
+ @Column({ type: "timestamp", nullable: true })
86
+ assigned_at: Date | null;
87
+
88
+ @Column({ type: "varchar", length: 255, nullable: true })
89
+ workflow_execution_id: string | null;
90
+
91
+ @Column({ type: "varchar", length: 255, nullable: true })
92
+ job_competency: string | null;
93
+
94
+ @Column({ type: "jsonb", nullable: true })
95
+ name_of_participants: string[] | null;
96
+
97
+ @Column({ type: "varchar", length: 255, nullable: true })
98
+ directarate: string | null;
99
+
100
+ constructor(
101
+ user_id: number,
102
+ course_name: string,
103
+ no_of_participants: number,
104
+ course_cost: number,
105
+ total_cost: number,
106
+ proposed_implementation_date: Date,
107
+ description: string,
108
+ place: AnnualTrainingPlanPlace,
109
+ reason: string,
110
+ status: AnnualTrainingPlanRequestStatus = AnnualTrainingPlanRequestStatus.PENDING,
111
+ service_id?: number | null,
112
+ sub_service_id?: number | null,
113
+ req_user_department_id?: number | null,
114
+ req_user_section_id?: number | null,
115
+ req_user_position_id?: number | null,
116
+ location?: string | null,
117
+ employee_list?: any[] | null,
118
+ reviewer_user_id?: number | null,
119
+ assigned_to_user_id?: number | null,
120
+ assigned_at?: Date | null,
121
+ workflow_execution_id?: string | null,
122
+ job_competency?: string | null,
123
+ name_of_participants?: string[] | null,
124
+ directarate?: string | null
125
+ ) {
126
+ super();
127
+ this.user_id = user_id;
128
+ this.course_name = course_name;
129
+ this.no_of_participants = no_of_participants;
130
+ this.course_cost = course_cost;
131
+ this.total_cost = total_cost;
132
+ this.proposed_implementation_date = proposed_implementation_date;
133
+ this.description = description;
134
+ this.place = place;
135
+ this.reason = reason;
136
+ this.status = status;
137
+ this.service_id = service_id || null;
138
+ this.sub_service_id = sub_service_id || null;
139
+ this.req_user_department_id = req_user_department_id || null;
140
+ this.req_user_section_id = req_user_section_id || null;
141
+ this.req_user_position_id = req_user_position_id || null;
142
+ this.location = location || null;
143
+ this.employee_list = employee_list || null;
144
+ this.reviewer_user_id = reviewer_user_id || null;
145
+ this.assigned_to_user_id = assigned_to_user_id || null;
146
+ this.assigned_at = assigned_at || null;
147
+ this.workflow_execution_id = workflow_execution_id || null;
148
+ this.job_competency = job_competency ?? null;
149
+ this.name_of_participants = name_of_participants ?? null;
150
+ this.directarate = directarate ?? null;
151
+ }
152
+ }
153
+
@@ -1,26 +1,26 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- @Entity({ name: 'departments' })
5
- export class Departments extends BaseModel {
6
-
7
- @Column({ type: 'varchar', length: 64, nullable: false})
8
- department_name: string;
9
-
10
- @Column({ type: 'varchar', length: 64, nullable: false})
11
- department_code: string;
12
-
13
- @Column({ nullable: false })
14
- department_description: string;
15
-
16
- constructor(
17
- department_name: string,
18
- department_code: string,
19
- department_description: string,
20
- ) {
21
- super();
22
- this.department_name = department_name
23
- this.department_code = department_code
24
- this.department_description = department_description
25
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'departments' })
5
+ export class Departments extends BaseModel {
6
+
7
+ @Column({ type: 'varchar', length: 64, nullable: false})
8
+ department_name: string;
9
+
10
+ @Column({ type: 'varchar', length: 64, nullable: false})
11
+ department_code: string;
12
+
13
+ @Column({ nullable: false })
14
+ department_description: string;
15
+
16
+ constructor(
17
+ department_name: string,
18
+ department_code: string,
19
+ department_description: string,
20
+ ) {
21
+ super();
22
+ this.department_name = department_name
23
+ this.department_code = department_code
24
+ this.department_description = department_description
25
+ }
26
26
  }
@@ -1,28 +1,28 @@
1
- import { Column, Entity, ManyToOne, JoinColumn, OneToMany } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
- import { Departments } from "./DepartmentsModel";
4
- import { DocumentFolder } from "./DocumentFolderModel";
5
-
6
- @Entity({ name: "document_drives" })
7
- export class DocumentDrive extends BaseModel {
8
- @Column({ type: "integer", nullable: false })
9
- department_id: number;
10
-
11
- @Column({ type: "varchar", length: 255, nullable: false })
12
- name: string;
13
-
14
- @Column({ type: "text", nullable: true })
15
- description: string | null;
16
-
17
- @Column({ type: "boolean", nullable: false, default: true })
18
- is_active: boolean;
19
-
20
- @ManyToOne(() => Departments)
21
- @JoinColumn({ name: "department_id" })
22
- department?: Departments;
23
-
24
- @OneToMany(() => DocumentFolder, (folder) => folder.drive)
25
- folders?: DocumentFolder[];
26
-
27
-
28
- }
1
+ import { Column, Entity, ManyToOne, JoinColumn, OneToMany } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+ import { Departments } from "./DepartmentsModel";
4
+ import { DocumentFolder } from "./DocumentFolderModel";
5
+
6
+ @Entity({ name: "document_drives" })
7
+ export class DocumentDrive extends BaseModel {
8
+ @Column({ type: "integer", nullable: false })
9
+ department_id: number;
10
+
11
+ @Column({ type: "varchar", length: 255, nullable: false })
12
+ name: string;
13
+
14
+ @Column({ type: "text", nullable: true })
15
+ description: string | null;
16
+
17
+ @Column({ type: "boolean", nullable: false, default: true })
18
+ is_active: boolean;
19
+
20
+ @ManyToOne(() => Departments)
21
+ @JoinColumn({ name: "department_id" })
22
+ department?: Departments;
23
+
24
+ @OneToMany(() => DocumentFolder, (folder) => folder.drive)
25
+ folders?: DocumentFolder[];
26
+
27
+
28
+ }
@@ -1,45 +1,45 @@
1
- import { Column, Entity, ManyToOne, JoinColumn, OneToMany } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
- import { Departments } from './DepartmentsModel';
4
- import { Document } from './DocumentModel';
5
- import { DocumentDrive } from './DocumentDriveModel';
6
-
7
- @Entity({ name: 'document_folders' })
8
- export class DocumentFolder extends BaseModel {
9
-
10
- @Column({ type: 'varchar', length: 100, nullable: false })
11
- name: string;
12
-
13
- @Column({ type: 'integer', nullable: false })
14
- department_id: number;
15
-
16
- @Column({ type: 'integer', nullable: true })
17
- drive_id: number | null;
18
-
19
- @ManyToOne(() => DocumentDrive, (d) => d.folders, { nullable: true })
20
- @JoinColumn({ name: 'drive_id' })
21
- drive?: DocumentDrive;
22
-
23
- @Column({ type: 'integer', nullable: true })
24
- parent_folder_id?: number;
25
-
26
- @Column({ type: 'text', nullable: true })
27
- description?: string;
28
-
29
- @Column({ type: 'boolean', nullable: false, default: true })
30
- is_active: boolean;
31
-
32
- @ManyToOne(() => Departments)
33
- @JoinColumn({ name: 'department_id' })
34
- department?: Departments;
35
-
36
- @ManyToOne(() => DocumentFolder, { nullable: true })
37
- @JoinColumn({ name: 'parent_folder_id' })
38
- parentFolder?: DocumentFolder;
39
-
40
- @OneToMany(() => DocumentFolder, folder => folder.parentFolder)
41
- subFolders?: DocumentFolder[];
42
-
43
- @OneToMany(() => Document, document => document.folder)
44
- documents?: Document[];
45
- }
1
+ import { Column, Entity, ManyToOne, JoinColumn, OneToMany } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+ import { Departments } from './DepartmentsModel';
4
+ import { Document } from './DocumentModel';
5
+ import { DocumentDrive } from './DocumentDriveModel';
6
+
7
+ @Entity({ name: 'document_folders' })
8
+ export class DocumentFolder extends BaseModel {
9
+
10
+ @Column({ type: 'varchar', length: 100, nullable: false })
11
+ name: string;
12
+
13
+ @Column({ type: 'integer', nullable: false })
14
+ department_id: number;
15
+
16
+ @Column({ type: 'integer', nullable: true })
17
+ drive_id: number | null;
18
+
19
+ @ManyToOne(() => DocumentDrive, (d) => d.folders, { nullable: true })
20
+ @JoinColumn({ name: 'drive_id' })
21
+ drive?: DocumentDrive;
22
+
23
+ @Column({ type: 'integer', nullable: true })
24
+ parent_folder_id?: number;
25
+
26
+ @Column({ type: 'text', nullable: true })
27
+ description?: string;
28
+
29
+ @Column({ type: 'boolean', nullable: false, default: true })
30
+ is_active: boolean;
31
+
32
+ @ManyToOne(() => Departments)
33
+ @JoinColumn({ name: 'department_id' })
34
+ department?: Departments;
35
+
36
+ @ManyToOne(() => DocumentFolder, { nullable: true })
37
+ @JoinColumn({ name: 'parent_folder_id' })
38
+ parentFolder?: DocumentFolder;
39
+
40
+ @OneToMany(() => DocumentFolder, folder => folder.parentFolder)
41
+ subFolders?: DocumentFolder[];
42
+
43
+ @OneToMany(() => Document, document => document.folder)
44
+ documents?: Document[];
45
+ }
@@ -1,56 +1,56 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- export enum HousingContractCancelMessageType {
5
- text = 'text',
6
- image = 'image',
7
- video = 'video',
8
- file = 'file',
9
- link = 'link'
10
- }
11
-
12
- export enum HousingContractCancelChatStatus {
13
- Pending = 'Pending',
14
- Received = 'Received',
15
- Approved = 'Approved',
16
- Rejected = 'Rejected',
17
- InProgress = 'In Progress',
18
- }
19
-
20
- @Entity({ name: 'housing_contract_cancel_chat' })
21
- export class HousingContractCancelChat extends BaseModel {
22
-
23
- @Column({ type: 'int', nullable: false })
24
- request_id: number;
25
-
26
- @Column({ type: 'int', nullable: false })
27
- service_id: number;
28
-
29
- @Column({ type: 'int', nullable: false })
30
- sub_service_id: number;
31
-
32
- @Column({ type: 'int', nullable: false })
33
- user_id: number;
34
-
35
- @Column({ type: 'text', nullable: false })
36
- message: string;
37
-
38
- @Column({ type: 'int', nullable: true })
39
- approver_role_id: number | null;
40
-
41
- @Column({ type: 'varchar', length: 255, nullable: false, default: 'Pending' })
42
- status: string;
43
-
44
- @Column({ type: 'varchar', length: 20, nullable: false })
45
- message_type: string;
46
-
47
- @Column({ type: 'boolean', nullable: false, default: false })
48
- is_internal: boolean;
49
-
50
- @Column({ type: 'int', nullable: false })
51
- created_by: number;
52
-
53
- constructor() {
54
- super();
55
- }
56
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum HousingContractCancelMessageType {
5
+ text = 'text',
6
+ image = 'image',
7
+ video = 'video',
8
+ file = 'file',
9
+ link = 'link'
10
+ }
11
+
12
+ export enum HousingContractCancelChatStatus {
13
+ Pending = 'Pending',
14
+ Received = 'Received',
15
+ Approved = 'Approved',
16
+ Rejected = 'Rejected',
17
+ InProgress = 'In Progress',
18
+ }
19
+
20
+ @Entity({ name: 'housing_contract_cancel_chat' })
21
+ export class HousingContractCancelChat extends BaseModel {
22
+
23
+ @Column({ type: 'int', nullable: false })
24
+ request_id: number;
25
+
26
+ @Column({ type: 'int', nullable: false })
27
+ service_id: number;
28
+
29
+ @Column({ type: 'int', nullable: false })
30
+ sub_service_id: number;
31
+
32
+ @Column({ type: 'int', nullable: false })
33
+ user_id: number;
34
+
35
+ @Column({ type: 'text', nullable: false })
36
+ message: string;
37
+
38
+ @Column({ type: 'int', nullable: true })
39
+ approver_role_id: number | null;
40
+
41
+ @Column({ type: 'varchar', length: 255, nullable: false, default: 'Pending' })
42
+ status: string;
43
+
44
+ @Column({ type: 'varchar', length: 20, nullable: false })
45
+ message_type: string;
46
+
47
+ @Column({ type: 'boolean', nullable: false, default: false })
48
+ is_internal: boolean;
49
+
50
+ @Column({ type: 'int', nullable: false })
51
+ created_by: number;
52
+
53
+ constructor() {
54
+ super();
55
+ }
56
+ }