@platform-modules/civil-aviation-authority 2.3.161 → 2.3.166

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 (59) hide show
  1. package/.env +17 -9
  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/ITRequestAttachmentModel.d.ts +3 -1
  9. package/dist/models/ITRequestAttachmentModel.js +7 -2
  10. package/dist/models/ITRequestChatModel.d.ts +9 -0
  11. package/dist/models/ITRequestChatModel.js +14 -1
  12. package/dist/models/PermissionModel.d.ts +18 -0
  13. package/dist/models/PermissionModel.js +68 -0
  14. package/dist/models/UUIDBaseModel.d.ts +14 -0
  15. package/dist/models/UUIDBaseModel.js +66 -0
  16. package/package.json +1 -1
  17. package/src/models/AccommodationApprovalModel.ts +8 -8
  18. package/src/models/AccommodationRequestModel.ts +8 -8
  19. package/src/models/AnnualIncrementRequestEmployeeModel.ts +65 -65
  20. package/src/models/AnnualIncrementRequestModel.ts +25 -25
  21. package/src/models/AnnualTrainingPlanRequestModel.ts +153 -153
  22. package/src/models/AppealAgainstAdministrativeDecisionRequestModel.ts +23 -23
  23. package/src/models/CAAServices.ts +33 -33
  24. package/src/models/CAASubServices.ts +33 -33
  25. package/src/models/CAIRatingMasterModel.ts +39 -39
  26. package/src/models/CSRMBusinessImpactRatingMasterModel.ts +25 -25
  27. package/src/models/CSRMLikelihoodMasterModel.ts +25 -25
  28. package/src/models/CashAllowanceLeaveRequestModel.ts +11 -11
  29. package/src/models/CyberSecurityAuditRequestModel.ts +32 -32
  30. package/src/models/DepartmentsModel.ts +25 -25
  31. package/src/models/DocumentDriveModel.ts +28 -28
  32. package/src/models/DocumentFolderModel.ts +45 -45
  33. package/src/models/HousingContractCancelChatModel.ts +56 -56
  34. package/src/models/HousingContractRenewalChatModel.ts +59 -59
  35. package/src/models/HrServiceRequestModel.ts +193 -193
  36. package/src/models/ITRequestAttachmentModel.ts +7 -1
  37. package/src/models/ITRequestChatModel.ts +12 -0
  38. package/src/models/ItApprovalsModel.ts +84 -84
  39. package/src/models/ItWorkflowModel.ts +55 -55
  40. package/src/models/MissionTravelPassportExpiryNotificationConfigModel.ts +36 -36
  41. package/src/models/PerformanceCyclePeriodModel.ts +26 -26
  42. package/src/models/PerformanceGoalMasterModel.ts +27 -27
  43. package/src/models/PerformanceManagementRequestGoalModel.ts +46 -46
  44. package/src/models/PerformanceManagementRequestModel.ts +14 -14
  45. package/src/models/PromotionRequestModel.ts +11 -11
  46. package/src/models/ResidentialUnitRentalChatModel.ts +56 -56
  47. package/src/models/ServicesNotificationConfigModel.ts +55 -55
  48. package/src/models/StudyLeaveRequestModel.ts +144 -144
  49. package/src/models/TrainingRoomBookingRequestModel.ts +142 -142
  50. package/src/models/TrainingRoomNotificationConfigModel.ts +30 -30
  51. package/src/models/UserSkillModel.ts +56 -56
  52. package/dist/models/ITApprovalSettings.d.ts +0 -7
  53. package/dist/models/ITApprovalSettings.js +0 -40
  54. package/dist/models/ITServicesTypesMuscatModel.d.ts +0 -6
  55. package/dist/models/ITServicesTypesMuscatModel.js +0 -34
  56. package/dist/models/ITServicesTypesSalalahModel.d.ts +0 -6
  57. package/dist/models/ITServicesTypesSalalahModel.js +0 -34
  58. package/dist/models/Workflows.d.ts +0 -9
  59. package/dist/models/Workflows.js +0 -31
package/.env CHANGED
@@ -1,12 +1,20 @@
1
- # DB_HOST=164.52.222.169
1
+ DB_HOST=164.52.222.169
2
+ DB_PORT=5432
3
+ DB_USER=postgres_admin_user
4
+ DB_PASS=pg_admin_user_pwd_caa_fa_$%^&OIukhjgcvbn
5
+ DB_NAME=CAA
6
+
7
+ # DB_HOST=216.48.187.46
2
8
  # DB_PORT=5432
3
- # DB_USER=postgres_admin_user
4
- # DB_PASS=pg_admin_user_pwd_caa_fa_$%^&OIukhjgcvbn
5
- # DB_NAME=CAA
9
+ # DB_USER=adminuser
10
+ # DB_PASS=postgres_caa_fm_qa_34567
11
+ # DB_NAME=CAA_QA
6
12
 
7
13
 
8
- DB_HOST=localhost
9
- DB_PORT=5432
10
- DB_USER=postgres
11
- DB_PASS=stevejobs
12
- DB_NAME=CAA
14
+
15
+
16
+ # DB_HOST=localhost
17
+ # DB_PORT=5432
18
+ # DB_USER=postgres
19
+ # DB_PASS=stevejobs
20
+ # DB_NAME=CAA
@@ -0,0 +1,45 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ import { UUIDBaseModel } from './UUIDBaseModel';
3
+ export declare enum DocumentType {
4
+ POLICY = "policy",
5
+ PROCEDURE = "procedure",
6
+ MANUAL = "manual",
7
+ TEMPLATE = "template",
8
+ REPORT = "report"
9
+ }
10
+ export declare enum DocumentStatus {
11
+ ACTIVE = "active",
12
+ ARCHIVED = "archived",
13
+ DRAFT = "draft"
14
+ }
15
+ export declare enum AccessLevel {
16
+ GENERAL = "general",
17
+ RESTRICTED = "restricted"
18
+ }
19
+ export declare class DocumentMetadata extends UUIDBaseModel {
20
+ title: string;
21
+ description?: string;
22
+ original_name: string;
23
+ mime_type: string;
24
+ size: number;
25
+ mongodb_file_id: string;
26
+ document_type: DocumentType;
27
+ access_level: AccessLevel;
28
+ status: DocumentStatus;
29
+ version: string;
30
+ tags: string[];
31
+ is_sensitive: boolean;
32
+ department: Departments;
33
+ department_id: number;
34
+ folder_id?: string | null;
35
+ folder_path: string;
36
+ uploaded_by: string;
37
+ uploaded_by_name?: string;
38
+ authorized_person?: string;
39
+ allowed_roles: string[];
40
+ allowed_users: string[];
41
+ download_count: number;
42
+ last_accessed_at?: Date;
43
+ metadata?: Record<string, any>;
44
+ constructor(title: string, original_name: string, mime_type: string, size: number, mongodb_file_id: string, document_type: DocumentType, department_id: number, uploaded_by: string, access_level?: AccessLevel, status?: DocumentStatus, version?: string, folder_path?: string, created_by?: string, description?: string, folder_id?: string | null, uploaded_by_name?: string, authorized_person?: string, tags?: string[], allowed_roles?: string[], allowed_users?: string[], is_sensitive?: boolean, download_count?: number, last_accessed_at?: Date, metadata?: Record<string, any>);
45
+ }
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DocumentMetadata = exports.AccessLevel = exports.DocumentStatus = exports.DocumentType = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const DepartmentsModel_1 = require("./DepartmentsModel");
15
+ const UUIDBaseModel_1 = require("./UUIDBaseModel");
16
+ var DocumentType;
17
+ (function (DocumentType) {
18
+ DocumentType["POLICY"] = "policy";
19
+ DocumentType["PROCEDURE"] = "procedure";
20
+ DocumentType["MANUAL"] = "manual";
21
+ DocumentType["TEMPLATE"] = "template";
22
+ DocumentType["REPORT"] = "report";
23
+ })(DocumentType || (exports.DocumentType = DocumentType = {}));
24
+ var DocumentStatus;
25
+ (function (DocumentStatus) {
26
+ DocumentStatus["ACTIVE"] = "active";
27
+ DocumentStatus["ARCHIVED"] = "archived";
28
+ DocumentStatus["DRAFT"] = "draft";
29
+ })(DocumentStatus || (exports.DocumentStatus = DocumentStatus = {}));
30
+ var AccessLevel;
31
+ (function (AccessLevel) {
32
+ AccessLevel["GENERAL"] = "general";
33
+ AccessLevel["RESTRICTED"] = "restricted";
34
+ })(AccessLevel || (exports.AccessLevel = AccessLevel = {}));
35
+ let DocumentMetadata = class DocumentMetadata extends UUIDBaseModel_1.UUIDBaseModel {
36
+ constructor(title, original_name, mime_type, size, mongodb_file_id, document_type, department_id, uploaded_by, access_level = AccessLevel.GENERAL, status = DocumentStatus.ACTIVE, version = '1.0.0', folder_path = '/', created_by, description, folder_id, uploaded_by_name, authorized_person, tags, allowed_roles, allowed_users, is_sensitive = false, download_count = 0, last_accessed_at, metadata) {
37
+ super();
38
+ this.title = title;
39
+ this.original_name = original_name;
40
+ this.mime_type = mime_type;
41
+ this.size = size;
42
+ this.mongodb_file_id = mongodb_file_id;
43
+ this.document_type = document_type;
44
+ this.department_id = department_id;
45
+ this.uploaded_by = uploaded_by;
46
+ this.access_level = access_level;
47
+ this.status = status;
48
+ this.version = version;
49
+ this.folder_path = folder_path;
50
+ this.description = description;
51
+ this.folder_id = folder_id;
52
+ this.uploaded_by_name = uploaded_by_name;
53
+ this.authorized_person = authorized_person;
54
+ this.tags = tags || [];
55
+ this.allowed_roles = allowed_roles || [];
56
+ this.allowed_users = allowed_users || [];
57
+ this.is_sensitive = is_sensitive;
58
+ this.download_count = download_count;
59
+ this.last_accessed_at = last_accessed_at;
60
+ this.metadata = metadata;
61
+ if (created_by) {
62
+ this.created_by = created_by;
63
+ }
64
+ }
65
+ };
66
+ exports.DocumentMetadata = DocumentMetadata;
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ type: 'varchar', length: 500 }),
69
+ (0, typeorm_1.Index)(),
70
+ __metadata("design:type", String)
71
+ ], DocumentMetadata.prototype, "title", void 0);
72
+ __decorate([
73
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
74
+ __metadata("design:type", String)
75
+ ], DocumentMetadata.prototype, "description", void 0);
76
+ __decorate([
77
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
78
+ __metadata("design:type", String)
79
+ ], DocumentMetadata.prototype, "original_name", void 0);
80
+ __decorate([
81
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100 }),
82
+ __metadata("design:type", String)
83
+ ], DocumentMetadata.prototype, "mime_type", void 0);
84
+ __decorate([
85
+ (0, typeorm_1.Column)({ type: 'bigint' }),
86
+ __metadata("design:type", Number)
87
+ ], DocumentMetadata.prototype, "size", void 0);
88
+ __decorate([
89
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, unique: true }),
90
+ __metadata("design:type", String)
91
+ ], DocumentMetadata.prototype, "mongodb_file_id", void 0);
92
+ __decorate([
93
+ (0, typeorm_1.Column)({ type: 'enum', enum: DocumentType }),
94
+ (0, typeorm_1.Index)(),
95
+ __metadata("design:type", String)
96
+ ], DocumentMetadata.prototype, "document_type", void 0);
97
+ __decorate([
98
+ (0, typeorm_1.Column)({ type: 'enum', enum: AccessLevel, default: AccessLevel.GENERAL }),
99
+ (0, typeorm_1.Index)(),
100
+ __metadata("design:type", String)
101
+ ], DocumentMetadata.prototype, "access_level", void 0);
102
+ __decorate([
103
+ (0, typeorm_1.Column)({ type: 'enum', enum: DocumentStatus, default: DocumentStatus.ACTIVE }),
104
+ (0, typeorm_1.Index)(),
105
+ __metadata("design:type", String)
106
+ ], DocumentMetadata.prototype, "status", void 0);
107
+ __decorate([
108
+ (0, typeorm_1.Column)({ type: 'varchar', length: 50, default: '1.0.0' }),
109
+ __metadata("design:type", String)
110
+ ], DocumentMetadata.prototype, "version", void 0);
111
+ __decorate([
112
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
113
+ __metadata("design:type", Array)
114
+ ], DocumentMetadata.prototype, "tags", void 0);
115
+ __decorate([
116
+ (0, typeorm_1.Column)({ type: 'boolean', default: false }),
117
+ __metadata("design:type", Boolean)
118
+ ], DocumentMetadata.prototype, "is_sensitive", void 0);
119
+ __decorate([
120
+ (0, typeorm_1.ManyToOne)('Departments', { eager: true }),
121
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
122
+ __metadata("design:type", DepartmentsModel_1.Departments)
123
+ ], DocumentMetadata.prototype, "department", void 0);
124
+ __decorate([
125
+ (0, typeorm_1.Column)({ type: 'integer' }),
126
+ __metadata("design:type", Number)
127
+ ], DocumentMetadata.prototype, "department_id", void 0);
128
+ __decorate([
129
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
130
+ __metadata("design:type", Object)
131
+ ], DocumentMetadata.prototype, "folder_id", void 0);
132
+ __decorate([
133
+ (0, typeorm_1.Column)({ type: 'varchar', length: 500, default: '/' }),
134
+ __metadata("design:type", String)
135
+ ], DocumentMetadata.prototype, "folder_path", void 0);
136
+ __decorate([
137
+ (0, typeorm_1.Column)({ type: 'uuid' }),
138
+ __metadata("design:type", String)
139
+ ], DocumentMetadata.prototype, "uploaded_by", void 0);
140
+ __decorate([
141
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
142
+ __metadata("design:type", String)
143
+ ], DocumentMetadata.prototype, "uploaded_by_name", void 0);
144
+ __decorate([
145
+ (0, typeorm_1.Column)({ type: 'uuid', nullable: true }),
146
+ __metadata("design:type", String)
147
+ ], DocumentMetadata.prototype, "authorized_person", void 0);
148
+ __decorate([
149
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
150
+ __metadata("design:type", Array)
151
+ ], DocumentMetadata.prototype, "allowed_roles", void 0);
152
+ __decorate([
153
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
154
+ __metadata("design:type", Array)
155
+ ], DocumentMetadata.prototype, "allowed_users", void 0);
156
+ __decorate([
157
+ (0, typeorm_1.Column)({ type: 'int', default: 0 }),
158
+ __metadata("design:type", Number)
159
+ ], DocumentMetadata.prototype, "download_count", void 0);
160
+ __decorate([
161
+ (0, typeorm_1.Column)({ type: 'timestamp', nullable: true }),
162
+ __metadata("design:type", Date)
163
+ ], DocumentMetadata.prototype, "last_accessed_at", void 0);
164
+ __decorate([
165
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
166
+ __metadata("design:type", Object)
167
+ ], DocumentMetadata.prototype, "metadata", void 0);
168
+ exports.DocumentMetadata = DocumentMetadata = __decorate([
169
+ (0, typeorm_1.Entity)({ name: 'document_metadata' }),
170
+ __metadata("design:paramtypes", [String, String, String, Number, String, String, Number, String, String, String, String, String, String, String, Object, String, String, Array, Array, Array, Boolean, Number, Date, Object])
171
+ ], DocumentMetadata);
@@ -0,0 +1,13 @@
1
+ import { BaseModel } from './BaseModel';
2
+ /**
3
+ * Documentation Service specific department configuration
4
+ * Links departments with authorized persons for document management
5
+ */
6
+ export declare class DocumentationDepartments extends BaseModel {
7
+ department_id: number;
8
+ authorized_person_id: string;
9
+ authorized_person_name?: string;
10
+ authorized_person_email?: string;
11
+ is_active: boolean;
12
+ constructor(department_id: number, authorized_person_id: string, authorized_person_name: string, authorized_person_email: string, is_active?: boolean);
13
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DocumentationDepartments = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ /**
16
+ * Documentation Service specific department configuration
17
+ * Links departments with authorized persons for document management
18
+ */
19
+ let DocumentationDepartments = class DocumentationDepartments extends BaseModel_1.BaseModel {
20
+ constructor(department_id, authorized_person_id, authorized_person_name, authorized_person_email, is_active = true) {
21
+ super();
22
+ this.department_id = department_id;
23
+ this.authorized_person_id = authorized_person_id;
24
+ this.authorized_person_name = authorized_person_name;
25
+ this.authorized_person_email = authorized_person_email;
26
+ this.is_active = is_active;
27
+ }
28
+ };
29
+ exports.DocumentationDepartments = DocumentationDepartments;
30
+ __decorate([
31
+ (0, typeorm_1.Column)({ type: 'integer' }),
32
+ __metadata("design:type", Number)
33
+ ], DocumentationDepartments.prototype, "department_id", void 0);
34
+ __decorate([
35
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
36
+ __metadata("design:type", String)
37
+ ], DocumentationDepartments.prototype, "authorized_person_id", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
40
+ __metadata("design:type", String)
41
+ ], DocumentationDepartments.prototype, "authorized_person_name", void 0);
42
+ __decorate([
43
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
44
+ __metadata("design:type", String)
45
+ ], DocumentationDepartments.prototype, "authorized_person_email", void 0);
46
+ __decorate([
47
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
48
+ __metadata("design:type", Boolean)
49
+ ], DocumentationDepartments.prototype, "is_active", void 0);
50
+ exports.DocumentationDepartments = DocumentationDepartments = __decorate([
51
+ (0, typeorm_1.Entity)({ name: 'documentation_departments' }),
52
+ __metadata("design:paramtypes", [Number, String, String, String, Boolean])
53
+ ], DocumentationDepartments);
@@ -0,0 +1,16 @@
1
+ import { Departments } from './DepartmentsModel';
2
+ import { UUIDBaseModel } from './UUIDBaseModel';
3
+ export declare class Folder extends UUIDBaseModel {
4
+ name: string;
5
+ path: string;
6
+ parent_path?: string;
7
+ department: Departments;
8
+ department_id: number;
9
+ description?: string;
10
+ access_level: 'general' | 'restricted';
11
+ allowed_roles: string[];
12
+ allowed_users: string[];
13
+ created_by_name?: string;
14
+ is_active: boolean;
15
+ constructor(name: string, path: string, department_id: number, created_by: string, access_level?: 'general' | 'restricted', parent_path?: string, description?: string, created_by_name?: string, allowed_roles?: string[], allowed_users?: string[], is_active?: boolean);
16
+ }
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Folder = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const DepartmentsModel_1 = require("./DepartmentsModel");
15
+ const UUIDBaseModel_1 = require("./UUIDBaseModel");
16
+ // Note: DocumentMetadata import removed to avoid circular dependency
17
+ // Use lazy loading or query builder when needed
18
+ let Folder = class Folder extends UUIDBaseModel_1.UUIDBaseModel {
19
+ constructor(name, path, department_id, created_by, access_level = 'general', parent_path, description, created_by_name, allowed_roles, allowed_users, is_active = true) {
20
+ super();
21
+ this.name = name;
22
+ this.path = path;
23
+ this.department_id = department_id;
24
+ this.created_by = created_by;
25
+ this.access_level = access_level;
26
+ this.parent_path = parent_path;
27
+ this.description = description;
28
+ this.created_by_name = created_by_name;
29
+ this.allowed_roles = allowed_roles || [];
30
+ this.allowed_users = allowed_users || [];
31
+ this.is_active = is_active;
32
+ }
33
+ };
34
+ exports.Folder = Folder;
35
+ __decorate([
36
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
37
+ __metadata("design:type", String)
38
+ ], Folder.prototype, "name", void 0);
39
+ __decorate([
40
+ (0, typeorm_1.Column)({ type: 'varchar', length: 1000 }),
41
+ __metadata("design:type", String)
42
+ ], Folder.prototype, "path", void 0);
43
+ __decorate([
44
+ (0, typeorm_1.Column)({ type: 'varchar', length: 1000, nullable: true }),
45
+ __metadata("design:type", String)
46
+ ], Folder.prototype, "parent_path", void 0);
47
+ __decorate([
48
+ (0, typeorm_1.ManyToOne)('Departments', { eager: true }),
49
+ (0, typeorm_1.JoinColumn)({ name: 'department_id' }),
50
+ __metadata("design:type", DepartmentsModel_1.Departments)
51
+ ], Folder.prototype, "department", void 0);
52
+ __decorate([
53
+ (0, typeorm_1.Column)({ type: 'integer' }),
54
+ __metadata("design:type", Number)
55
+ ], Folder.prototype, "department_id", void 0);
56
+ __decorate([
57
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
58
+ __metadata("design:type", String)
59
+ ], Folder.prototype, "description", void 0);
60
+ __decorate([
61
+ (0, typeorm_1.Column)({ type: 'enum', enum: ['general', 'restricted'], default: 'general' }),
62
+ (0, typeorm_1.Index)(),
63
+ __metadata("design:type", String)
64
+ ], Folder.prototype, "access_level", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
67
+ __metadata("design:type", Array)
68
+ ], Folder.prototype, "allowed_roles", void 0);
69
+ __decorate([
70
+ (0, typeorm_1.Column)({ type: 'text', array: true, default: [] }),
71
+ __metadata("design:type", Array)
72
+ ], Folder.prototype, "allowed_users", void 0);
73
+ __decorate([
74
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: true }),
75
+ __metadata("design:type", String)
76
+ ], Folder.prototype, "created_by_name", void 0);
77
+ __decorate([
78
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
79
+ (0, typeorm_1.Index)(),
80
+ __metadata("design:type", Boolean)
81
+ ], Folder.prototype, "is_active", void 0);
82
+ exports.Folder = Folder = __decorate([
83
+ (0, typeorm_1.Entity)({ name: 'folders' }),
84
+ __metadata("design:paramtypes", [String, String, Number, String, String, String, String, String, Array, Array, Boolean])
85
+ ], Folder);
@@ -6,6 +6,8 @@ export declare class ITRequestAttachment extends BaseModel {
6
6
  request: ITHelpDeskRequests;
7
7
  service_id: number | null;
8
8
  sub_service_id: number | null;
9
+ /** Optional link to it_request_chat when attachment was created from a media chat message */
10
+ chat_id: number | null;
9
11
  uploaded_by: number;
10
12
  user: User;
11
13
  file_url: string;
@@ -13,5 +15,5 @@ export declare class ITRequestAttachment extends BaseModel {
13
15
  file_type: string;
14
16
  file_size: number | null;
15
17
  description: string;
16
- constructor(request_id: number, uploaded_by: number, file_url: string, file_name?: string, file_type?: string, file_size?: number, description?: string, service_id?: number | null, sub_service_id?: number | null);
18
+ constructor(request_id: number, uploaded_by: number, file_url: string, file_name?: string, file_type?: string, file_size?: number, description?: string, service_id?: number | null, sub_service_id?: number | null, chat_id?: number | null);
17
19
  }
@@ -15,7 +15,7 @@ const BaseModel_1 = require("./BaseModel");
15
15
  const ITHelpDeskModel_1 = require("./ITHelpDeskModel");
16
16
  const user_1 = require("./user");
17
17
  let ITRequestAttachment = class ITRequestAttachment extends BaseModel_1.BaseModel {
18
- constructor(request_id, uploaded_by, file_url, file_name, file_type, file_size, description, service_id, sub_service_id) {
18
+ constructor(request_id, uploaded_by, file_url, file_name, file_type, file_size, description, service_id, sub_service_id, chat_id) {
19
19
  super();
20
20
  this.request_id = request_id;
21
21
  this.uploaded_by = uploaded_by;
@@ -26,6 +26,7 @@ let ITRequestAttachment = class ITRequestAttachment extends BaseModel_1.BaseMode
26
26
  this.description = description || '';
27
27
  this.service_id = service_id ?? null;
28
28
  this.sub_service_id = sub_service_id ?? null;
29
+ this.chat_id = chat_id ?? null;
29
30
  }
30
31
  };
31
32
  exports.ITRequestAttachment = ITRequestAttachment;
@@ -46,6 +47,10 @@ __decorate([
46
47
  (0, typeorm_1.Column)({ type: 'integer', nullable: true }),
47
48
  __metadata("design:type", Object)
48
49
  ], ITRequestAttachment.prototype, "sub_service_id", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.Column)({ type: 'integer', nullable: true }),
52
+ __metadata("design:type", Object)
53
+ ], ITRequestAttachment.prototype, "chat_id", void 0);
49
54
  __decorate([
50
55
  (0, typeorm_1.Column)({ type: 'integer', nullable: false }),
51
56
  __metadata("design:type", Number)
@@ -77,5 +82,5 @@ __decorate([
77
82
  ], ITRequestAttachment.prototype, "description", void 0);
78
83
  exports.ITRequestAttachment = ITRequestAttachment = __decorate([
79
84
  (0, typeorm_1.Entity)({ name: 'it_request_attachments' }),
80
- __metadata("design:paramtypes", [Number, Number, String, String, String, Number, String, Object, Object])
85
+ __metadata("design:paramtypes", [Number, Number, String, String, String, Number, String, Object, Object, Object])
81
86
  ], ITRequestAttachment);
@@ -1,6 +1,14 @@
1
1
  import { BaseModel } from './BaseModel';
2
2
  import { ITHelpDeskRequests } from './ITHelpDeskModel';
3
3
  import { User } from './user';
4
+ /** Same set as hotel / logistics / event-support chat */
5
+ export declare enum ITHelpDeskMessageType {
6
+ TEXT = "text",
7
+ IMAGE = "image",
8
+ VIDEO = "video",
9
+ FILE = "file",
10
+ LINK = "link"
11
+ }
4
12
  export declare class ITRequestChat extends BaseModel {
5
13
  request_id: number;
6
14
  request: ITHelpDeskRequests;
@@ -10,6 +18,7 @@ export declare class ITRequestChat extends BaseModel {
10
18
  user: User;
11
19
  role_id: number | null;
12
20
  message: string;
21
+ message_type: string;
13
22
  status: string | null;
14
23
  is_internal: boolean;
15
24
  constructor(request_id: number, user_id: number, message: string, is_internal?: boolean, service_id?: number | null, sub_service_id?: number | null, role_id?: number | null, status?: string | null);
@@ -9,11 +9,20 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ITRequestChat = void 0;
12
+ exports.ITRequestChat = exports.ITHelpDeskMessageType = void 0;
13
13
  const typeorm_1 = require("typeorm");
14
14
  const BaseModel_1 = require("./BaseModel");
15
15
  const ITHelpDeskModel_1 = require("./ITHelpDeskModel");
16
16
  const user_1 = require("./user");
17
+ /** Same set as hotel / logistics / event-support chat */
18
+ var ITHelpDeskMessageType;
19
+ (function (ITHelpDeskMessageType) {
20
+ ITHelpDeskMessageType["TEXT"] = "text";
21
+ ITHelpDeskMessageType["IMAGE"] = "image";
22
+ ITHelpDeskMessageType["VIDEO"] = "video";
23
+ ITHelpDeskMessageType["FILE"] = "file";
24
+ ITHelpDeskMessageType["LINK"] = "link";
25
+ })(ITHelpDeskMessageType || (exports.ITHelpDeskMessageType = ITHelpDeskMessageType = {}));
17
26
  let ITRequestChat = class ITRequestChat extends BaseModel_1.BaseModel {
18
27
  constructor(request_id, user_id, message, is_internal, service_id, sub_service_id, role_id, status) {
19
28
  super();
@@ -62,6 +71,10 @@ __decorate([
62
71
  (0, typeorm_1.Column)({ type: 'text', nullable: false }),
63
72
  __metadata("design:type", String)
64
73
  ], ITRequestChat.prototype, "message", void 0);
74
+ __decorate([
75
+ (0, typeorm_1.Column)({ type: 'varchar', length: 20, nullable: false, default: ITHelpDeskMessageType.TEXT }),
76
+ __metadata("design:type", String)
77
+ ], ITRequestChat.prototype, "message_type", void 0);
65
78
  __decorate([
66
79
  (0, typeorm_1.Column)({ type: 'text', nullable: true }),
67
80
  __metadata("design:type", Object)
@@ -0,0 +1,18 @@
1
+ import { Role } from './role';
2
+ import { UUIDBaseModel } from './UUIDBaseModel';
3
+ export declare enum PermissionType {
4
+ VIEW = "view",
5
+ UPLOAD = "upload",
6
+ UPDATE = "update",
7
+ DELETE = "delete",
8
+ PUBLISH = "publish"
9
+ }
10
+ export declare class Permission extends UUIDBaseModel {
11
+ name: string;
12
+ code: string;
13
+ type: PermissionType;
14
+ description?: string;
15
+ is_active: boolean;
16
+ roles: Role[];
17
+ constructor(name: string, code: string, type: PermissionType, created_by: string, description?: string, is_active?: boolean);
18
+ }
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Permission = exports.PermissionType = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const role_1 = require("./role");
15
+ const UUIDBaseModel_1 = require("./UUIDBaseModel");
16
+ var PermissionType;
17
+ (function (PermissionType) {
18
+ PermissionType["VIEW"] = "view";
19
+ PermissionType["UPLOAD"] = "upload";
20
+ PermissionType["UPDATE"] = "update";
21
+ PermissionType["DELETE"] = "delete";
22
+ PermissionType["PUBLISH"] = "publish";
23
+ })(PermissionType || (exports.PermissionType = PermissionType = {}));
24
+ let Permission = class Permission extends UUIDBaseModel_1.UUIDBaseModel {
25
+ constructor(name, code, type, created_by, description, is_active = true) {
26
+ super();
27
+ this.name = name;
28
+ this.code = code;
29
+ this.type = type;
30
+ this.created_by = created_by;
31
+ this.description = description;
32
+ this.is_active = is_active;
33
+ }
34
+ };
35
+ exports.Permission = Permission;
36
+ __decorate([
37
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100, unique: true }),
38
+ __metadata("design:type", String)
39
+ ], Permission.prototype, "name", void 0);
40
+ __decorate([
41
+ (0, typeorm_1.Column)({ type: 'varchar', length: 50, unique: true }),
42
+ __metadata("design:type", String)
43
+ ], Permission.prototype, "code", void 0);
44
+ __decorate([
45
+ (0, typeorm_1.Column)({ type: 'enum', enum: PermissionType }),
46
+ __metadata("design:type", String)
47
+ ], Permission.prototype, "type", void 0);
48
+ __decorate([
49
+ (0, typeorm_1.Column)({ type: 'text', nullable: true }),
50
+ __metadata("design:type", String)
51
+ ], Permission.prototype, "description", void 0);
52
+ __decorate([
53
+ (0, typeorm_1.Column)({ type: 'boolean', default: true }),
54
+ __metadata("design:type", Boolean)
55
+ ], Permission.prototype, "is_active", void 0);
56
+ __decorate([
57
+ (0, typeorm_1.ManyToMany)(() => role_1.Role),
58
+ (0, typeorm_1.JoinTable)({
59
+ name: 'role_permissions',
60
+ joinColumn: { name: 'permission_id', referencedColumnName: 'id' },
61
+ inverseJoinColumn: { name: 'role_id', referencedColumnName: 'id' },
62
+ }),
63
+ __metadata("design:type", Array)
64
+ ], Permission.prototype, "roles", void 0);
65
+ exports.Permission = Permission = __decorate([
66
+ (0, typeorm_1.Entity)({ name: 'permissions' }),
67
+ __metadata("design:paramtypes", [String, String, String, String, String, Boolean])
68
+ ], Permission);
@@ -0,0 +1,14 @@
1
+ export declare abstract class UUIDModel0 {
2
+ jsonIgnore: string[];
3
+ created_by?: string;
4
+ created_at?: Date;
5
+ updated_by?: string;
6
+ updated_at?: Date;
7
+ insertCreated(): void;
8
+ is_deleted?: boolean;
9
+ constructor();
10
+ }
11
+ export declare abstract class UUIDBaseModel extends UUIDModel0 {
12
+ id: string;
13
+ constructor();
14
+ }