@platform-modules/civil-aviation-authority 2.3.64 → 2.3.69
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.
- package/.env +17 -9
- package/dist/data-source.js +12 -6
- package/dist/index.d.ts +0 -203
- package/dist/index.js +0 -305
- package/dist/models/DepartmentDocumentOwnerModel.d.ts +10 -0
- package/dist/models/DepartmentDocumentOwnerModel.js +44 -0
- package/dist/models/DocumentAuditLogModel.d.ts +13 -0
- package/dist/models/DocumentAuditLogModel.js +60 -0
- package/dist/models/DocumentFolderModel.d.ts +14 -0
- package/dist/models/DocumentFolderModel.js +60 -0
- package/dist/models/DocumentMetadataModel.d.ts +45 -0
- package/dist/models/DocumentMetadataModel.js +171 -0
- package/dist/models/DocumentModel.d.ts +25 -0
- package/dist/models/DocumentModel.js +96 -0
- package/dist/models/DocumentPermissionModel.d.ts +11 -0
- package/dist/models/DocumentPermissionModel.js +52 -0
- package/dist/models/DocumentTypeModel.d.ts +8 -0
- package/dist/models/{ITServicesTypesSalalahModel.js → DocumentTypeModel.js} +19 -16
- package/dist/models/DocumentationDepartmentsModel.d.ts +13 -0
- package/dist/models/DocumentationDepartmentsModel.js +53 -0
- package/dist/models/FolderModel.d.ts +16 -0
- package/dist/models/FolderModel.js +85 -0
- package/dist/models/PermissionModel.d.ts +18 -0
- package/dist/models/PermissionModel.js +68 -0
- package/dist/models/UUIDBaseModel.d.ts +14 -0
- package/dist/models/UUIDBaseModel.js +66 -0
- package/package.json +1 -1
- package/src/data-source.ts +267 -261
- package/src/index.ts +0 -231
- package/src/models/DepartmentDocumentOwnerModel.ts +25 -0
- package/src/models/DepartmentsModel.ts +25 -25
- package/src/models/DocumentAuditLogModel.ts +38 -0
- package/src/models/DocumentFolderModel.ts +37 -0
- package/src/models/DocumentModel.ts +65 -0
- package/src/models/DocumentPermissionModel.ts +32 -0
- package/src/models/DocumentTypeModel.ts +19 -0
- package/src/models/HrServiceRequestModel.ts +167 -167
- package/src/models/ITRequestChatModel.ts +62 -62
- package/src/models/ItApprovalsModel.ts +84 -84
- package/src/models/ItWorkflowModel.ts +55 -55
- package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
- package/src/models/RequestForCoverageRequestModel.ts +174 -174
- package/src/models/ServicesNotificationConfigModel.ts +55 -55
- package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
- package/dist/models/ITApprovalSettings.d.ts +0 -7
- package/dist/models/ITApprovalSettings.js +0 -40
- package/dist/models/ITServicesTypesMuscatModel.d.ts +0 -6
- package/dist/models/ITServicesTypesMuscatModel.js +0 -34
- package/dist/models/ITServicesTypesSalalahModel.d.ts +0 -6
- package/dist/models/Workflows.d.ts +0 -9
- package/dist/models/Workflows.js +0 -31
package/src/index.ts
CHANGED
|
@@ -1,231 +0,0 @@
|
|
|
1
|
-
import { JobTransferRequestStatus } from './models/JobTransferRequestModel';
|
|
2
|
-
|
|
3
|
-
export * from './models/user';
|
|
4
|
-
export * from './models/role';
|
|
5
|
-
export * from './models/user-sessions';
|
|
6
|
-
export * from './models/ITHelpDeskModel';
|
|
7
|
-
// export * from './models/ITServicesTypesSalalahModel'; // REMOVED - table no longer used
|
|
8
|
-
// export * from './models/ITServicesTypesMuscatModel'; // REMOVED - table no longer used
|
|
9
|
-
export * from './models/ServiceTypeModel';
|
|
10
|
-
export * from './models/CAAServices';
|
|
11
|
-
export * from './models/CAASubServices';
|
|
12
|
-
// export * from './models/ITApprovalSettings'; // REMOVED - table no longer used
|
|
13
|
-
// export * from './models/Workflows'; // REMOVED - table no longer used
|
|
14
|
-
export * from './models/ItApprovalsModel';
|
|
15
|
-
export * from './models/ItWorkflowModel';
|
|
16
|
-
export * from './models/WorkflowDefinitions';
|
|
17
|
-
export * from './models/WorkflowTask';
|
|
18
|
-
export * from './models/DepartmentsModel';
|
|
19
|
-
export * from './models/SectionModel';
|
|
20
|
-
export * from './models/WorkflowHierarchy';
|
|
21
|
-
export * from './models/WorkflowTaskNames';
|
|
22
|
-
export * from './models/DirectorateModel';
|
|
23
|
-
export * from './models/PositionModel';
|
|
24
|
-
export * from './models/serviceBookmarksModel';
|
|
25
|
-
export * from './models/contactInfoModel';
|
|
26
|
-
export * from './models/userRolesModel';
|
|
27
|
-
export * from './models/roleRightsModel';
|
|
28
|
-
export * from './models/NotificationModel';
|
|
29
|
-
export * from './models/ITRequestChatModel';
|
|
30
|
-
export * from './models/ITRequestAttachmentModel';
|
|
31
|
-
export * from './models/LogisticsModel';
|
|
32
|
-
export * from './models/LogisticsForeignVehicleModel';
|
|
33
|
-
export * from './models/LogisticsForeignVehiclePassengerModel';
|
|
34
|
-
export * from './models/LogisticsApprovalModel';
|
|
35
|
-
export * from './models/LogisticsChatModel';
|
|
36
|
-
export * from './models/LogisticsAttachmentModel';
|
|
37
|
-
export * from './models/importantLinksModel';
|
|
38
|
-
export * from './models/LogisticsWorkflowModel';
|
|
39
|
-
export * from './models/LogisticsVehicleMaintenanceRequestModel';
|
|
40
|
-
export * from './models/LogisticsVehicleMaintenanceApprovalModel';
|
|
41
|
-
export * from './models/LogisticsVehicleMaintenanceAttachmentModel';
|
|
42
|
-
export * from './models/LogisticsVehicleMaintenanceChatModel';
|
|
43
|
-
export * from './models/LogisticsVehicleMaintenanceWorkflowModel';
|
|
44
|
-
export { VehicleMaintenanceType, VehicleMaintenanceStatus } from './models/LogisticsVehicleMaintenanceRequestModel';
|
|
45
|
-
export { LogisticsVehicleMaintenanceApprovalStatus } from './models/LogisticsVehicleMaintenanceApprovalModel';
|
|
46
|
-
export { LogisticsVehicleMaintenanceMessageType } from './models/LogisticsVehicleMaintenanceChatModel';
|
|
47
|
-
export { LogisticsVehicleMaintenanceWorkFlowStatus } from './models/LogisticsVehicleMaintenanceWorkflowModel';
|
|
48
|
-
export * from './models/AccessCardRequestModel';
|
|
49
|
-
export * from './models/AccessCardApprovalModel';
|
|
50
|
-
export * from './models/AccessCardAttachmentModel';
|
|
51
|
-
export * from './models/AccessCardChatModel';
|
|
52
|
-
export * from './models/AccessCardWorkflowModel';
|
|
53
|
-
export * from './models/DelegateSettingsModel';
|
|
54
|
-
export * from './models/feedbackModel';
|
|
55
|
-
export * from './models/PortalFeedbackModel';
|
|
56
|
-
export * from './models/VpnRequestModel';
|
|
57
|
-
export * from './models/VpnApprovalModel';
|
|
58
|
-
export * from './models/VpnWorkflowModel';
|
|
59
|
-
export * from './models/VpnRequestChatModel';
|
|
60
|
-
export * from './models/VpnRequestAttachmentModel';
|
|
61
|
-
export * from './models/HotelreservationModel';
|
|
62
|
-
export * from './models/HotelApprovalModel';
|
|
63
|
-
export * from './models/HotelWorkFlowModel';
|
|
64
|
-
export * from './models/HotelChatModel';
|
|
65
|
-
export * from './models/HotelAttachedModel';
|
|
66
|
-
export * from './models/SecurityThreatRequestModel';
|
|
67
|
-
export * from './models/SecurityThreatApprovalModel';
|
|
68
|
-
export * from './models/SecurityThreatAttachmentModel';
|
|
69
|
-
export * from './models/SecurityThreatChatModel';
|
|
70
|
-
export * from './models/SecurityThreatWorkflowModel';
|
|
71
|
-
export * from './models/SecurityAwarenessRequestModel';
|
|
72
|
-
export * from './models/SecurityAwarenessApprovalModel';
|
|
73
|
-
export * from './models/SecurityAwarenessAttachmentModel';
|
|
74
|
-
export * from './models/SecurityAwarenessChatModel';
|
|
75
|
-
export * from './models/SecurityAwarenessWorkflowModel';
|
|
76
|
-
export * from './models/AirportEntryPermitModel';
|
|
77
|
-
export * from './models/AirportEntryPermitApprovalModel';
|
|
78
|
-
export * from './models/AirportEntryPermitWorkflowModel';
|
|
79
|
-
export * from './models/AirportEntryPermitChatModel';
|
|
80
|
-
export * from './models/AirportEntryPermitAttachmentModel';
|
|
81
|
-
export * from './models/GroupNamesModel';
|
|
82
|
-
export * from './models/GroupModel';
|
|
83
|
-
export * from './models/HrServiceRequestModel';
|
|
84
|
-
export * from './models/HrServiceApprovalModel';
|
|
85
|
-
export * from './models/HrServiceWorkflowModel';
|
|
86
|
-
export * from './models/HrServiceAttachmentModel';
|
|
87
|
-
export * from './models/HrServiceChatModel';
|
|
88
|
-
export * from './models/TrainingRequestModel';
|
|
89
|
-
export * from './models/TrainingWorkflowModel';
|
|
90
|
-
export * from './models/TrainingApprovalModel';
|
|
91
|
-
export * from './models/TrainingChatModel';
|
|
92
|
-
export * from './models/TrainingAttachmentModel';
|
|
93
|
-
export * from './models/StudyLeaveRequestModel';
|
|
94
|
-
export * from './models/StudyLeaveWorkflowModel';
|
|
95
|
-
export * from './models/StudyLeaveApprovalModel';
|
|
96
|
-
export * from './models/StudyLeaveChatModel';
|
|
97
|
-
export * from './models/StudyLeaveAttachmentModel';
|
|
98
|
-
export {HrServiceRequestStatus} from './models/HrServiceRequestModel';
|
|
99
|
-
export {HrServiceApprovalStatus} from './models/HrServiceApprovalModel';
|
|
100
|
-
export {HrServiceWorkFlowStatus} from './models/HrServiceWorkflowModel';
|
|
101
|
-
export {HrServiceRequestAttachment} from './models/HrServiceAttachmentModel';
|
|
102
|
-
export {HrServiceRequestChat} from './models/HrServiceChatModel';
|
|
103
|
-
export {HrServiceMessageType} from './models/HrServiceChatModel';
|
|
104
|
-
export {HrServiceChatStatus} from './models/HrServiceChatModel';
|
|
105
|
-
export {TrainingRequestStatus} from './models/TrainingRequestModel';
|
|
106
|
-
export {TrainingApprovalStatus} from './models/TrainingApprovalModel';
|
|
107
|
-
export {TrainingWorkFlowStatus} from './models/TrainingWorkflowModel';
|
|
108
|
-
export {TrainingRequestAttachment} from './models/TrainingAttachmentModel';
|
|
109
|
-
export {TrainingRequestChat} from './models/TrainingChatModel';
|
|
110
|
-
export {TrainingMessageType} from './models/TrainingChatModel';
|
|
111
|
-
export {StudyLeaveRequestStatus} from './models/StudyLeaveRequestModel';
|
|
112
|
-
export {StudyLeaveApprovalStatus} from './models/StudyLeaveApprovalModel';
|
|
113
|
-
export {StudyLeaveWorkFlowStatus} from './models/StudyLeaveWorkflowModel';
|
|
114
|
-
export {StudyLeaveRequestAttachment} from './models/StudyLeaveAttachmentModel';
|
|
115
|
-
export {StudyLeaveRequestChat} from './models/StudyLeaveChatModel';
|
|
116
|
-
export {StudyLeaveMessageType} from './models/StudyLeaveChatModel';
|
|
117
|
-
export {StudyLeaveChatStatus} from './models/StudyLeaveChatModel';
|
|
118
|
-
export * from './models/AnnualTrainingPlanRequestModel';
|
|
119
|
-
export * from './models/AnnualTrainingPlanWorkflowModel';
|
|
120
|
-
export * from './models/AnnualTrainingPlanApprovalModel';
|
|
121
|
-
export * from './models/AnnualTrainingPlanChatModel';
|
|
122
|
-
export * from './models/AnnualTrainingPlanAttachmentModel';
|
|
123
|
-
export {AnnualTrainingPlanRequestStatus, AnnualTrainingPlanPlace} from './models/AnnualTrainingPlanRequestModel';
|
|
124
|
-
export {AnnualTrainingPlanApprovalStatus} from './models/AnnualTrainingPlanApprovalModel';
|
|
125
|
-
export {AnnualTrainingPlanWorkFlowStatus} from './models/AnnualTrainingPlanWorkflowModel';
|
|
126
|
-
export {AnnualTrainingPlanRequestAttachment} from './models/AnnualTrainingPlanAttachmentModel';
|
|
127
|
-
export {AnnualTrainingPlanRequestChat} from './models/AnnualTrainingPlanChatModel';
|
|
128
|
-
export {AnnualTrainingPlanMessageType} from './models/AnnualTrainingPlanChatModel';
|
|
129
|
-
export {AnnualTrainingPlanChatStatus} from './models/AnnualTrainingPlanChatModel';
|
|
130
|
-
export * from './models/TrainingRoomBookingRequestModel';
|
|
131
|
-
export * from './models/TrainingRoomBookingWorkflowModel';
|
|
132
|
-
export * from './models/TrainingRoomBookingApprovalModel';
|
|
133
|
-
export * from './models/TrainingRoomBookingChatModel';
|
|
134
|
-
export * from './models/TrainingRoomBookingAttachmentModel';
|
|
135
|
-
export {TrainingRoomBookingRequestStatus, TrainingRoomBookingRoomType} from './models/TrainingRoomBookingRequestModel';
|
|
136
|
-
export {TrainingRoomBookingApprovalStatus} from './models/TrainingRoomBookingApprovalModel';
|
|
137
|
-
export {TrainingRoomBookingWorkFlowStatus} from './models/TrainingRoomBookingWorkflowModel';
|
|
138
|
-
export {TrainingRoomBookingRequestAttachment} from './models/TrainingRoomBookingAttachmentModel';
|
|
139
|
-
export {TrainingRoomBookingRequestChat} from './models/TrainingRoomBookingChatModel';
|
|
140
|
-
export {TrainingRoomBookingMessageType} from './models/TrainingRoomBookingChatModel';
|
|
141
|
-
export {TrainingRoomBookingChatStatus} from './models/TrainingRoomBookingChatModel';
|
|
142
|
-
export * from './models/SecondmentRequestModel';
|
|
143
|
-
export {SecondmentRequestStatus} from './models/SecondmentRequestModel';
|
|
144
|
-
export * from './models/TemporaryAssignmentRequestModel';
|
|
145
|
-
export {TemporaryAssignmentRequestStatus, TemporaryAssignmentRequestType} from './models/TemporaryAssignmentRequestModel';
|
|
146
|
-
export * from './models/ServiceTransferRequestModel';
|
|
147
|
-
export {ServiceTransferRequestStatus, SalaryDetailsType, ServiceTransferRequestType} from './models/ServiceTransferRequestModel';
|
|
148
|
-
export * from './models/DutyMissionRequestModel';
|
|
149
|
-
export * from './models/DutyMissionApprovalModel';
|
|
150
|
-
export * from './models/DutyMissionWorkflowModel';
|
|
151
|
-
export * from './models/DutyMissionAttachmentModel';
|
|
152
|
-
export * from './models/DutyMissionChatModel';
|
|
153
|
-
export * from './models/DutyMissionEmployeeDetailsModel';
|
|
154
|
-
export * from './models/DutyMissionAirTicketDetailsModel';
|
|
155
|
-
export * from './models/RequestForCoverageRequestModel';
|
|
156
|
-
export * from './models/RequestForCoverageWorkflowModel';
|
|
157
|
-
export * from './models/RequestForCoverageApprovalModel';
|
|
158
|
-
export * from './models/RequestForCoverageChatModel';
|
|
159
|
-
export * from './models/RequestForCoverageAttachmentModel';
|
|
160
|
-
export {RequestForCoverageRequestStatus, RequestForCoverageNewsSize} from './models/RequestForCoverageRequestModel';
|
|
161
|
-
export {RequestForCoverageWorkFlowStatus} from './models/RequestForCoverageWorkflowModel';
|
|
162
|
-
export {RequestForCoverageApprovalStatus} from './models/RequestForCoverageApprovalModel';
|
|
163
|
-
export {RequestForCoverageRequestChat} from './models/RequestForCoverageChatModel';
|
|
164
|
-
export {RequestForCoverageMessageType, RequestForCoverageChatStatus} from './models/RequestForCoverageChatModel';
|
|
165
|
-
export {RequestForCoverageRequestAttachment} from './models/RequestForCoverageAttachmentModel';
|
|
166
|
-
export * from './models/DutyMissionRequestModel';
|
|
167
|
-
export * from './models/DutyMissionApprovalModel';
|
|
168
|
-
export * from './models/DutyMissionWorkflowModel';
|
|
169
|
-
export * from './models/DutyMissionAttachmentModel';
|
|
170
|
-
export * from './models/DutyMissionChatModel';
|
|
171
|
-
export * from './models/DutyMissionChatModel';
|
|
172
|
-
export * from './models/DutyMissionEmployeeDetailsModel';
|
|
173
|
-
export * from './models/DutyMissionAirTicketDetailsModel';
|
|
174
|
-
export * from './models/RequestForCoverageRequestModel';
|
|
175
|
-
export * from './models/RequestForCoverageWorkflowModel';
|
|
176
|
-
export * from './models/RequestForCoverageApprovalModel';
|
|
177
|
-
export * from './models/RequestForCoverageChatModel';
|
|
178
|
-
export * from './models/RequestForCoverageAttachmentModel';
|
|
179
|
-
export * from './models/AssignTasksEmpRequestModel';
|
|
180
|
-
export * from './models/AssignTasksEmpApprovalModel';
|
|
181
|
-
export * from './models/AssignTasksEmpWorkflowModel';
|
|
182
|
-
export * from './models/AssignTasksEmpAttachmentModel';
|
|
183
|
-
export * from './models/AssignTasksEmpChatModel';
|
|
184
|
-
export {AssignTasksEmpStatus, AssignTasksEmpPriority} from './models/AssignTasksEmpRequestModel';
|
|
185
|
-
export {AssignTasksEmpApprovalStatus} from './models/AssignTasksEmpApprovalModel';
|
|
186
|
-
export {AssignTasksEmpWorkFlowStatus} from './models/AssignTasksEmpWorkflowModel';
|
|
187
|
-
export {AssignTasksEmpRequestAttachment} from './models/AssignTasksEmpAttachmentModel';
|
|
188
|
-
export {AssignTasksEmpRequestChat} from './models/AssignTasksEmpChatModel';
|
|
189
|
-
export {AssignTasksEmpMessageType} from './models/AssignTasksEmpChatModel';
|
|
190
|
-
|
|
191
|
-
export * from './models/ShiftAllowanceRequestModel';
|
|
192
|
-
export {ShiftAllowanceRequestStatus, ShiftAllowanceValue} from './models/ShiftAllowanceRequestModel';
|
|
193
|
-
|
|
194
|
-
// Job Transfer (Transfer from One Job to Another Job Nature) Service
|
|
195
|
-
export * from './models/JobTransferRequestModel';
|
|
196
|
-
export {JobTransferRequestStatus} from './models/JobTransferRequestModel';
|
|
197
|
-
|
|
198
|
-
// New Resource (Request for New Resource) Service
|
|
199
|
-
export * from './models/NewResourceRequestModel';
|
|
200
|
-
export {NewResourceRequestStatus} from './models/NewResourceRequestModel';
|
|
201
|
-
|
|
202
|
-
// Country Master
|
|
203
|
-
export * from './models/CountryMasterModel';
|
|
204
|
-
|
|
205
|
-
// Location Master
|
|
206
|
-
export * from './models/LocationModel';
|
|
207
|
-
|
|
208
|
-
// Nationality Master
|
|
209
|
-
export * from './models/NationalityMasterModel';
|
|
210
|
-
|
|
211
|
-
// Services Notification Configuration
|
|
212
|
-
export * from './models/ServicesNotificationConfigModel';
|
|
213
|
-
export { ServicesNotificationTriggerType } from './models/ServicesNotificationConfigModel';
|
|
214
|
-
|
|
215
|
-
// Training Room Notification Configuration (deprecated - use ServicesNotificationConfigModel)
|
|
216
|
-
export * from './models/TrainingRoomNotificationConfigModel';
|
|
217
|
-
export {NotificationFrequency} from './models/TrainingRoomNotificationConfigModel';
|
|
218
|
-
|
|
219
|
-
// Mission Travel Passport Expiry Notification Configuration
|
|
220
|
-
export * from './models/MissionTravelPassportExpiryNotificationConfigModel';
|
|
221
|
-
|
|
222
|
-
export * from './models/CashAllowanceLeaveRequestModel'
|
|
223
|
-
export { CashAllowanceLeaveRequestStatus } from './models/CashAllowanceLeaveRequestModel'
|
|
224
|
-
|
|
225
|
-
// Promotion Request Service
|
|
226
|
-
export * from './models/PromotionRequestModel';
|
|
227
|
-
export { PromotionRequestStatus } from './models/PromotionRequestModel';
|
|
228
|
-
|
|
229
|
-
// Annual Increment (Periodic Allowance) Request Service
|
|
230
|
-
export * from './models/AnnualIncrementRequestModel';
|
|
231
|
-
export { AnnualIncrementRequestStatus } from './models/AnnualIncrementRequestModel';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Column, Entity, ManyToOne, JoinColumn } from "typeorm";
|
|
2
|
+
import { BaseModel } from './BaseModel';
|
|
3
|
+
import { Departments } from './DepartmentsModel';
|
|
4
|
+
import { User } from './user';
|
|
5
|
+
|
|
6
|
+
@Entity({ name: 'department_document_owners' })
|
|
7
|
+
export class DepartmentDocumentOwner extends BaseModel {
|
|
8
|
+
|
|
9
|
+
@Column({ type: 'integer', nullable: false, unique: true })
|
|
10
|
+
department_id: number;
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'integer', nullable: false })
|
|
13
|
+
user_id: number;
|
|
14
|
+
|
|
15
|
+
@Column({ type: 'boolean', nullable: false, default: true })
|
|
16
|
+
is_active: boolean;
|
|
17
|
+
|
|
18
|
+
@ManyToOne(() => Departments)
|
|
19
|
+
@JoinColumn({ name: 'department_id' })
|
|
20
|
+
department?: Departments;
|
|
21
|
+
|
|
22
|
+
@ManyToOne(() => User)
|
|
23
|
+
@JoinColumn({ name: 'user_id' })
|
|
24
|
+
user?: User;
|
|
25
|
+
}
|
|
@@ -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
|
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Column, Entity, ManyToOne, JoinColumn } from "typeorm";
|
|
2
|
+
import { BaseModel } from './BaseModel';
|
|
3
|
+
import { User } from './user';
|
|
4
|
+
import { Document } from './DocumentModel';
|
|
5
|
+
|
|
6
|
+
@Entity({ name: 'document_audit_logs' })
|
|
7
|
+
export class DocumentAuditLog extends BaseModel {
|
|
8
|
+
|
|
9
|
+
@Column({ type: 'integer', nullable: false })
|
|
10
|
+
document_id: number;
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'integer', nullable: false })
|
|
13
|
+
user_id: number;
|
|
14
|
+
|
|
15
|
+
@Column({
|
|
16
|
+
type: 'varchar',
|
|
17
|
+
length: 50,
|
|
18
|
+
nullable: false
|
|
19
|
+
})
|
|
20
|
+
action_type: string;
|
|
21
|
+
|
|
22
|
+
@Column({ type: 'jsonb', nullable: true })
|
|
23
|
+
action_details?: any;
|
|
24
|
+
|
|
25
|
+
@Column({ type: 'varchar', length: 45, nullable: true })
|
|
26
|
+
ip_address?: string;
|
|
27
|
+
|
|
28
|
+
@Column({ type: 'text', nullable: true })
|
|
29
|
+
user_agent?: string;
|
|
30
|
+
|
|
31
|
+
@ManyToOne(() => Document)
|
|
32
|
+
@JoinColumn({ name: 'document_id' })
|
|
33
|
+
document?: Document;
|
|
34
|
+
|
|
35
|
+
@ManyToOne(() => User)
|
|
36
|
+
@JoinColumn({ name: 'user_id' })
|
|
37
|
+
user?: User;
|
|
38
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
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
|
+
|
|
6
|
+
@Entity({ name: 'document_folders' })
|
|
7
|
+
export class DocumentFolder extends BaseModel {
|
|
8
|
+
|
|
9
|
+
@Column({ type: 'varchar', length: 100, nullable: false })
|
|
10
|
+
name: string;
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'integer', nullable: false })
|
|
13
|
+
department_id: number;
|
|
14
|
+
|
|
15
|
+
@Column({ type: 'integer', nullable: true })
|
|
16
|
+
parent_folder_id?: number;
|
|
17
|
+
|
|
18
|
+
@Column({ type: 'text', nullable: true })
|
|
19
|
+
description?: string;
|
|
20
|
+
|
|
21
|
+
@Column({ type: 'boolean', nullable: false, default: true })
|
|
22
|
+
is_active: boolean;
|
|
23
|
+
|
|
24
|
+
@ManyToOne(() => Departments)
|
|
25
|
+
@JoinColumn({ name: 'department_id' })
|
|
26
|
+
department?: Departments;
|
|
27
|
+
|
|
28
|
+
@ManyToOne(() => DocumentFolder, { nullable: true })
|
|
29
|
+
@JoinColumn({ name: 'parent_folder_id' })
|
|
30
|
+
parentFolder?: DocumentFolder;
|
|
31
|
+
|
|
32
|
+
@OneToMany(() => DocumentFolder, folder => folder.parentFolder)
|
|
33
|
+
subFolders?: DocumentFolder[];
|
|
34
|
+
|
|
35
|
+
@OneToMany(() => Document, document => document.folder)
|
|
36
|
+
documents?: Document[];
|
|
37
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
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
|
+
import { DocumentType } from './DocumentTypeModel';
|
|
6
|
+
import { DocumentPermission } from './DocumentPermissionModel';
|
|
7
|
+
import { DocumentAuditLog } from './DocumentAuditLogModel';
|
|
8
|
+
|
|
9
|
+
@Entity({ name: 'documents' })
|
|
10
|
+
export class Document extends BaseModel {
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'varchar', length: 200, nullable: false })
|
|
13
|
+
title: string;
|
|
14
|
+
|
|
15
|
+
@Column({ type: 'integer', nullable: false })
|
|
16
|
+
department_id: number;
|
|
17
|
+
|
|
18
|
+
@Column({ type: 'integer', nullable: false })
|
|
19
|
+
document_type_id: number;
|
|
20
|
+
|
|
21
|
+
@Column({ type: 'integer', nullable: true })
|
|
22
|
+
folder_id?: number;
|
|
23
|
+
|
|
24
|
+
@Column({ type: 'varchar', length: 255, nullable: false })
|
|
25
|
+
mongodb_file_id: string;
|
|
26
|
+
|
|
27
|
+
@Column({ type: 'varchar', length: 255, nullable: false })
|
|
28
|
+
file_name: string;
|
|
29
|
+
|
|
30
|
+
@Column({ type: 'bigint', nullable: false })
|
|
31
|
+
file_size: number;
|
|
32
|
+
|
|
33
|
+
@Column({ type: 'varchar', length: 100, nullable: true })
|
|
34
|
+
file_type?: string;
|
|
35
|
+
|
|
36
|
+
@Column({ type: 'integer', nullable: false, default: 1 })
|
|
37
|
+
version: number;
|
|
38
|
+
|
|
39
|
+
@Column({ type: 'text', nullable: true })
|
|
40
|
+
description?: string;
|
|
41
|
+
|
|
42
|
+
@Column({ type: 'boolean', nullable: false, default: false })
|
|
43
|
+
is_sensitive: boolean;
|
|
44
|
+
|
|
45
|
+
@Column({ type: 'boolean', nullable: false, default: true })
|
|
46
|
+
is_active: boolean;
|
|
47
|
+
|
|
48
|
+
@ManyToOne(() => Departments)
|
|
49
|
+
@JoinColumn({ name: 'department_id' })
|
|
50
|
+
department?: Departments;
|
|
51
|
+
|
|
52
|
+
@ManyToOne(() => DocumentType)
|
|
53
|
+
@JoinColumn({ name: 'document_type_id' })
|
|
54
|
+
documentType?: DocumentType;
|
|
55
|
+
|
|
56
|
+
@ManyToOne(() => DocumentFolder, { nullable: true })
|
|
57
|
+
@JoinColumn({ name: 'folder_id' })
|
|
58
|
+
folder?: DocumentFolder;
|
|
59
|
+
|
|
60
|
+
@OneToMany(() => DocumentPermission, permission => permission.document)
|
|
61
|
+
permissions?: DocumentPermission[];
|
|
62
|
+
|
|
63
|
+
@OneToMany(() => DocumentAuditLog, log => log.document)
|
|
64
|
+
auditLogs?: DocumentAuditLog[];
|
|
65
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Column, Entity, ManyToOne, JoinColumn } from "typeorm";
|
|
2
|
+
import { BaseModel } from './BaseModel';
|
|
3
|
+
import { Role } from './role';
|
|
4
|
+
import { Document } from './DocumentModel';
|
|
5
|
+
|
|
6
|
+
@Entity({ name: 'document_permissions' })
|
|
7
|
+
export class DocumentPermission extends BaseModel {
|
|
8
|
+
|
|
9
|
+
@Column({ type: 'integer', nullable: false })
|
|
10
|
+
document_id: number;
|
|
11
|
+
|
|
12
|
+
@Column({ type: 'integer', nullable: false })
|
|
13
|
+
role_id: number;
|
|
14
|
+
|
|
15
|
+
@Column({
|
|
16
|
+
type: 'varchar',
|
|
17
|
+
length: 50,
|
|
18
|
+
nullable: false
|
|
19
|
+
})
|
|
20
|
+
permission_type: string;
|
|
21
|
+
|
|
22
|
+
@Column({ type: 'boolean', nullable: false, default: true })
|
|
23
|
+
is_active: boolean;
|
|
24
|
+
|
|
25
|
+
@ManyToOne(() => Document)
|
|
26
|
+
@JoinColumn({ name: 'document_id' })
|
|
27
|
+
document?: Document;
|
|
28
|
+
|
|
29
|
+
@ManyToOne(() => Role)
|
|
30
|
+
@JoinColumn({ name: 'role_id' })
|
|
31
|
+
role?: Role;
|
|
32
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Column, Entity, OneToMany } from "typeorm";
|
|
2
|
+
import { BaseModel } from './BaseModel';
|
|
3
|
+
import { Document } from './DocumentModel';
|
|
4
|
+
|
|
5
|
+
@Entity({ name: 'document_types' })
|
|
6
|
+
export class DocumentType extends BaseModel {
|
|
7
|
+
|
|
8
|
+
@Column({ type: 'varchar', length: 100, nullable: false, unique: true })
|
|
9
|
+
name: string;
|
|
10
|
+
|
|
11
|
+
@Column({ type: 'text', nullable: true })
|
|
12
|
+
description?: string;
|
|
13
|
+
|
|
14
|
+
@Column({ type: 'boolean', nullable: false, default: true })
|
|
15
|
+
is_active: boolean;
|
|
16
|
+
|
|
17
|
+
@OneToMany(() => Document, document => document.documentType)
|
|
18
|
+
documents?: Document[];
|
|
19
|
+
}
|