@platform-modules/civil-aviation-authority 2.0.25 → 2.0.26

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 (37) hide show
  1. package/dist/data-source.js +9 -7
  2. package/dist/index.d.ts +4 -0
  3. package/dist/index.js +5 -4
  4. package/dist/models/HotelreservationModal.d.ts +30 -0
  5. package/dist/models/HotelreservationModal.js +119 -0
  6. package/dist/models/HotelreservationModel.d.ts +44 -0
  7. package/dist/models/HotelreservationModel.js +171 -0
  8. package/dist/models/ITHelpDeskModel.d.ts +4 -1
  9. package/dist/models/ITHelpDeskModel.js +17 -2
  10. package/dist/models/ItApprovalsModel.d.ts +2 -2
  11. package/dist/models/ItApprovalsModel.js +2 -2
  12. package/dist/models/ItWorkflowModel.d.ts +1 -2
  13. package/dist/models/ItWorkflowModel.js +2 -7
  14. package/dist/models/LogisticsApprovalModel.d.ts +1 -0
  15. package/dist/models/LogisticsApprovalModel.js +1 -0
  16. package/dist/models/NotificationModel.d.ts +0 -3
  17. package/dist/models/NotificationModel.js +0 -3
  18. package/dist/models/WorkflowTask.d.ts +1 -4
  19. package/dist/models/WorkflowTask.js +2 -17
  20. package/dist/models/user.d.ts +3 -2
  21. package/dist/models/user.js +9 -4
  22. package/package.json +1 -1
  23. package/src/data-source.ts +8 -10
  24. package/src/index.ts +5 -6
  25. package/src/models/HotelreservationModel.ts +159 -0
  26. package/src/models/ITApprovalSettings.ts +29 -0
  27. package/src/models/ITHelpDeskModel.ts +14 -0
  28. package/src/models/ITServicesTypesMuscatModel.ts +22 -0
  29. package/src/models/ITServicesTypesSalalahModel.ts +22 -0
  30. package/src/models/ItApprovalsModel.ts +2 -2
  31. package/src/models/ItWorkflowModel.ts +1 -5
  32. package/src/models/LogisticsForeignVehicleModel.ts +4 -3
  33. package/src/models/NotificationModel.ts +0 -3
  34. package/src/models/WorkflowTask.ts +1 -16
  35. package/src/models/Workflows.ts +40 -0
  36. package/src/models/PortalFeedbackModel.ts +0 -34
  37. package/src/models/feedbackModel.ts +0 -50
@@ -13,14 +13,11 @@ exports.WorkflowTask = void 0;
13
13
  const typeorm_1 = require("typeorm");
14
14
  const BaseModel_1 = require("./BaseModel");
15
15
  let WorkflowTask = class WorkflowTask extends BaseModel_1.BaseModel {
16
- constructor(name, task_id, task_type, service_id, sub_service_id, service_type) {
16
+ constructor(name, task_id, task_type) {
17
17
  super();
18
18
  this.name = name;
19
19
  this.task_id = task_id || 0;
20
20
  this.task_type = task_type || '';
21
- this.service_id = service_id || null;
22
- this.sub_service_id = sub_service_id || null;
23
- this.service_type = service_type || null;
24
21
  }
25
22
  };
26
23
  exports.WorkflowTask = WorkflowTask;
@@ -36,19 +33,7 @@ __decorate([
36
33
  (0, typeorm_1.Column)({ type: 'varchar', length: 200, nullable: true }),
37
34
  __metadata("design:type", String)
38
35
  ], WorkflowTask.prototype, "task_type", void 0);
39
- __decorate([
40
- (0, typeorm_1.Column)({ type: 'int', nullable: true }),
41
- __metadata("design:type", Object)
42
- ], WorkflowTask.prototype, "service_id", void 0);
43
- __decorate([
44
- (0, typeorm_1.Column)({ type: 'int', nullable: true }),
45
- __metadata("design:type", Object)
46
- ], WorkflowTask.prototype, "sub_service_id", void 0);
47
- __decorate([
48
- (0, typeorm_1.Column)({ type: 'varchar', length: 50, nullable: true }),
49
- __metadata("design:type", Object)
50
- ], WorkflowTask.prototype, "service_type", void 0);
51
36
  exports.WorkflowTask = WorkflowTask = __decorate([
52
37
  (0, typeorm_1.Entity)({ name: 'workflow_tasks' }),
53
- __metadata("design:paramtypes", [String, Number, String, Object, Object, Object])
38
+ __metadata("design:paramtypes", [String, Number, String])
54
39
  ], WorkflowTask);
@@ -21,7 +21,7 @@ export declare class User extends BaseModel {
21
21
  mobile?: string;
22
22
  office_number?: string;
23
23
  department?: number;
24
- category?: string;
24
+ category: "CAA" | "Embassy";
25
25
  directorate?: string;
26
26
  section?: number;
27
27
  position?: number;
@@ -34,6 +34,7 @@ export declare class User extends BaseModel {
34
34
  passport_number?: string;
35
35
  personal_email?: string;
36
36
  extension_number?: number;
37
+ fax_number?: string;
37
38
  diplomatic_name?: string;
38
39
  avatar?: string;
39
40
  father_name?: string;
@@ -41,5 +42,5 @@ export declare class User extends BaseModel {
41
42
  children1_name?: string;
42
43
  children2_name?: string;
43
44
  address?: string;
44
- constructor(employee_id?: number, civil_employee_id?: number, employee_name?: string, employee_arabic_name?: string, person_type?: string, date_of_birth?: string, region_of_birth?: string, country_of_birth?: string, date_of_joining?: string, last_promotion_date?: string, gender?: string, qualification?: string, marital_status?: string, nationality?: string, email?: string, blood_type?: string, national_id?: number, manpower_id?: number, mobile?: string, office_number?: string, department?: number, category?: string, directorate?: string, section?: number, position?: number, arabic_position?: string, grade?: number, location?: string, supervisor_emp_id?: number, supervisor_emp_name?: string, passport_number?: string, personal_email?: string, extension_number?: number, diplomatic_name?: string, avatar?: string, father_name?: string, spouse_name?: string, children1_name?: string, children2_name?: string, address?: string);
45
+ constructor(employee_id?: number, civil_employee_id?: number, employee_name?: string, employee_arabic_name?: string, person_type?: string, date_of_birth?: string, region_of_birth?: string, country_of_birth?: string, date_of_joining?: string, last_promotion_date?: string, gender?: string, qualification?: string, marital_status?: string, nationality?: string, email?: string, blood_type?: string, national_id?: number, manpower_id?: number, mobile?: string, office_number?: string, department?: number, category?: "CAA" | "Embassy", directorate?: string, section?: number, position?: number, arabic_position?: string, grade?: number, location?: string, supervisor_emp_id?: number, supervisor_emp_name?: string, passport_number?: string, personal_email?: string, extension_number?: number, fax_number?: string, diplomatic_name?: string, avatar?: string, father_name?: string, spouse_name?: string, children1_name?: string, children2_name?: string, address?: string);
45
46
  }
@@ -13,7 +13,7 @@ exports.User = void 0;
13
13
  const typeorm_1 = require("typeorm");
14
14
  const BaseModel_1 = require("./BaseModel");
15
15
  let User = class User extends BaseModel_1.BaseModel {
16
- constructor(employee_id, civil_employee_id, employee_name, employee_arabic_name, person_type, date_of_birth, region_of_birth, country_of_birth, date_of_joining, last_promotion_date, gender, qualification, marital_status, nationality, email, blood_type, national_id, manpower_id, mobile, office_number, department, category, directorate, section, position, arabic_position, grade, location, supervisor_emp_id, supervisor_emp_name, passport_number, personal_email, extension_number, diplomatic_name, avatar, father_name, spouse_name, children1_name, children2_name, address) {
16
+ constructor(employee_id, civil_employee_id, employee_name, employee_arabic_name, person_type, date_of_birth, region_of_birth, country_of_birth, date_of_joining, last_promotion_date, gender, qualification, marital_status, nationality, email, blood_type, national_id, manpower_id, mobile, office_number, department, category, directorate, section, position, arabic_position, grade, location, supervisor_emp_id, supervisor_emp_name, passport_number, personal_email, extension_number, fax_number, diplomatic_name, avatar, father_name, spouse_name, children1_name, children2_name, address) {
17
17
  super();
18
18
  this.employee_id = employee_id;
19
19
  this.civil_employee_id = civil_employee_id;
@@ -36,7 +36,7 @@ let User = class User extends BaseModel_1.BaseModel {
36
36
  this.mobile = mobile;
37
37
  this.office_number = office_number;
38
38
  this.department = department;
39
- this.category = category;
39
+ this.category = category || "CAA";
40
40
  this.directorate = directorate;
41
41
  this.section = section;
42
42
  this.position = position;
@@ -48,6 +48,7 @@ let User = class User extends BaseModel_1.BaseModel {
48
48
  this.passport_number = passport_number;
49
49
  this.personal_email = personal_email;
50
50
  this.extension_number = extension_number;
51
+ this.fax_number = fax_number;
51
52
  this.diplomatic_name = diplomatic_name;
52
53
  this.avatar = avatar;
53
54
  this.father_name = father_name;
@@ -143,7 +144,7 @@ __decorate([
143
144
  __metadata("design:type", Number)
144
145
  ], User.prototype, "department", void 0);
145
146
  __decorate([
146
- (0, typeorm_1.Column)({ nullable: true }),
147
+ (0, typeorm_1.Column)({ type: "enum", enum: ["CAA", "Embassy"], nullable: false, default: "CAA" }),
147
148
  __metadata("design:type", String)
148
149
  ], User.prototype, "category", void 0);
149
150
  __decorate([
@@ -194,6 +195,10 @@ __decorate([
194
195
  (0, typeorm_1.Column)({ nullable: true }),
195
196
  __metadata("design:type", Number)
196
197
  ], User.prototype, "extension_number", void 0);
198
+ __decorate([
199
+ (0, typeorm_1.Column)({ type: "varchar", length: 20, nullable: true }),
200
+ __metadata("design:type", String)
201
+ ], User.prototype, "fax_number", void 0);
197
202
  __decorate([
198
203
  (0, typeorm_1.Column)({ nullable: true }),
199
204
  __metadata("design:type", String)
@@ -224,5 +229,5 @@ __decorate([
224
229
  ], User.prototype, "address", void 0);
225
230
  exports.User = User = __decorate([
226
231
  (0, typeorm_1.Entity)({ name: 'users' }),
227
- __metadata("design:paramtypes", [Number, Number, String, String, String, String, String, String, String, String, String, String, String, String, String, String, Number, Number, String, String, Number, String, String, Number, Number, String, Number, String, Number, String, String, String, Number, String, String, String, String, String, String, String])
232
+ __metadata("design:paramtypes", [Number, Number, String, String, String, String, String, String, String, String, String, String, String, String, String, String, Number, Number, String, String, Number, String, String, Number, Number, String, Number, String, Number, String, String, String, Number, String, String, String, String, String, String, String, String])
228
233
  ], User);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platform-modules/civil-aviation-authority",
3
- "version": "2.0.25",
3
+ "version": "2.0.26",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
@@ -6,12 +6,12 @@ import { User } from './models/user'; // import all entities here
6
6
  import { userSessions } from './models/user-sessions';
7
7
  import { Role } from './models/role';
8
8
  import { ITHelpDeskRequests } from './models/ITHelpDeskModel';
9
- // import { ITServicesTypesSalalah } from './models/ITServicesTypesSalalahModel'; // REMOVED - table no longer used
10
- // import { ITServicesTypesMuscat } from './models/ITServicesTypesMuscatModel'; // REMOVED - table no longer used
9
+ import { ITServicesTypesSalalah } from './models/ITServicesTypesSalalahModel';
10
+ import { ITServicesTypesMuscat } from './models/ITServicesTypesMuscatModel';
11
11
  import { ServiceType } from './models/ServiceTypeModel';
12
12
  import { CAAServices } from './models/CAAServices';
13
13
  import { CAASubServices } from './models/CAASubServices';
14
- // import { ITApprovalSettings } from './models/ITApprovalSettings'; // REMOVED - table no longer used
14
+ import { ITApprovalSettings } from './models/ITApprovalSettings';
15
15
  // import { Workflows } from './models/Workflows';
16
16
  import { ItApprovalDetails } from './models/ItApprovalsModel';
17
17
  import { ItWorkFlow } from './models/ItWorkflowModel';
@@ -39,8 +39,7 @@ import { LogisticsRequestAttachment } from './models/LogisticsAttachmentModel';
39
39
  import { LogisticsWorkFlow } from './models/LogisticsWorkflowModel';
40
40
  import { ImportantLinks } from './models/importantLinksModel';
41
41
  import { DelegateSettings } from './models/DelegateSettingsModel';
42
- import { Feedback } from './models/feedbackModel';
43
- import { PortalFeedback } from './models/PortalFeedbackModel';
42
+ import { HotelReservation } from './models/HotelreservationModel'
44
43
 
45
44
 
46
45
  export const AppDataSource = new DataSource({
@@ -56,12 +55,12 @@ export const AppDataSource = new DataSource({
56
55
  User,userSessions,
57
56
  Role,
58
57
  ITHelpDeskRequests,
59
- // ITServicesTypesSalalah, // REMOVED - table no longer used
60
- // ITServicesTypesMuscat, // REMOVED - table no longer used
58
+ ITServicesTypesSalalah,
59
+ ITServicesTypesMuscat,
61
60
  ServiceType,
62
61
  CAAServices,
63
62
  CAASubServices,
64
- // ITApprovalSettings, // REMOVED - table no longer used
63
+ ITApprovalSettings,
65
64
  // Workflows,
66
65
  ItApprovalDetails,
67
66
  ItWorkFlow,
@@ -89,7 +88,6 @@ export const AppDataSource = new DataSource({
89
88
  LogisticsWorkFlow,
90
89
  ImportantLinks,
91
90
  DelegateSettings,
92
- Feedback,
93
- PortalFeedback
91
+ HotelReservation
94
92
  ],
95
93
  });
package/src/index.ts CHANGED
@@ -2,13 +2,13 @@ export * from './models/user';
2
2
  export * from './models/role';
3
3
  export * from './models/user-sessions';
4
4
  export * from './models/ITHelpDeskModel';
5
- // export * from './models/ITServicesTypesSalalahModel'; // REMOVED - table no longer used
6
- // export * from './models/ITServicesTypesMuscatModel'; // REMOVED - table no longer used
5
+ export * from './models/ITServicesTypesSalalahModel';
6
+ export * from './models/ITServicesTypesMuscatModel';
7
7
  export * from './models/ServiceTypeModel';
8
8
  export * from './models/CAAServices';
9
9
  export * from './models/CAASubServices';
10
- // export * from './models/ITApprovalSettings'; // REMOVED - table no longer used
11
- // export * from './models/Workflows'; // REMOVED - table no longer used
10
+ export * from './models/ITApprovalSettings';
11
+ // export * from './models/Workflows';
12
12
  export * from './models/ItApprovalsModel';
13
13
  export * from './models/ItWorkflowModel';
14
14
  export * from './models/WorkflowDefinitions';
@@ -35,5 +35,4 @@ export * from './models/LogisticsAttachmentModel';
35
35
  export * from './models/importantLinksModel';
36
36
  export * from './models/LogisticsWorkflowModel';
37
37
  export * from './models/DelegateSettingsModel';
38
- export * from './models/feedbackModel';
39
- export * from './models/PortalFeedbackModel';
38
+ export * from './models/HotelreservationModel';
@@ -0,0 +1,159 @@
1
+ import { Entity, Column } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MealType {
5
+ BREAKFAST = "Breakfast",
6
+ LUNCH = "Lunch",
7
+ DINNER = "Dinner",
8
+ }
9
+
10
+ export enum ServiceTypes {
11
+ LAUNDRY = "Laundry",
12
+ TELEPHONE = "Telephone Service",
13
+ }
14
+
15
+ export enum HotelReservationStatus {
16
+ PENDING = "Pending",
17
+ APPROVED = "Approved",
18
+ REJECTED = "Rejected",
19
+ IN_PROGRESS = "In Progress"
20
+ }
21
+
22
+ @Entity({ name:'hotelreservations'})
23
+ export class HotelReservation extends BaseModel {
24
+ // Workflow fields (similar to IT Help Desk)
25
+ @Column({ type: 'int', nullable: true })
26
+ req_user_department_id: number | null;
27
+
28
+ @Column({ type: 'int', nullable: true })
29
+ req_user_section_id: number | null;
30
+
31
+ @Column({ nullable: true })
32
+ service_id: number | null;
33
+
34
+ @Column({ nullable: true })
35
+ sub_service_id: number | null;
36
+
37
+ @Column({ type: 'varchar', length: 20, nullable: true })
38
+ service_type: string | null; // 'internal' or 'external'
39
+
40
+ @Column({ type: 'varchar', nullable: true })
41
+ workflow_execution_id: string | null;
42
+
43
+ @Column({
44
+ type: "enum",
45
+ enum: HotelReservationStatus,
46
+ default: HotelReservationStatus.PENDING,
47
+ nullable: false,
48
+ })
49
+ status: HotelReservationStatus;
50
+
51
+ @Column({ nullable: false })
52
+ user_id: number;
53
+
54
+ // Hotel reservation specific fields
55
+ @Column({ type: 'varchar', length: 50 })
56
+ type_of_accommodation: string;
57
+
58
+ @Column({ type: 'decimal', precision: 10, scale: 2, nullable: false })
59
+ price: number;
60
+
61
+ @Column({ type: 'enum', enum: MealType, nullable: false, })
62
+ meal: MealType;
63
+
64
+ @Column({ type: 'enum', enum: ServiceTypes, nullable: false, })
65
+ service: ServiceTypes;
66
+
67
+ @Column({ type: 'timestamptz', nullable: false })
68
+ date_of_request: Date;
69
+
70
+ @Column({ type: 'varchar', length: 100, nullable: false })
71
+ hotel_name: string;
72
+
73
+ @Column({ type: 'date', nullable: false })
74
+ check_in_date: Date;
75
+
76
+ @Column({ type: 'time', nullable: false })
77
+ check_in_time: string;
78
+
79
+ @Column({ type: 'date', nullable: false })
80
+ check_out_date: Date;
81
+
82
+ @Column({ type: 'time', nullable: false })
83
+ check_out_time: string;
84
+
85
+ @Column({ type: 'int', nullable: false })
86
+ number_of_guests: number;
87
+
88
+ @Column({ type: 'text', nullable: true })
89
+ description: string;
90
+
91
+ @Column({ type: 'text', nullable: false })
92
+ attachment_url: string;
93
+
94
+ @Column({ type: 'varchar', length: 100, nullable: false })
95
+ requested_by: string;
96
+
97
+ @Column({ type: 'varchar', length: 100, nullable: false })
98
+ visitor_name: string;
99
+
100
+ @Column({ type: 'boolean', default: false })
101
+ hr_approval: boolean;
102
+
103
+ @Column({ type: 'boolean', default: false })
104
+ pr_approval: boolean;
105
+
106
+
107
+ constructor(
108
+ type_of_accommodation: string,
109
+ price: number,
110
+ meal: MealType,
111
+ service: ServiceTypes,
112
+ date_of_request: Date,
113
+ hotel_name: string,
114
+ check_in_date: Date,
115
+ check_in_time: string,
116
+ check_out_date: Date,
117
+ check_out_time: string,
118
+ number_of_guests: number,
119
+ description: string,
120
+ requested_by: string,
121
+ visitor_name: string,
122
+ user_id: number,
123
+ status: HotelReservationStatus = HotelReservationStatus.PENDING,
124
+ hr_approval: boolean = false,
125
+ pr_approval: boolean = false,
126
+ service_id?: number | null,
127
+ sub_service_id?: number | null,
128
+ service_type?: string | null,
129
+ workflow_execution_id?: string | null,
130
+ req_user_department_id?: number | null,
131
+ req_user_section_id?: number | null
132
+ ) {
133
+ super();
134
+ this.type_of_accommodation = type_of_accommodation;
135
+ this.price = price;
136
+ this.meal = meal;
137
+ this.service = service;
138
+ this.date_of_request = date_of_request;
139
+ this.hotel_name = hotel_name;
140
+ this.check_in_date = check_in_date;
141
+ this.check_in_time = check_in_time;
142
+ this.check_out_date = check_out_date;
143
+ this.check_out_time = check_out_time;
144
+ this.number_of_guests = number_of_guests;
145
+ this.description = description;
146
+ this.requested_by = requested_by;
147
+ this.visitor_name = visitor_name;
148
+ this.user_id = user_id;
149
+ this.status = status;
150
+ this.hr_approval = hr_approval;
151
+ this.pr_approval = pr_approval;
152
+ this.service_id = service_id ?? null;
153
+ this.sub_service_id = sub_service_id ?? null;
154
+ this.service_type = service_type ?? null;
155
+ this.workflow_execution_id = workflow_execution_id ?? null;
156
+ this.req_user_department_id = req_user_department_id ?? null;
157
+ this.req_user_section_id = req_user_section_id ?? null;
158
+ }
159
+ }
@@ -0,0 +1,29 @@
1
+ import { Column, Entity, Unique } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'it_approval_settings' })
5
+ @Unique(['workflow_id', 'level'])
6
+ export class ITApprovalSettings extends BaseModel {
7
+
8
+
9
+ @Column({ type: 'int', nullable: false })
10
+ level: number;
11
+
12
+ @Column({ type: 'int', nullable: false })
13
+ approval_role_id: number;
14
+
15
+ @Column({ type: 'int', nullable: false })
16
+ workflow_id: number;
17
+ constructor(
18
+ level: number,
19
+ approval_role_id: number,
20
+ workflow_id: number
21
+ ) {
22
+ super();
23
+ this.level = level;
24
+ this.approval_role_id = approval_role_id;
25
+ this.workflow_id = workflow_id;
26
+ }
27
+ }
28
+
29
+
@@ -53,9 +53,17 @@ export class ITHelpDeskRequests extends BaseModel {
53
53
  @Column({ type: "date", nullable: false })
54
54
  request_date: Date;
55
55
 
56
+ @Column({ nullable: true })
57
+ attachment_url: string;
58
+
56
59
  @Column({ nullable: false })
57
60
  user_id: number;
58
61
 
62
+ @Column({ nullable: true })
63
+ reporting_manager: number;
64
+
65
+ @Column({ nullable: true })
66
+ assigned_to: number;
59
67
 
60
68
  @Column({
61
69
  type: "enum",
@@ -77,6 +85,9 @@ export class ITHelpDeskRequests extends BaseModel {
77
85
  extn_num: string,
78
86
  contact_num: string,
79
87
  request_date: Date,
88
+ attachment_url: string,
89
+ reporting_manager: number,
90
+ assigned_to: number,
80
91
  status: status,
81
92
  workflow_execution_id?: string,
82
93
  req_user_department_id?: number | null,
@@ -92,6 +103,9 @@ export class ITHelpDeskRequests extends BaseModel {
92
103
  this.extn_num = extn_num;
93
104
  this.contact_num = contact_num;
94
105
  this.request_date = request_date;
106
+ this.attachment_url = attachment_url;
107
+ this.reporting_manager = reporting_manager;
108
+ this.assigned_to = assigned_to;
95
109
  this.status = status;
96
110
  this.workflow_execution_id = workflow_execution_id || null;
97
111
  this.req_user_department_id = req_user_department_id || null;
@@ -0,0 +1,22 @@
1
+
2
+ import { Column, Entity } from "typeorm";
3
+ import { BaseModel } from './BaseModel';
4
+
5
+ @Entity({ name: 'it_services_types_muscat' })
6
+ export class ITServicesTypesMuscat extends BaseModel {
7
+
8
+ @Column({ nullable: false })
9
+ name: string;
10
+
11
+ @Column({ nullable: false })
12
+ name_in_arabic: string;
13
+
14
+ constructor(
15
+ name: string,
16
+ name_in_arabic: string
17
+ ) {
18
+ super();
19
+ this.name = name
20
+ this.name_in_arabic = name_in_arabic
21
+ }
22
+ }
@@ -0,0 +1,22 @@
1
+
2
+ import { Column, Entity } from "typeorm";
3
+ import { BaseModel } from './BaseModel';
4
+
5
+ @Entity({ name: 'it_services_types_salalah' })
6
+ export class ITServicesTypesSalalah extends BaseModel {
7
+
8
+ @Column({ nullable: false })
9
+ name: string;
10
+
11
+ @Column({ nullable: false })
12
+ name_in_arabic: string;
13
+
14
+ constructor(
15
+ name: string,
16
+ name_in_arabic: string
17
+ ) {
18
+ super();
19
+ this.name = name
20
+ this.name_in_arabic = name_in_arabic
21
+ }
22
+ }
@@ -20,7 +20,7 @@ export class ItApprovalDetails extends BaseModel {
20
20
  approver_user_id: number | null;
21
21
 
22
22
  @Column({ type: 'integer', nullable: false })
23
- approver_role_id: number | null;
23
+ approver_role_id: number;
24
24
 
25
25
  @Column({ type: 'integer', nullable: true })
26
26
  department_id: number | null;
@@ -40,7 +40,7 @@ export class ItApprovalDetails extends BaseModel {
40
40
  constructor(
41
41
  request_id: number,
42
42
  approver_user_id: number | null,
43
- approver_role_id: number | null,
43
+ approver_role_id: number,
44
44
  comment: string,
45
45
  approval_status: ApprovalStatus,
46
46
  level: number,
@@ -13,20 +13,16 @@ export class ItWorkFlow extends BaseModel {
13
13
  @Column({ type: 'int', nullable: false })
14
14
  request_id: number;
15
15
 
16
- @Column({ type: 'int', nullable: true })
17
- order: number | null;
18
-
19
16
  @Column({ type: 'varchar', length: 255, nullable: false })
20
17
  content: string;
21
18
 
22
19
  @Column({ type: 'enum', enum: workFlowStatus, default: workFlowStatus.NOT_YET_STARTED, nullable: false })
23
20
  status: workFlowStatus;
24
21
 
25
- constructor(request_id: number, content: string, status: workFlowStatus, order?: number) {
22
+ constructor(request_id: number, content: string, status: workFlowStatus) {
26
23
  super();
27
24
  this.request_id = request_id;
28
25
  this.content = content;
29
26
  this.status = status;
30
- this.order = order || null;
31
27
  }
32
28
  }
@@ -2,9 +2,10 @@ import { Column, Entity } from "typeorm";
2
2
  import { BaseModel } from './BaseModel';
3
3
 
4
4
  export enum Foreign_Purpose_of_Travel {
5
- SITE = "Site Visit",
6
- AIRPORT = "Airport Duty",
7
- OFFICIAL = "Official Meeting",
5
+ AIRPORT_PICKUP = "Airport Pickup/Drop-off",
6
+ OFFICIAL_MEETING = "Official Meeting",
7
+ SITE_VISIT = "Site Visit",
8
+ CONFERENCE = "Conference/Event",
8
9
  OTHER = "Other"
9
10
  }
10
11
 
@@ -4,9 +4,6 @@ import { BaseModel } from './BaseModel';
4
4
 
5
5
  export enum NotificationType {
6
6
  REQUEST_RAISED = 'request raised',
7
- REQUEST_APPROVE = 'request approve',
8
- REQUEST_REJECT = 'request reject',
9
- REQUEST_WITHDRAW = 'request withdraw',
10
7
  REMINDER = 'reminder',
11
8
  IMPORT = 'import',
12
9
  }
@@ -13,29 +13,14 @@ export class WorkflowTask extends BaseModel {
13
13
  @Column({ type: 'varchar', length: 200, nullable: true })
14
14
  task_type: string;
15
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: 'varchar', length: 50, nullable: true })
23
- service_type: string | null;
24
-
25
16
  constructor(
26
17
  name: string,
27
18
  task_id?: number,
28
- task_type?: string,
29
- service_id?: number | null,
30
- sub_service_id?: number | null,
31
- service_type?: string | null
19
+ task_type?: string
32
20
  ) {
33
21
  super();
34
22
  this.name = name;
35
23
  this.task_id = task_id || 0;
36
24
  this.task_type = task_type || '';
37
- this.service_id = service_id || null;
38
- this.sub_service_id = sub_service_id || null;
39
- this.service_type = service_type || null;
40
25
  }
41
26
  }
@@ -0,0 +1,40 @@
1
+ // import { Column, Entity, Unique } from "typeorm";
2
+ // import { BaseModel } from './BaseModel';
3
+
4
+ // @Entity({ name: 'workflows' })
5
+ // @Unique(['service_id', 'sub_service_id', 'request_for'])
6
+ // export class Workflows extends BaseModel {
7
+
8
+ // @Column({ type: 'varchar', length: 100, nullable: false })
9
+ // name: string;
10
+
11
+ // @Column({ type: 'bigint', nullable: false })
12
+ // service_id: number;
13
+
14
+ // @Column({ type: 'bigint', nullable: false })
15
+ // sub_service_id: number;
16
+
17
+ // @Column({ type: 'varchar', length: 20, nullable: false })
18
+ // request_for: string; // 'Self' | 'Behalf of' | 'Internal'
19
+
20
+ // @Column({ type: 'int', nullable: false })
21
+ // levels: number;
22
+
23
+
24
+ // constructor(
25
+ // name: string,
26
+ // service_id: number,
27
+ // sub_service_id: number,
28
+ // request_for: string,
29
+ // levels: number,
30
+ // ) {
31
+ // super();
32
+ // this.name = name;
33
+ // this.service_id = service_id;
34
+ // this.sub_service_id = sub_service_id;
35
+ // this.request_for = request_for;
36
+ // this.levels = levels;
37
+ // }
38
+ // }
39
+
40
+
@@ -1,34 +0,0 @@
1
-
2
- import { Column, Entity } from "typeorm";
3
- import { BaseModel } from './BaseModel';
4
- import { Rating } from './feedbackModel';
5
-
6
- @Entity({ name: 'portal_feedback' })
7
- export class PortalFeedback extends BaseModel {
8
-
9
- @Column({ nullable: true })
10
- comment: string;
11
-
12
- @Column({
13
- type: "enum",
14
- enum: Rating,
15
- nullable: true,
16
- })
17
- rating: Rating;
18
-
19
- @Column({ nullable: true })
20
- user_Id: number;
21
-
22
- constructor(
23
- comment: string,
24
- rating: Rating,
25
- user_Id: number,
26
- ) {
27
- super();
28
- this.comment = comment,
29
- this.rating = rating,
30
- this.user_Id = user_Id
31
- }
32
- }
33
-
34
-