@platform-modules/civil-aviation-authority 2.3.64 → 2.3.66

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 CHANGED
@@ -1,12 +1,17 @@
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
1
+ # DB_HOST=localhost
2
+ # DB_PORT=5433
3
+ # DB_USER=postgres
4
+ # DB_PASS=123
5
5
  # DB_NAME=CAA
6
6
 
7
+ DB_HOST=164.52.222.169
8
+ DB_PORT=5432
9
+ DB_USER=postgres_admin_user
10
+ DB_PASS=pg_admin_user_pwd_caa_fa_$%^&OIukhjgcvbn
11
+ DB_NAME=CAA
7
12
 
8
- DB_HOST=localhost
9
- DB_PORT=5432
10
- DB_USER=postgres
11
- DB_PASS=stevejobs
12
- DB_NAME=CAA
13
+ # DB_HOST=216.48.187.46
14
+ # DB_PORT=5432
15
+ # DB_USER=adminuser
16
+ # DB_PASS=postgres_caa_fm_qa_34567
17
+ # DB_NAME=CAA_QA
@@ -210,7 +210,7 @@ __decorate([
210
210
  __metadata("design:type", Object)
211
211
  ], AirportEntryPermit.prototype, "temporary_duration", void 0);
212
212
  __decorate([
213
- (0, typeorm_1.Column)({ type: 'jsonb', nullable: false }),
213
+ (0, typeorm_1.Column)({ type: 'jsonb', nullable: true }),
214
214
  __metadata("design:type", Array)
215
215
  ], AirportEntryPermit.prototype, "permission_to_required_areas", void 0);
216
216
  __decorate([
@@ -60,5 +60,6 @@ export declare class DutyMissionRequests extends BaseModel {
60
60
  air_ticket_required: AirTicketRequired | null;
61
61
  vehicle_required: VehicleRequired | null;
62
62
  remarks: string | null;
63
- constructor(req_user_department_id: number | null, req_user_section_id: number | null, service_id: number, sub_service_id: number, user_id: number, trip_type: TripType, choose_type: ChooseType, mission_sponsored_by: MissionSponsoredBy, mission_purpose: string, mission_number: string, mission_start_date: Date, mission_end_date: Date, travelling_area_from: string, travelling_area_to: string, from_country: string, to_country: string, travel_place: string, travel_start_date: Date, travel_return_date: Date, status: DutyMissionStatus, request_id?: string | null, mission_id?: string | null, mission_days?: number | null, distance?: string | null, if_sponsored?: string | null, allowance_percentage?: string | null, air_ticket_required?: AirTicketRequired | null, vehicle_required?: VehicleRequired | null, remarks?: string | null, workflow_execution_id?: string | null);
63
+ decision_number: string | null;
64
+ constructor(req_user_department_id: number | null, req_user_section_id: number | null, service_id: number, sub_service_id: number, user_id: number, trip_type: TripType, choose_type: ChooseType, mission_sponsored_by: MissionSponsoredBy, mission_purpose: string, mission_number: string, mission_start_date: Date, mission_end_date: Date, travelling_area_from: string, travelling_area_to: string, from_country: string, to_country: string, travel_place: string, travel_start_date: Date, travel_return_date: Date, status: DutyMissionStatus, request_id?: string | null, mission_id?: string | null, mission_days?: number | null, distance?: string | null, if_sponsored?: string | null, allowance_percentage?: string | null, air_ticket_required?: AirTicketRequired | null, vehicle_required?: VehicleRequired | null, remarks?: string | null, decision_number?: string | null, workflow_execution_id?: string | null);
64
65
  }
@@ -49,7 +49,7 @@ var DutyMissionStatus;
49
49
  DutyMissionStatus["REJECTED"] = "Rejected";
50
50
  })(DutyMissionStatus || (exports.DutyMissionStatus = DutyMissionStatus = {}));
51
51
  let DutyMissionRequests = class DutyMissionRequests extends BaseModel_1.BaseModel {
52
- constructor(req_user_department_id, req_user_section_id, service_id, sub_service_id, user_id, trip_type, choose_type, mission_sponsored_by, mission_purpose, mission_number, mission_start_date, mission_end_date, travelling_area_from, travelling_area_to, from_country, to_country, travel_place, travel_start_date, travel_return_date, status, request_id, mission_id, mission_days, distance, if_sponsored, allowance_percentage, air_ticket_required, vehicle_required, remarks, workflow_execution_id) {
52
+ constructor(req_user_department_id, req_user_section_id, service_id, sub_service_id, user_id, trip_type, choose_type, mission_sponsored_by, mission_purpose, mission_number, mission_start_date, mission_end_date, travelling_area_from, travelling_area_to, from_country, to_country, travel_place, travel_start_date, travel_return_date, status, request_id, mission_id, mission_days, distance, if_sponsored, allowance_percentage, air_ticket_required, vehicle_required, remarks, decision_number, workflow_execution_id) {
53
53
  super();
54
54
  this.req_user_department_id = req_user_department_id ?? null;
55
55
  this.req_user_section_id = req_user_section_id ?? null;
@@ -80,6 +80,7 @@ let DutyMissionRequests = class DutyMissionRequests extends BaseModel_1.BaseMode
80
80
  this.air_ticket_required = air_ticket_required ?? null;
81
81
  this.vehicle_required = vehicle_required ?? null;
82
82
  this.remarks = remarks ?? null;
83
+ this.decision_number = decision_number ?? null;
83
84
  this.workflow_execution_id = workflow_execution_id ?? null;
84
85
  }
85
86
  };
@@ -229,9 +230,13 @@ __decorate([
229
230
  (0, typeorm_1.Column)({ type: 'text', nullable: true }),
230
231
  __metadata("design:type", Object)
231
232
  ], DutyMissionRequests.prototype, "remarks", void 0);
233
+ __decorate([
234
+ (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
235
+ __metadata("design:type", Object)
236
+ ], DutyMissionRequests.prototype, "decision_number", void 0);
232
237
  exports.DutyMissionRequests = DutyMissionRequests = __decorate([
233
238
  (0, typeorm_1.Entity)({ name: 'duty_mission_requests' }),
234
239
  __metadata("design:paramtypes", [Object, Object, Number, Number, Number, String, String, String, String, String, Date,
235
240
  Date, String, String, String, String, String, Date,
236
- Date, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
241
+ Date, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
237
242
  ], DutyMissionRequests);
@@ -32,6 +32,8 @@ export declare class ShiftAllowanceRequest extends BaseModel {
32
32
  allowance_value: ShiftAllowanceValue;
33
33
  shift_start_date: Date;
34
34
  shift_end_date: Date;
35
+ start_time: string | null;
36
+ end_time: string | null;
35
37
  reason_for_request: string | null;
36
- constructor(user_id: number, status?: ShiftAllowanceRequestStatus, service_id?: number | null, sub_service_id?: number | null, req_user_department_id?: number | null, req_user_section_id?: number | null, req_user_position_id?: number | null, description?: string | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null, employee_name?: string, employee_id?: string, job_title?: string, financial_grade?: string, allowance_value?: ShiftAllowanceValue, shift_start_date?: Date, shift_end_date?: Date, reason_for_request?: string | null);
38
+ constructor(user_id: number, status?: ShiftAllowanceRequestStatus, service_id?: number | null, sub_service_id?: number | null, req_user_department_id?: number | null, req_user_section_id?: number | null, req_user_position_id?: number | null, description?: string | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null, employee_name?: string, employee_id?: string, job_title?: string, financial_grade?: string, allowance_value?: ShiftAllowanceValue, shift_start_date?: Date, shift_end_date?: Date, start_time?: string | null, end_time?: string | null, reason_for_request?: string | null);
37
39
  }
@@ -28,7 +28,7 @@ var ShiftAllowanceValue;
28
28
  ShiftAllowanceValue["SEVENTY_PERCENT"] = "70%";
29
29
  })(ShiftAllowanceValue || (exports.ShiftAllowanceValue = ShiftAllowanceValue = {}));
30
30
  let ShiftAllowanceRequest = class ShiftAllowanceRequest extends BaseModel_1.BaseModel {
31
- constructor(user_id, status = ShiftAllowanceRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, description, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id, employee_name, employee_id, job_title, financial_grade, allowance_value, shift_start_date, shift_end_date, reason_for_request) {
31
+ constructor(user_id, status = ShiftAllowanceRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, description, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id, employee_name, employee_id, job_title, financial_grade, allowance_value, shift_start_date, shift_end_date, start_time, end_time, reason_for_request) {
32
32
  super();
33
33
  this.user_id = user_id;
34
34
  this.status = status;
@@ -49,6 +49,8 @@ let ShiftAllowanceRequest = class ShiftAllowanceRequest extends BaseModel_1.Base
49
49
  this.allowance_value = allowance_value || ShiftAllowanceValue.TWENTY_TWO_PERCENT;
50
50
  this.shift_start_date = shift_start_date || new Date();
51
51
  this.shift_end_date = shift_end_date || new Date();
52
+ this.start_time = start_time || null;
53
+ this.end_time = end_time || null;
52
54
  this.reason_for_request = reason_for_request || null;
53
55
  }
54
56
  };
@@ -129,6 +131,14 @@ __decorate([
129
131
  (0, typeorm_1.Column)({ type: "date", nullable: false }),
130
132
  __metadata("design:type", Date)
131
133
  ], ShiftAllowanceRequest.prototype, "shift_end_date", void 0);
134
+ __decorate([
135
+ (0, typeorm_1.Column)({ type: "time", nullable: true }),
136
+ __metadata("design:type", Object)
137
+ ], ShiftAllowanceRequest.prototype, "start_time", void 0);
138
+ __decorate([
139
+ (0, typeorm_1.Column)({ type: "time", nullable: true }),
140
+ __metadata("design:type", Object)
141
+ ], ShiftAllowanceRequest.prototype, "end_time", void 0);
132
142
  __decorate([
133
143
  (0, typeorm_1.Column)({ type: "text", nullable: true }),
134
144
  __metadata("design:type", Object)
@@ -136,5 +146,5 @@ __decorate([
136
146
  exports.ShiftAllowanceRequest = ShiftAllowanceRequest = __decorate([
137
147
  (0, typeorm_1.Entity)({ name: "shift_allowance_requests" }),
138
148
  __metadata("design:paramtypes", [Number, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, String, String, String, String, String, Date,
139
- Date, Object])
149
+ Date, Object, Object, Object])
140
150
  ], ShiftAllowanceRequest);
@@ -1,9 +0,0 @@
1
- import { BaseModel } from './BaseModel';
2
- export declare class Workflows extends BaseModel {
3
- name: string;
4
- service_id: number;
5
- sub_service_id: number;
6
- request_for: string;
7
- levels: number;
8
- constructor(name: string, service_id: number, sub_service_id: number, request_for: string, levels: number);
9
- }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platform-modules/civil-aviation-authority",
3
- "version": "2.3.64",
3
+ "version": "2.3.66",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
@@ -142,7 +142,7 @@ export class AirportEntryPermit extends BaseModel {
142
142
  @Column({ type: 'varchar', length: 100, nullable: true })
143
143
  temporary_duration: string | null;
144
144
 
145
- @Column({ type: 'jsonb', nullable: false })
145
+ @Column({ type: 'jsonb', nullable: true })
146
146
  permission_to_required_areas: Array<{ permit: string; text: string }>;
147
147
 
148
148
  @Column({ type: 'text', nullable: true })
@@ -157,6 +157,9 @@ export class DutyMissionRequests extends BaseModel {
157
157
  @Column({ type: 'text', nullable: true })
158
158
  remarks: string | null;
159
159
 
160
+ @Column({ type: 'varchar', length: 100, nullable: true })
161
+ decision_number: string | null;
162
+
160
163
  constructor(
161
164
  req_user_department_id: number | null,
162
165
  req_user_section_id: number | null,
@@ -187,6 +190,7 @@ export class DutyMissionRequests extends BaseModel {
187
190
  air_ticket_required?: AirTicketRequired | null,
188
191
  vehicle_required?: VehicleRequired | null,
189
192
  remarks?: string | null,
193
+ decision_number?: string | null,
190
194
  workflow_execution_id?: string | null,
191
195
  ) {
192
196
  super();
@@ -219,6 +223,7 @@ export class DutyMissionRequests extends BaseModel {
219
223
  this.air_ticket_required = air_ticket_required ?? null;
220
224
  this.vehicle_required = vehicle_required ?? null;
221
225
  this.remarks = remarks ?? null;
226
+ this.decision_number = decision_number ?? null;
222
227
  this.workflow_execution_id = workflow_execution_id ?? null;
223
228
  }
224
229
  }
@@ -1,167 +1,167 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- export enum HrServiceRequestStatus {
5
- PENDING = "Pending",
6
- ASSIGNED = "Assigned",
7
- IN_PROGRESS = "In Progress",
8
- COMPLETED = "Completed",
9
- APPROVED = "Approved",
10
- REJECTED = "Rejected"
11
- }
12
-
13
- @Entity({ name: "hr_service_requests" })
14
- export class HrServiceRequest extends BaseModel {
15
- @Column({ type: "integer", nullable: true })
16
- req_user_department_id: number | null;
17
-
18
- @Column({ type: "integer", nullable: true })
19
- req_user_section_id: number | null;
20
-
21
- @Column({ type: "integer", nullable: true })
22
- req_user_position_id: number | null;
23
-
24
- @Column({ type: "integer", nullable: true })
25
- service_id: number | null;
26
-
27
- @Column({ type: "integer", nullable: true })
28
- sub_service_id: number | null;
29
-
30
- @Column({ type: "integer", nullable: false })
31
- user_id: number;
32
-
33
- @Column({ type: "text", nullable: true })
34
- description: string | null;
35
-
36
- @Column({ type: "enum", enum: HrServiceRequestStatus, default: HrServiceRequestStatus.PENDING, nullable: false })
37
- status: HrServiceRequestStatus;
38
-
39
- @Column({ type: "integer", nullable: true })
40
- reviewer_user_id: number | null;
41
-
42
- @Column({ type: "integer", nullable: true })
43
- assigned_to_user_id: number | null;
44
-
45
- @Column({ type: "timestamp", nullable: true })
46
- assigned_at: Date | null;
47
-
48
- @Column({ type: "varchar", length: 255, nullable: true })
49
- workflow_execution_id: string | null;
50
-
51
- // Assignment Decision specific fields
52
- @Column({ type: "varchar", length: 255, nullable: false })
53
- assigned_employee_name: string;
54
-
55
- @Column({ type: "varchar", length: 50, nullable: true })
56
- civil_id_card_number: string | null;
57
-
58
- @Column({ type: "varchar", length: 100, nullable: false })
59
- employee_id: string;
60
-
61
- @Column({ type: "varchar", length: 255, nullable: false })
62
- current_job_position: string;
63
-
64
- @Column({ type: "varchar", length: 255, nullable: false })
65
- assigned_job_position: string;
66
-
67
- @Column({ type: "date", nullable: false })
68
- start_date: Date;
69
-
70
- @Column({ type: "date", nullable: false })
71
- end_date: Date;
72
-
73
- @Column({ type: "decimal", precision: 5, scale: 2, nullable: true })
74
- assignment_allowance: number | null; // 0-100 percentage
75
-
76
- @Column({ type: "varchar", length: 20, nullable: false })
77
- phone_number: string;
78
-
79
- @Column({ type: "text", nullable: false })
80
- reason_for_request: string;
81
-
82
- // Replacement tracking fields
83
- @Column({ type: "boolean", default: false, nullable: false })
84
- is_replaced: boolean;
85
-
86
- @Column({ type: "varchar", length: 255, nullable: true })
87
- replacement_employee_name: string | null;
88
-
89
- @Column({ type: "varchar", length: 100, nullable: true })
90
- replacement_employee_id: string | null;
91
-
92
- @Column({ type: "varchar", length: 50, nullable: true })
93
- replacement_civil_id_card_number: string | null;
94
-
95
- @Column({ type: "text", nullable: true })
96
- replacement_reason: string | null;
97
-
98
- @Column({ type: "integer", nullable: true })
99
- replaced_by_user_id: number | null;
100
-
101
- @Column({ type: "timestamp", nullable: true })
102
- replaced_at: Date | null;
103
-
104
- constructor(
105
- user_id: number,
106
- status: HrServiceRequestStatus = HrServiceRequestStatus.PENDING,
107
- service_id?: number | null,
108
- sub_service_id?: number | null,
109
- req_user_department_id?: number | null,
110
- req_user_section_id?: number | null,
111
- req_user_position_id?: number | null,
112
- description?: string | null,
113
- reviewer_user_id?: number | null,
114
- assigned_to_user_id?: number | null,
115
- assigned_at?: Date | null,
116
- workflow_execution_id?: string | null,
117
- assigned_employee_name?: string,
118
- civil_id_card_number?: string | null,
119
- employee_id?: string,
120
- current_job_position?: string,
121
- assigned_job_position?: string,
122
- start_date?: Date,
123
- end_date?: Date,
124
- assignment_allowance?: number | null,
125
- phone_number?: string,
126
- reason_for_request?: string,
127
- is_replaced?: boolean,
128
- replacement_employee_name?: string | null,
129
- replacement_employee_id?: string | null,
130
- replacement_civil_id_card_number?: string | null,
131
- replacement_reason?: string | null,
132
- replaced_by_user_id?: number | null,
133
- replaced_at?: Date | null
134
- ) {
135
- super();
136
- this.user_id = user_id;
137
- this.status = status;
138
- this.service_id = service_id || null;
139
- this.sub_service_id = sub_service_id || null;
140
- this.req_user_department_id = req_user_department_id || null;
141
- this.req_user_section_id = req_user_section_id || null;
142
- this.req_user_position_id = req_user_position_id || null;
143
- this.description = description || null;
144
- this.reviewer_user_id = reviewer_user_id || null;
145
- this.assigned_to_user_id = assigned_to_user_id || null;
146
- this.assigned_at = assigned_at || null;
147
- this.workflow_execution_id = workflow_execution_id || null;
148
- this.assigned_employee_name = assigned_employee_name || "";
149
- this.civil_id_card_number = civil_id_card_number || null;
150
- this.employee_id = employee_id || "";
151
- this.current_job_position = current_job_position || "";
152
- this.assigned_job_position = assigned_job_position || "";
153
- this.start_date = start_date || new Date();
154
- this.end_date = end_date || new Date();
155
- this.assignment_allowance = assignment_allowance || null;
156
- this.phone_number = phone_number || "";
157
- this.reason_for_request = reason_for_request || "";
158
- this.is_replaced = is_replaced || false;
159
- this.replacement_employee_name = replacement_employee_name || null;
160
- this.replacement_employee_id = replacement_employee_id || null;
161
- this.replacement_civil_id_card_number = replacement_civil_id_card_number || null;
162
- this.replacement_reason = replacement_reason || null;
163
- this.replaced_by_user_id = replaced_by_user_id || null;
164
- this.replaced_at = replaced_at || null;
165
- }
166
- }
167
-
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum HrServiceRequestStatus {
5
+ PENDING = "Pending",
6
+ ASSIGNED = "Assigned",
7
+ IN_PROGRESS = "In Progress",
8
+ COMPLETED = "Completed",
9
+ APPROVED = "Approved",
10
+ REJECTED = "Rejected"
11
+ }
12
+
13
+ @Entity({ name: "hr_service_requests" })
14
+ export class HrServiceRequest extends BaseModel {
15
+ @Column({ type: "integer", nullable: true })
16
+ req_user_department_id: number | null;
17
+
18
+ @Column({ type: "integer", nullable: true })
19
+ req_user_section_id: number | null;
20
+
21
+ @Column({ type: "integer", nullable: true })
22
+ req_user_position_id: number | null;
23
+
24
+ @Column({ type: "integer", nullable: true })
25
+ service_id: number | null;
26
+
27
+ @Column({ type: "integer", nullable: true })
28
+ sub_service_id: number | null;
29
+
30
+ @Column({ type: "integer", nullable: false })
31
+ user_id: number;
32
+
33
+ @Column({ type: "text", nullable: true })
34
+ description: string | null;
35
+
36
+ @Column({ type: "enum", enum: HrServiceRequestStatus, default: HrServiceRequestStatus.PENDING, nullable: false })
37
+ status: HrServiceRequestStatus;
38
+
39
+ @Column({ type: "integer", nullable: true })
40
+ reviewer_user_id: number | null;
41
+
42
+ @Column({ type: "integer", nullable: true })
43
+ assigned_to_user_id: number | null;
44
+
45
+ @Column({ type: "timestamp", nullable: true })
46
+ assigned_at: Date | null;
47
+
48
+ @Column({ type: "varchar", length: 255, nullable: true })
49
+ workflow_execution_id: string | null;
50
+
51
+ // Assignment Decision specific fields
52
+ @Column({ type: "varchar", length: 255, nullable: false })
53
+ assigned_employee_name: string;
54
+
55
+ @Column({ type: "varchar", length: 50, nullable: true })
56
+ civil_id_card_number: string | null;
57
+
58
+ @Column({ type: "varchar", length: 100, nullable: false })
59
+ employee_id: string;
60
+
61
+ @Column({ type: "varchar", length: 255, nullable: false })
62
+ current_job_position: string;
63
+
64
+ @Column({ type: "varchar", length: 255, nullable: false })
65
+ assigned_job_position: string;
66
+
67
+ @Column({ type: "date", nullable: false })
68
+ start_date: Date;
69
+
70
+ @Column({ type: "date", nullable: false })
71
+ end_date: Date;
72
+
73
+ @Column({ type: "decimal", precision: 5, scale: 2, nullable: true })
74
+ assignment_allowance: number | null; // 0-100 percentage
75
+
76
+ @Column({ type: "varchar", length: 20, nullable: false })
77
+ phone_number: string;
78
+
79
+ @Column({ type: "text", nullable: false })
80
+ reason_for_request: string;
81
+
82
+ // Replacement tracking fields
83
+ @Column({ type: "boolean", default: false, nullable: false })
84
+ is_replaced: boolean;
85
+
86
+ @Column({ type: "varchar", length: 255, nullable: true })
87
+ replacement_employee_name: string | null;
88
+
89
+ @Column({ type: "varchar", length: 100, nullable: true })
90
+ replacement_employee_id: string | null;
91
+
92
+ @Column({ type: "varchar", length: 50, nullable: true })
93
+ replacement_civil_id_card_number: string | null;
94
+
95
+ @Column({ type: "text", nullable: true })
96
+ replacement_reason: string | null;
97
+
98
+ @Column({ type: "integer", nullable: true })
99
+ replaced_by_user_id: number | null;
100
+
101
+ @Column({ type: "timestamp", nullable: true })
102
+ replaced_at: Date | null;
103
+
104
+ constructor(
105
+ user_id: number,
106
+ status: HrServiceRequestStatus = HrServiceRequestStatus.PENDING,
107
+ service_id?: number | null,
108
+ sub_service_id?: number | null,
109
+ req_user_department_id?: number | null,
110
+ req_user_section_id?: number | null,
111
+ req_user_position_id?: number | null,
112
+ description?: string | null,
113
+ reviewer_user_id?: number | null,
114
+ assigned_to_user_id?: number | null,
115
+ assigned_at?: Date | null,
116
+ workflow_execution_id?: string | null,
117
+ assigned_employee_name?: string,
118
+ civil_id_card_number?: string | null,
119
+ employee_id?: string,
120
+ current_job_position?: string,
121
+ assigned_job_position?: string,
122
+ start_date?: Date,
123
+ end_date?: Date,
124
+ assignment_allowance?: number | null,
125
+ phone_number?: string,
126
+ reason_for_request?: string,
127
+ is_replaced?: boolean,
128
+ replacement_employee_name?: string | null,
129
+ replacement_employee_id?: string | null,
130
+ replacement_civil_id_card_number?: string | null,
131
+ replacement_reason?: string | null,
132
+ replaced_by_user_id?: number | null,
133
+ replaced_at?: Date | null
134
+ ) {
135
+ super();
136
+ this.user_id = user_id;
137
+ this.status = status;
138
+ this.service_id = service_id || null;
139
+ this.sub_service_id = sub_service_id || null;
140
+ this.req_user_department_id = req_user_department_id || null;
141
+ this.req_user_section_id = req_user_section_id || null;
142
+ this.req_user_position_id = req_user_position_id || null;
143
+ this.description = description || null;
144
+ this.reviewer_user_id = reviewer_user_id || null;
145
+ this.assigned_to_user_id = assigned_to_user_id || null;
146
+ this.assigned_at = assigned_at || null;
147
+ this.workflow_execution_id = workflow_execution_id || null;
148
+ this.assigned_employee_name = assigned_employee_name || "";
149
+ this.civil_id_card_number = civil_id_card_number || null;
150
+ this.employee_id = employee_id || "";
151
+ this.current_job_position = current_job_position || "";
152
+ this.assigned_job_position = assigned_job_position || "";
153
+ this.start_date = start_date || new Date();
154
+ this.end_date = end_date || new Date();
155
+ this.assignment_allowance = assignment_allowance || null;
156
+ this.phone_number = phone_number || "";
157
+ this.reason_for_request = reason_for_request || "";
158
+ this.is_replaced = is_replaced || false;
159
+ this.replacement_employee_name = replacement_employee_name || null;
160
+ this.replacement_employee_id = replacement_employee_id || null;
161
+ this.replacement_civil_id_card_number = replacement_civil_id_card_number || null;
162
+ this.replacement_reason = replacement_reason || null;
163
+ this.replaced_by_user_id = replaced_by_user_id || null;
164
+ this.replaced_at = replaced_at || null;
165
+ }
166
+ }
167
+
@@ -76,6 +76,12 @@ export class ShiftAllowanceRequest extends BaseModel {
76
76
  @Column({ type: "date", nullable: false })
77
77
  shift_end_date: Date;
78
78
 
79
+ @Column({ type: "time", nullable: true })
80
+ start_time: string | null;
81
+
82
+ @Column({ type: "time", nullable: true })
83
+ end_time: string | null;
84
+
79
85
  @Column({ type: "text", nullable: true })
80
86
  reason_for_request: string | null;
81
87
 
@@ -99,6 +105,8 @@ export class ShiftAllowanceRequest extends BaseModel {
99
105
  allowance_value?: ShiftAllowanceValue,
100
106
  shift_start_date?: Date,
101
107
  shift_end_date?: Date,
108
+ start_time?: string | null,
109
+ end_time?: string | null,
102
110
  reason_for_request?: string | null
103
111
  ) {
104
112
  super();
@@ -121,6 +129,8 @@ export class ShiftAllowanceRequest extends BaseModel {
121
129
  this.allowance_value = allowance_value || ShiftAllowanceValue.TWENTY_TWO_PERCENT;
122
130
  this.shift_start_date = shift_start_date || new Date();
123
131
  this.shift_end_date = shift_end_date || new Date();
132
+ this.start_time = start_time || null;
133
+ this.end_time = end_time || null;
124
134
  this.reason_for_request = reason_for_request || null;
125
135
  }
126
136
  }