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

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 (116) hide show
  1. package/.env +8 -0
  2. package/dist/data-source.js +30 -0
  3. package/dist/index.d.ts +15 -0
  4. package/dist/index.js +16 -0
  5. package/dist/models/DocumentMetadataModel.d.ts +45 -0
  6. package/dist/models/DocumentMetadataModel.js +171 -0
  7. package/dist/models/DocumentationDepartmentsModel.d.ts +13 -0
  8. package/dist/models/DocumentationDepartmentsModel.js +53 -0
  9. package/dist/models/FolderModel.d.ts +16 -0
  10. package/dist/models/FolderModel.js +85 -0
  11. package/dist/models/HousingContractCancelApprovalModel.d.ts +1 -0
  12. package/dist/models/HousingContractCancelApprovalModel.js +4 -0
  13. package/dist/models/HousingContractRenewalApprovalModel.d.ts +1 -0
  14. package/dist/models/HousingContractRenewalApprovalModel.js +4 -0
  15. package/dist/models/ImportExportMaterialApprovalModel.d.ts +23 -0
  16. package/dist/models/ImportExportMaterialApprovalModel.js +101 -0
  17. package/dist/models/ImportExportMaterialAttachmentModel.d.ts +12 -0
  18. package/dist/models/ImportExportMaterialAttachmentModel.js +64 -0
  19. package/dist/models/ImportExportMaterialChatModel.d.ts +28 -0
  20. package/dist/models/ImportExportMaterialChatModel.js +86 -0
  21. package/dist/models/ImportExportMaterialModels.d.ts +92 -0
  22. package/dist/models/ImportExportMaterialModels.js +307 -0
  23. package/dist/models/ImportExportMaterialRequestModel.d.ts +33 -0
  24. package/dist/models/ImportExportMaterialRequestModel.js +118 -0
  25. package/dist/models/ImportExportMaterialWorkflowModel.d.ts +18 -0
  26. package/dist/models/ImportExportMaterialWorkflowModel.js +80 -0
  27. package/dist/models/LegalComplaintApprovalModel.d.ts +1 -0
  28. package/dist/models/LegalComplaintApprovalModel.js +4 -0
  29. package/dist/models/LegalConsultationApprovalModel.d.ts +1 -0
  30. package/dist/models/LegalConsultationApprovalModel.js +4 -0
  31. package/dist/models/PermissionModel.d.ts +18 -0
  32. package/dist/models/PermissionModel.js +68 -0
  33. package/dist/models/ResidentialUnitRentalApprovalModel.d.ts +1 -0
  34. package/dist/models/ResidentialUnitRentalApprovalModel.js +4 -0
  35. package/dist/models/SecurityAccessApprovalModel.d.ts +23 -0
  36. package/dist/models/SecurityAccessApprovalModel.js +82 -0
  37. package/dist/models/SecurityAccessAttachmentModel.d.ts +12 -0
  38. package/dist/models/SecurityAccessAttachmentModel.js +56 -0
  39. package/dist/models/SecurityAccessChatModel.d.ts +12 -0
  40. package/dist/models/SecurityAccessChatModel.js +56 -0
  41. package/dist/models/SecurityAccessRequestModel.d.ts +25 -0
  42. package/dist/models/SecurityAccessRequestModel.js +80 -0
  43. package/dist/models/SecurityAccessWorkflowModel.d.ts +24 -0
  44. package/dist/models/SecurityAccessWorkflowModel.js +84 -0
  45. package/dist/models/ServiceExtensionAfter60ApprovalModel.d.ts +23 -0
  46. package/dist/models/ServiceExtensionAfter60ApprovalModel.js +101 -0
  47. package/dist/models/ServiceExtensionAfter60AttachmentModel.d.ts +12 -0
  48. package/dist/models/ServiceExtensionAfter60AttachmentModel.js +64 -0
  49. package/dist/models/ServiceExtensionAfter60ChatModel.d.ts +28 -0
  50. package/dist/models/ServiceExtensionAfter60ChatModel.js +86 -0
  51. package/dist/models/ServiceExtensionAfter60RequestModel.d.ts +28 -0
  52. package/dist/models/ServiceExtensionAfter60RequestModel.js +108 -0
  53. package/dist/models/ServiceExtensionAfter60WorkflowModel.d.ts +18 -0
  54. package/dist/models/ServiceExtensionAfter60WorkflowModel.js +80 -0
  55. package/dist/models/ServiceExtensionAfterAge60Models.d.ts +93 -0
  56. package/dist/models/ServiceExtensionAfterAge60Models.js +312 -0
  57. package/dist/models/UUIDBaseModel.d.ts +14 -0
  58. package/dist/models/UUIDBaseModel.js +66 -0
  59. package/dist/models/WorkingHoursExtensionApprovalModel.d.ts +23 -0
  60. package/dist/models/WorkingHoursExtensionApprovalModel.js +101 -0
  61. package/dist/models/WorkingHoursExtensionAttachmentModel.d.ts +12 -0
  62. package/dist/models/WorkingHoursExtensionAttachmentModel.js +64 -0
  63. package/dist/models/WorkingHoursExtensionChatModel.d.ts +28 -0
  64. package/dist/models/WorkingHoursExtensionChatModel.js +86 -0
  65. package/dist/models/WorkingHoursExtensionModels.d.ts +88 -0
  66. package/dist/models/WorkingHoursExtensionModels.js +295 -0
  67. package/dist/models/WorkingHoursExtensionRequestModel.d.ts +25 -0
  68. package/dist/models/WorkingHoursExtensionRequestModel.js +96 -0
  69. package/dist/models/WorkingHoursExtensionWorkflowModel.d.ts +18 -0
  70. package/dist/models/WorkingHoursExtensionWorkflowModel.js +80 -0
  71. package/package.json +24 -24
  72. package/src/data-source.ts +419 -389
  73. package/src/index.ts +431 -414
  74. package/src/models/AccessCardRequestModel.ts +135 -135
  75. package/src/models/AirportEntryPermitModel.ts +276 -276
  76. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -153
  77. package/src/models/DepartmentsModel.ts +25 -25
  78. package/src/models/DocumentDriveModel.ts +28 -28
  79. package/src/models/DocumentFolderModel.ts +45 -45
  80. package/src/models/HousingContractCancelApprovalModel.ts +64 -61
  81. package/src/models/HousingContractCancelChatModel.ts +56 -56
  82. package/src/models/HousingContractRenewalApprovalModel.ts +64 -61
  83. package/src/models/HousingContractRenewalChatModel.ts +59 -59
  84. package/src/models/ITRequestAttachmentModel.ts +73 -73
  85. package/src/models/ITRequestChatModel.ts +74 -74
  86. package/src/models/ImportExportMaterialApprovalModel.ts +87 -0
  87. package/src/models/ImportExportMaterialAttachmentModel.ts +50 -0
  88. package/src/models/ImportExportMaterialChatModel.ts +61 -0
  89. package/src/models/ImportExportMaterialRequestModel.ts +85 -0
  90. package/src/models/ImportExportMaterialWorkflowModel.ts +51 -0
  91. package/src/models/ItApprovalsModel.ts +84 -84
  92. package/src/models/ItWorkflowModel.ts +55 -55
  93. package/src/models/LegalComplaintApprovalModel.ts +64 -61
  94. package/src/models/LegalConsultationApprovalModel.ts +65 -62
  95. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  96. package/src/models/ResidentialUnitRentalApprovalModel.ts +143 -140
  97. package/src/models/ResidentialUnitRentalChatModel.ts +56 -56
  98. package/src/models/ResidentialUnitRentalRequestModel.ts +218 -218
  99. package/src/models/ServiceExtensionAfter60ApprovalModel.ts +87 -0
  100. package/src/models/ServiceExtensionAfter60AttachmentModel.ts +50 -0
  101. package/src/models/ServiceExtensionAfter60ChatModel.ts +61 -0
  102. package/src/models/ServiceExtensionAfter60RequestModel.ts +75 -0
  103. package/src/models/ServiceExtensionAfter60WorkflowModel.ts +51 -0
  104. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  105. package/src/models/StudyLeaveRequestModel.ts +144 -144
  106. package/src/models/TrainingRequestModel.ts +164 -164
  107. package/src/models/TrainingRoomBookingRequestModel.ts +142 -142
  108. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  109. package/src/models/WorkingHoursExtensionApprovalModel.ts +87 -0
  110. package/src/models/WorkingHoursExtensionAttachmentModel.ts +50 -0
  111. package/src/models/WorkingHoursExtensionChatModel.ts +61 -0
  112. package/src/models/WorkingHoursExtensionRequestModel.ts +66 -0
  113. package/src/models/WorkingHoursExtensionWorkflowModel.ts +51 -0
  114. package/src/models/role.ts +34 -34
  115. package/src/models/user.ts +233 -233
  116. package/platform-modules-civil-aviation-authority-2.3.193.tgz +0 -0
@@ -1,56 +1,56 @@
1
- import { Column, Entity } from "typeorm";
2
-
3
- import { BaseModel } from "./BaseModel";
4
-
5
- export enum ResidentialUnitRentalMessageType {
6
- text = "text",
7
- image = "image",
8
- video = "video",
9
- file = "file",
10
- link = "link",
11
- }
12
-
13
- export enum ResidentialUnitRentalChatStatus {
14
- Pending = "Pending",
15
- Received = "Received",
16
- Approved = "Approved",
17
- Rejected = "Rejected",
18
- InProgress = "In Progress",
19
- }
20
-
21
- @Entity({ name: "residential_unit_rental_chat" })
22
- export class ResidentialUnitRentalChat extends BaseModel {
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
+
3
+ import { BaseModel } from "./BaseModel";
4
+
5
+ export enum ResidentialUnitRentalMessageType {
6
+ text = "text",
7
+ image = "image",
8
+ video = "video",
9
+ file = "file",
10
+ link = "link",
11
+ }
12
+
13
+ export enum ResidentialUnitRentalChatStatus {
14
+ Pending = "Pending",
15
+ Received = "Received",
16
+ Approved = "Approved",
17
+ Rejected = "Rejected",
18
+ InProgress = "In Progress",
19
+ }
20
+
21
+ @Entity({ name: "residential_unit_rental_chat" })
22
+ export class ResidentialUnitRentalChat extends BaseModel {
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,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
- phone_number: string;
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
+ phone_number: string;
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,87 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum ServiceExtensionAfter60ApprovalStatus {
5
+ PENDING = "Pending",
6
+ IN_PROGRESS = "In Progress",
7
+ APPROVED = "Approved",
8
+ REJECTED = "Rejected"
9
+ }
10
+
11
+ @Entity({ name: "service_extension_after_60_approvals" })
12
+ export class ServiceExtensionAfter60Approval 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
+ @Column({ type: "integer", nullable: true })
26
+ approver_role_id: number;
27
+
28
+ @Column({ type: "integer", nullable: true })
29
+ department_id: number | null;
30
+
31
+ @Column({ type: "integer", nullable: true })
32
+ section_id: number | null;
33
+
34
+ @Column({ type: "integer", nullable: true })
35
+ approver_user_id: number | null;
36
+
37
+ @Column({ type: "integer", nullable: true })
38
+ delegate_user_id: number | null;
39
+
40
+ @Column({ type: "integer", nullable: true })
41
+ approved_by: number | null;
42
+
43
+ @Column({ type: "varchar", length: 500, nullable: true, default: "" })
44
+ comment: string;
45
+
46
+ @Column({
47
+ type: "enum",
48
+ enum: ServiceExtensionAfter60ApprovalStatus,
49
+ default: ServiceExtensionAfter60ApprovalStatus.PENDING,
50
+ nullable: false
51
+ })
52
+ approval_status: ServiceExtensionAfter60ApprovalStatus;
53
+
54
+ @Column({ type: "boolean", default: true, nullable: false })
55
+ is_allowed: boolean;
56
+
57
+ constructor(
58
+ request_id: number,
59
+ approver_role_id: number,
60
+ level: number,
61
+ comment: string,
62
+ approval_status: ServiceExtensionAfter60ApprovalStatus,
63
+ service_id?: number,
64
+ sub_service_id?: number,
65
+ department_id?: number | null,
66
+ section_id?: number | null,
67
+ approver_user_id?: number | null,
68
+ delegate_user_id?: number | null,
69
+ approved_by?: number | null,
70
+ is_allowed?: boolean
71
+ ) {
72
+ super();
73
+ this.request_id = request_id;
74
+ this.service_id = service_id ?? null;
75
+ this.sub_service_id = sub_service_id ?? null;
76
+ this.level = level;
77
+ this.approver_role_id = approver_role_id;
78
+ this.department_id = department_id ?? null;
79
+ this.section_id = section_id ?? null;
80
+ this.approver_user_id = approver_user_id ?? null;
81
+ this.delegate_user_id = delegate_user_id ?? null;
82
+ this.approved_by = approved_by ?? null;
83
+ this.comment = comment;
84
+ this.approval_status = approval_status;
85
+ this.is_allowed = is_allowed !== undefined ? is_allowed : true;
86
+ }
87
+ }
@@ -0,0 +1,50 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "service_extension_after_60_attachments" })
5
+ export class ServiceExtensionAfter60Attachment 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
+ constructor(
31
+ request_id: number,
32
+ file_url: string,
33
+ service_id?: number,
34
+ sub_service_id?: number,
35
+ file_name?: string,
36
+ file_type?: string,
37
+ file_size?: number,
38
+ chat_id?: number
39
+ ) {
40
+ super();
41
+ this.request_id = request_id;
42
+ this.service_id = service_id ?? null;
43
+ this.sub_service_id = sub_service_id ?? null;
44
+ this.file_url = file_url;
45
+ this.file_name = file_name ?? "";
46
+ this.file_type = file_type ?? "";
47
+ this.file_size = file_size ?? null;
48
+ this.chat_id = chat_id ?? null;
49
+ }
50
+ }