@platform-modules/civil-aviation-authority 2.3.200 → 2.3.201

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 (104) hide show
  1. package/.env +9 -17
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.js +1 -0
  4. package/dist/models/ContractServiceRequestModel.d.ts +23 -0
  5. package/dist/models/ContractServiceRequestModel.js +102 -0
  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/Workflows.d.ts +9 -0
  13. package/dist/models/Workflows.js +31 -0
  14. package/package.json +24 -24
  15. package/src/data-source.ts +419 -419
  16. package/src/index.ts +432 -431
  17. package/src/models/AccessCardRequestModel.ts +135 -135
  18. package/src/models/AccommodationApprovalModel.ts +8 -8
  19. package/src/models/AccommodationRequestModel.ts +8 -8
  20. package/src/models/AirportEntryPermitModel.ts +276 -276
  21. package/src/models/AnnualIncrementRequestEmployeeModel.ts +65 -65
  22. package/src/models/AnnualIncrementRequestModel.ts +25 -25
  23. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -153
  24. package/src/models/AppealAgainstAdministrativeDecisionRequestModel.ts +23 -23
  25. package/src/models/CAAServices.ts +33 -33
  26. package/src/models/CAASubServices.ts +33 -33
  27. package/src/models/CAIRatingMasterModel.ts +39 -39
  28. package/src/models/CSRMBusinessImpactRatingMasterModel.ts +25 -25
  29. package/src/models/CSRMLikelihoodMasterModel.ts +25 -25
  30. package/src/models/CashAllowanceLeaveRequestModel.ts +11 -11
  31. package/src/models/ContractServiceRequestModel.ts +68 -0
  32. package/src/models/DepartmentsModel.ts +25 -25
  33. package/src/models/DocumentDriveModel.ts +28 -28
  34. package/src/models/DocumentFolderModel.ts +45 -45
  35. package/src/models/HousingContractCancelApprovalModel.ts +64 -64
  36. package/src/models/HousingContractCancelChatModel.ts +56 -56
  37. package/src/models/HousingContractRenewalApprovalModel.ts +64 -64
  38. package/src/models/HousingContractRenewalChatModel.ts +59 -59
  39. package/src/models/HrServiceRequestModel.ts +193 -193
  40. package/src/models/ITRequestAttachmentModel.ts +73 -73
  41. package/src/models/ITRequestChatModel.ts +74 -74
  42. package/src/models/ImportExportMaterialApprovalModel.ts +87 -87
  43. package/src/models/ImportExportMaterialAttachmentModel.ts +50 -50
  44. package/src/models/ImportExportMaterialChatModel.ts +61 -61
  45. package/src/models/ImportExportMaterialRequestModel.ts +85 -85
  46. package/src/models/ImportExportMaterialWorkflowModel.ts +51 -51
  47. package/src/models/ItApprovalsModel.ts +84 -84
  48. package/src/models/ItWorkflowModel.ts +55 -55
  49. package/src/models/LegalComplaintApprovalModel.ts +64 -64
  50. package/src/models/LegalConsultationApprovalModel.ts +65 -65
  51. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  52. package/src/models/PerformanceCyclePeriodModel.ts +26 -26
  53. package/src/models/PerformanceGoalMasterModel.ts +27 -27
  54. package/src/models/PerformanceManagementRequestGoalModel.ts +46 -46
  55. package/src/models/PerformanceManagementRequestModel.ts +14 -14
  56. package/src/models/PromotionRequestModel.ts +11 -11
  57. package/src/models/ResidentialUnitRentalApprovalModel.ts +143 -143
  58. package/src/models/ResidentialUnitRentalChatModel.ts +56 -56
  59. package/src/models/ResidentialUnitRentalRequestModel.ts +218 -218
  60. package/src/models/RespondToEnquiriesRequestModel.ts +31 -31
  61. package/src/models/ServiceExtensionAfter60ApprovalModel.ts +87 -87
  62. package/src/models/ServiceExtensionAfter60AttachmentModel.ts +50 -50
  63. package/src/models/ServiceExtensionAfter60ChatModel.ts +61 -61
  64. package/src/models/ServiceExtensionAfter60RequestModel.ts +75 -75
  65. package/src/models/ServiceExtensionAfter60WorkflowModel.ts +51 -51
  66. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  67. package/src/models/StudyLeaveRequestModel.ts +144 -144
  68. package/src/models/TrainingRequestModel.ts +164 -164
  69. package/src/models/TrainingRoomBookingRequestModel.ts +142 -142
  70. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  71. package/src/models/UserSkillModel.ts +56 -56
  72. package/src/models/WorkingHoursExtensionApprovalModel.ts +87 -87
  73. package/src/models/WorkingHoursExtensionAttachmentModel.ts +50 -50
  74. package/src/models/WorkingHoursExtensionChatModel.ts +61 -61
  75. package/src/models/WorkingHoursExtensionRequestModel.ts +66 -66
  76. package/src/models/WorkingHoursExtensionWorkflowModel.ts +51 -51
  77. package/src/models/role.ts +34 -34
  78. package/src/models/user.ts +233 -233
  79. package/dist/models/DocumentMetadataModel.d.ts +0 -45
  80. package/dist/models/DocumentMetadataModel.js +0 -171
  81. package/dist/models/DocumentationDepartmentsModel.d.ts +0 -13
  82. package/dist/models/DocumentationDepartmentsModel.js +0 -53
  83. package/dist/models/FolderModel.d.ts +0 -16
  84. package/dist/models/FolderModel.js +0 -85
  85. package/dist/models/ImportExportMaterialModels.d.ts +0 -92
  86. package/dist/models/ImportExportMaterialModels.js +0 -307
  87. package/dist/models/PermissionModel.d.ts +0 -18
  88. package/dist/models/PermissionModel.js +0 -68
  89. package/dist/models/SecurityAccessApprovalModel.d.ts +0 -23
  90. package/dist/models/SecurityAccessApprovalModel.js +0 -82
  91. package/dist/models/SecurityAccessAttachmentModel.d.ts +0 -12
  92. package/dist/models/SecurityAccessAttachmentModel.js +0 -56
  93. package/dist/models/SecurityAccessChatModel.d.ts +0 -12
  94. package/dist/models/SecurityAccessChatModel.js +0 -56
  95. package/dist/models/SecurityAccessRequestModel.d.ts +0 -25
  96. package/dist/models/SecurityAccessRequestModel.js +0 -80
  97. package/dist/models/SecurityAccessWorkflowModel.d.ts +0 -24
  98. package/dist/models/SecurityAccessWorkflowModel.js +0 -84
  99. package/dist/models/ServiceExtensionAfterAge60Models.d.ts +0 -93
  100. package/dist/models/ServiceExtensionAfterAge60Models.js +0 -312
  101. package/dist/models/UUIDBaseModel.d.ts +0 -14
  102. package/dist/models/UUIDBaseModel.js +0 -66
  103. package/dist/models/WorkingHoursExtensionModels.d.ts +0 -88
  104. package/dist/models/WorkingHoursExtensionModels.js +0 -295
@@ -1,85 +1,85 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- export enum ImportExportMaterialRequestStatus {
5
- PENDING = "Pending",
6
- IN_PROGRESS = "In Progress",
7
- APPROVED = "Approved",
8
- REJECTED = "Rejected"
9
- }
10
-
11
- export enum ImportExportMaterialRequestType {
12
- IMPORT = "Import",
13
- EXPORT = "Export",
14
- BOTH = "Both"
15
- }
16
-
17
- @Entity({ name: "import_export_material_requests" })
18
- export class ImportExportMaterialRequest extends BaseModel {
19
- @Column({ type: "int", nullable: true })
20
- req_user_department_id: number | null;
21
-
22
- @Column({ type: "int", nullable: true })
23
- req_user_section_id: number | null;
24
-
25
- @Column({ type: "int", nullable: true })
26
- service_id: number | null;
27
-
28
- @Column({ type: "int", nullable: true })
29
- sub_service_id: number | null;
30
-
31
- @Column({ type: "int", nullable: false })
32
- user_id: number;
33
-
34
- @Column({
35
- type: "enum",
36
- enum: ImportExportMaterialRequestStatus,
37
- default: ImportExportMaterialRequestStatus.PENDING,
38
- nullable: false
39
- })
40
- status: ImportExportMaterialRequestStatus;
41
-
42
- @Column({ type: "varchar", length: 255, nullable: true })
43
- workflow_execution_id: string | null;
44
-
45
- @Column({ type: "date", nullable: true })
46
- request_date: Date | null;
47
-
48
- @Column({
49
- type: "enum",
50
- enum: ImportExportMaterialRequestType,
51
- nullable: false
52
- })
53
- request_type: ImportExportMaterialRequestType;
54
-
55
- @Column({ type: "date", nullable: true })
56
- material_movement_date: Date | null;
57
-
58
- @Column({ type: "text", nullable: true })
59
- hazardous_details: string | null;
60
-
61
- @Column({ type: "text", nullable: false })
62
- purpose: string;
63
-
64
- @Column({ type: "text", nullable: false })
65
- material_description: string;
66
-
67
- @Column({ type: "varchar", length: 128, nullable: true })
68
- transport_mode: string | null;
69
-
70
- @Column({ type: "varchar", length: 64, nullable: true })
71
- vehicle_number: string | null;
72
-
73
- @Column({ type: "text", nullable: true })
74
- description: string | null;
75
-
76
- @Column({ type: "int", nullable: false })
77
- created_by: number;
78
-
79
- @Column({ type: "varchar", length: 255, nullable: true })
80
- reference_number: string | null;
81
-
82
- constructor() {
83
- super();
84
- }
85
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum ImportExportMaterialRequestStatus {
5
+ PENDING = "Pending",
6
+ IN_PROGRESS = "In Progress",
7
+ APPROVED = "Approved",
8
+ REJECTED = "Rejected"
9
+ }
10
+
11
+ export enum ImportExportMaterialRequestType {
12
+ IMPORT = "Import",
13
+ EXPORT = "Export",
14
+ BOTH = "Both"
15
+ }
16
+
17
+ @Entity({ name: "import_export_material_requests" })
18
+ export class ImportExportMaterialRequest extends BaseModel {
19
+ @Column({ type: "int", nullable: true })
20
+ req_user_department_id: number | null;
21
+
22
+ @Column({ type: "int", nullable: true })
23
+ req_user_section_id: number | null;
24
+
25
+ @Column({ type: "int", nullable: true })
26
+ service_id: number | null;
27
+
28
+ @Column({ type: "int", nullable: true })
29
+ sub_service_id: number | null;
30
+
31
+ @Column({ type: "int", nullable: false })
32
+ user_id: number;
33
+
34
+ @Column({
35
+ type: "enum",
36
+ enum: ImportExportMaterialRequestStatus,
37
+ default: ImportExportMaterialRequestStatus.PENDING,
38
+ nullable: false
39
+ })
40
+ status: ImportExportMaterialRequestStatus;
41
+
42
+ @Column({ type: "varchar", length: 255, nullable: true })
43
+ workflow_execution_id: string | null;
44
+
45
+ @Column({ type: "date", nullable: true })
46
+ request_date: Date | null;
47
+
48
+ @Column({
49
+ type: "enum",
50
+ enum: ImportExportMaterialRequestType,
51
+ nullable: false
52
+ })
53
+ request_type: ImportExportMaterialRequestType;
54
+
55
+ @Column({ type: "date", nullable: true })
56
+ material_movement_date: Date | null;
57
+
58
+ @Column({ type: "text", nullable: true })
59
+ hazardous_details: string | null;
60
+
61
+ @Column({ type: "text", nullable: false })
62
+ purpose: string;
63
+
64
+ @Column({ type: "text", nullable: false })
65
+ material_description: string;
66
+
67
+ @Column({ type: "varchar", length: 128, nullable: true })
68
+ transport_mode: string | null;
69
+
70
+ @Column({ type: "varchar", length: 64, nullable: true })
71
+ vehicle_number: string | null;
72
+
73
+ @Column({ type: "text", nullable: true })
74
+ description: string | null;
75
+
76
+ @Column({ type: "int", nullable: false })
77
+ created_by: number;
78
+
79
+ @Column({ type: "varchar", length: 255, nullable: true })
80
+ reference_number: string | null;
81
+
82
+ constructor() {
83
+ super();
84
+ }
85
+ }
@@ -1,51 +1,51 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- @Entity({ name: "import_export_material_workflow" })
5
- export class ImportExportMaterialWorkflow extends BaseModel {
6
- @Column({ type: "int", nullable: false })
7
- request_id: number;
8
-
9
- @Column({ type: "int", nullable: true })
10
- service_id: number;
11
-
12
- @Column({ type: "int", nullable: true })
13
- sub_service_id: number;
14
-
15
- @Column({ type: "int", nullable: true })
16
- workflow_definition_id: number;
17
-
18
- @Column({ type: "int", nullable: true })
19
- current_level: number;
20
-
21
- @Column({ type: "varchar", length: 500, nullable: true })
22
- content: string;
23
-
24
- @Column({ type: "varchar", length: 50, nullable: false })
25
- status: string;
26
-
27
- @Column({ type: "int", nullable: true })
28
- step_order: number;
29
-
30
- @Column({ type: "int", nullable: true })
31
- user_id: number;
32
-
33
- @Column({ type: "int", nullable: true })
34
- role_id: number;
35
-
36
- @Column({ type: "int", nullable: true })
37
- department_id: number;
38
-
39
- @Column({ type: "int", nullable: true })
40
- section_id: number;
41
-
42
- @Column({ type: "text", nullable: true })
43
- workflow_data: string;
44
-
45
- @Column({ type: "int", nullable: false })
46
- created_by: number;
47
-
48
- constructor() {
49
- super();
50
- }
51
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "import_export_material_workflow" })
5
+ export class ImportExportMaterialWorkflow extends BaseModel {
6
+ @Column({ type: "int", nullable: false })
7
+ request_id: number;
8
+
9
+ @Column({ type: "int", nullable: true })
10
+ service_id: number;
11
+
12
+ @Column({ type: "int", nullable: true })
13
+ sub_service_id: number;
14
+
15
+ @Column({ type: "int", nullable: true })
16
+ workflow_definition_id: number;
17
+
18
+ @Column({ type: "int", nullable: true })
19
+ current_level: number;
20
+
21
+ @Column({ type: "varchar", length: 500, nullable: true })
22
+ content: string;
23
+
24
+ @Column({ type: "varchar", length: 50, nullable: false })
25
+ status: string;
26
+
27
+ @Column({ type: "int", nullable: true })
28
+ step_order: number;
29
+
30
+ @Column({ type: "int", nullable: true })
31
+ user_id: number;
32
+
33
+ @Column({ type: "int", nullable: true })
34
+ role_id: number;
35
+
36
+ @Column({ type: "int", nullable: true })
37
+ department_id: number;
38
+
39
+ @Column({ type: "int", nullable: true })
40
+ section_id: number;
41
+
42
+ @Column({ type: "text", nullable: true })
43
+ workflow_data: string;
44
+
45
+ @Column({ type: "int", nullable: false })
46
+ created_by: number;
47
+
48
+ constructor() {
49
+ super();
50
+ }
51
+ }
@@ -1,85 +1,85 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
-
5
- export enum ApprovalStatus {
6
- PENDING = "Pending",
7
- APPROVED = "Approved",
8
- REJECTED = "Rejected",
9
- ASSIGNED = "Assigned",
10
- REASSIGNED = "Reassigned"
11
-
12
- }
13
-
14
- @Entity({ name: 'it_approvals' })
15
- export class ItApprovalDetails extends BaseModel {
16
- @Column({ type: 'integer', nullable: false })
17
- request_id: number;
18
-
19
- @Column({ type: 'integer', nullable: true })
20
- service_id: number | null;
21
-
22
- @Column({ type: 'integer', nullable: true })
23
- sub_service_id: number | null;
24
-
25
- @Column({ type: 'integer', nullable: false })
26
- level: number;
27
-
28
- @Column({ type: 'integer', nullable: true })
29
- approver_user_id: number | null;
30
-
31
- @Column({ type: 'integer', nullable: true })
32
- delegation_user_id: number | null;
33
-
34
- @Column({ type: 'integer', nullable: false })
35
- approver_role_id: number | null;
36
-
37
- @Column({ type: 'integer', nullable: true })
38
- department_id: number | null;
39
-
40
- @Column({ type: 'integer', nullable: true })
41
- section_id: number | null;
42
-
43
- @Column({ type: 'integer', nullable: true })
44
- approved_by: number | null;
45
-
46
- @Column({ type: 'varchar', length: 255, nullable: false })
47
- comment: string;
48
-
49
- @Column({ type: 'enum', enum: ApprovalStatus,default: ApprovalStatus.PENDING, nullable: false })
50
- approval_status: ApprovalStatus;
51
-
52
- @Column({ type: 'boolean', default: true, nullable: false })
53
- is_allowed: boolean;
54
-
55
- constructor(
56
- request_id: number,
57
- approver_user_id: number | null,
58
- approver_role_id: number | null,
59
- comment: string,
60
- approval_status: ApprovalStatus,
61
- level: number,
62
- department_id?: number | null,
63
- section_id?: number | null,
64
- approved_by?: number | null,
65
- service_id?: number | null,
66
- sub_service_id?: number | null,
67
- delegation_user_id?: number | null,
68
- is_allowed?: boolean
69
- ) {
70
- super();
71
- this.request_id = request_id;
72
- this.approver_user_id = approver_user_id;
73
- this.approver_role_id = approver_role_id;
74
- this.comment = comment;
75
- this.approval_status = approval_status;
76
- this.level = level;
77
- this.department_id = department_id || null;
78
- this.section_id = section_id || null;
79
- this.approved_by = approved_by || null;
80
- this.service_id = service_id ?? null;
81
- this.sub_service_id = sub_service_id ?? null;
82
- this.delegation_user_id = delegation_user_id || null;
83
- this.is_allowed = is_allowed ?? true;
84
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+
5
+ export enum ApprovalStatus {
6
+ PENDING = "Pending",
7
+ APPROVED = "Approved",
8
+ REJECTED = "Rejected",
9
+ ASSIGNED = "Assigned",
10
+ REASSIGNED = "Reassigned"
11
+
12
+ }
13
+
14
+ @Entity({ name: 'it_approvals' })
15
+ export class ItApprovalDetails extends BaseModel {
16
+ @Column({ type: 'integer', nullable: false })
17
+ request_id: number;
18
+
19
+ @Column({ type: 'integer', nullable: true })
20
+ service_id: number | null;
21
+
22
+ @Column({ type: 'integer', nullable: true })
23
+ sub_service_id: number | null;
24
+
25
+ @Column({ type: 'integer', nullable: false })
26
+ level: number;
27
+
28
+ @Column({ type: 'integer', nullable: true })
29
+ approver_user_id: number | null;
30
+
31
+ @Column({ type: 'integer', nullable: true })
32
+ delegation_user_id: number | null;
33
+
34
+ @Column({ type: 'integer', nullable: false })
35
+ approver_role_id: number | null;
36
+
37
+ @Column({ type: 'integer', nullable: true })
38
+ department_id: number | null;
39
+
40
+ @Column({ type: 'integer', nullable: true })
41
+ section_id: number | null;
42
+
43
+ @Column({ type: 'integer', nullable: true })
44
+ approved_by: number | null;
45
+
46
+ @Column({ type: 'varchar', length: 255, nullable: false })
47
+ comment: string;
48
+
49
+ @Column({ type: 'enum', enum: ApprovalStatus,default: ApprovalStatus.PENDING, nullable: false })
50
+ approval_status: ApprovalStatus;
51
+
52
+ @Column({ type: 'boolean', default: true, nullable: false })
53
+ is_allowed: boolean;
54
+
55
+ constructor(
56
+ request_id: number,
57
+ approver_user_id: number | null,
58
+ approver_role_id: number | null,
59
+ comment: string,
60
+ approval_status: ApprovalStatus,
61
+ level: number,
62
+ department_id?: number | null,
63
+ section_id?: number | null,
64
+ approved_by?: number | null,
65
+ service_id?: number | null,
66
+ sub_service_id?: number | null,
67
+ delegation_user_id?: number | null,
68
+ is_allowed?: boolean
69
+ ) {
70
+ super();
71
+ this.request_id = request_id;
72
+ this.approver_user_id = approver_user_id;
73
+ this.approver_role_id = approver_role_id;
74
+ this.comment = comment;
75
+ this.approval_status = approval_status;
76
+ this.level = level;
77
+ this.department_id = department_id || null;
78
+ this.section_id = section_id || null;
79
+ this.approved_by = approved_by || null;
80
+ this.service_id = service_id ?? null;
81
+ this.sub_service_id = sub_service_id ?? null;
82
+ this.delegation_user_id = delegation_user_id || null;
83
+ this.is_allowed = is_allowed ?? true;
84
+ }
85
85
  }
@@ -1,56 +1,56 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum workFlowStatus {
5
- COMPLETED = "Completed",
6
- NOT_YET_STARTED = "Not Yet Started",
7
- PENDING = "Pending"
8
- }
9
-
10
- //This model is used to store the store the leave apporval matrix(HOD, Manager, HR, Director) based on leave type along with the levels
11
- @Entity({ name: 'it_work_flows' })
12
- export class ItWorkFlow extends BaseModel {
13
- @Column({ type: 'int', nullable: false })
14
- request_id: number;
15
-
16
- @Column({ type: 'int', nullable: true })
17
- service_id: number | null;
18
-
19
- @Column({ type: 'int', nullable: true })
20
- sub_service_id: number | null;
21
-
22
- @Column({ type: 'int', nullable: true })
23
- order: number | null;
24
-
25
- @Column({ type: 'varchar', length: 255, nullable: false })
26
- content: string;
27
-
28
- @Column({ type: 'enum', enum: workFlowStatus, default: workFlowStatus.NOT_YET_STARTED, nullable: false })
29
- status: workFlowStatus;
30
-
31
- @Column({ type: 'integer', nullable: true })
32
- user_id: number | null;
33
-
34
- @Column({ type: 'integer', nullable: true })
35
- role_id: number | null;
36
-
37
- @Column({ type: 'integer', nullable: true })
38
- department_id: number | null;
39
-
40
- @Column({ type: 'integer', nullable: true })
41
- section_id: number | null;
42
-
43
- constructor(request_id: number, content: string, status: workFlowStatus, order?: number, service_id?: number | null, sub_service_id?: number | null, user_id?: number | null, role_id?: number | null, department_id?: number | null, section_id?: number | null) {
44
- super();
45
- this.request_id = request_id;
46
- this.content = content;
47
- this.status = status;
48
- this.order = order || null;
49
- this.service_id = service_id ?? null;
50
- this.sub_service_id = sub_service_id ?? null;
51
- this.user_id = user_id || null;
52
- this.role_id = role_id || null;
53
- this.department_id = department_id || null;
54
- this.section_id = section_id || null;
55
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum workFlowStatus {
5
+ COMPLETED = "Completed",
6
+ NOT_YET_STARTED = "Not Yet Started",
7
+ PENDING = "Pending"
8
+ }
9
+
10
+ //This model is used to store the store the leave apporval matrix(HOD, Manager, HR, Director) based on leave type along with the levels
11
+ @Entity({ name: 'it_work_flows' })
12
+ export class ItWorkFlow extends BaseModel {
13
+ @Column({ type: 'int', nullable: false })
14
+ request_id: number;
15
+
16
+ @Column({ type: 'int', nullable: true })
17
+ service_id: number | null;
18
+
19
+ @Column({ type: 'int', nullable: true })
20
+ sub_service_id: number | null;
21
+
22
+ @Column({ type: 'int', nullable: true })
23
+ order: number | null;
24
+
25
+ @Column({ type: 'varchar', length: 255, nullable: false })
26
+ content: string;
27
+
28
+ @Column({ type: 'enum', enum: workFlowStatus, default: workFlowStatus.NOT_YET_STARTED, nullable: false })
29
+ status: workFlowStatus;
30
+
31
+ @Column({ type: 'integer', nullable: true })
32
+ user_id: number | null;
33
+
34
+ @Column({ type: 'integer', nullable: true })
35
+ role_id: number | null;
36
+
37
+ @Column({ type: 'integer', nullable: true })
38
+ department_id: number | null;
39
+
40
+ @Column({ type: 'integer', nullable: true })
41
+ section_id: number | null;
42
+
43
+ constructor(request_id: number, content: string, status: workFlowStatus, order?: number, service_id?: number | null, sub_service_id?: number | null, user_id?: number | null, role_id?: number | null, department_id?: number | null, section_id?: number | null) {
44
+ super();
45
+ this.request_id = request_id;
46
+ this.content = content;
47
+ this.status = status;
48
+ this.order = order || null;
49
+ this.service_id = service_id ?? null;
50
+ this.sub_service_id = sub_service_id ?? null;
51
+ this.user_id = user_id || null;
52
+ this.role_id = role_id || null;
53
+ this.department_id = department_id || null;
54
+ this.section_id = section_id || null;
55
+ }
56
56
  }