@platform-modules/civil-aviation-authority 2.3.96 → 2.3.97

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 (33) hide show
  1. package/.env +2 -4
  2. package/dist/data-source.js +2 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +1 -0
  5. package/dist/models/AnnualIncrementRequestEmployeeModel.d.ts +16 -0
  6. package/dist/models/AnnualIncrementRequestEmployeeModel.js +80 -0
  7. package/dist/models/AnnualIncrementRequestModel.d.ts +5 -4
  8. package/dist/models/AnnualIncrementRequestModel.js +17 -12
  9. package/dist/models/CashAllowanceLeaveRequestModel.d.ts +1 -0
  10. package/dist/models/CashAllowanceLeaveRequestModel.js +5 -0
  11. package/dist/models/ITApprovalSettings.d.ts +7 -0
  12. package/dist/models/ITApprovalSettings.js +40 -0
  13. package/dist/models/ITServicesTypesMuscatModel.d.ts +6 -0
  14. package/dist/models/ITServicesTypesMuscatModel.js +34 -0
  15. package/dist/models/ITServicesTypesSalalahModel.d.ts +6 -0
  16. package/dist/models/ITServicesTypesSalalahModel.js +34 -0
  17. package/dist/models/PromotionRequestModel.d.ts +1 -0
  18. package/dist/models/PromotionRequestModel.js +5 -0
  19. package/dist/models/ShiftAllowanceRequestModel.d.ts +1 -0
  20. package/dist/models/ShiftAllowanceRequestModel.js +6 -1
  21. package/dist/models/Workflows.d.ts +9 -0
  22. package/dist/models/Workflows.js +31 -0
  23. package/package.json +1 -1
  24. package/src/data-source.ts +10 -8
  25. package/src/index.ts +1 -0
  26. package/src/models/AnnualIncrementRequestEmployeeModel.ts +65 -0
  27. package/src/models/AnnualIncrementRequestModel.ts +25 -21
  28. package/src/models/CashAllowanceLeaveRequestModel.ts +11 -7
  29. package/src/models/HrServiceRequestModel.ts +193 -193
  30. package/src/models/PerformanceCyclePeriodModel.ts +23 -23
  31. package/src/models/PerformanceGoalMasterModel.ts +27 -27
  32. package/src/models/PromotionRequestModel.ts +11 -7
  33. package/src/models/ShiftAllowanceRequestModel.ts +5 -1
package/.env CHANGED
@@ -8,7 +8,5 @@
8
8
  DB_HOST=localhost
9
9
  DB_PORT=5432
10
10
  DB_USER=postgres
11
- DB_PASS=admin123
12
- DB_NAME=CAA
13
-
14
- TYPEORM_DATABASE_SYNC=true
11
+ DB_PASS=stevejobs
12
+ DB_NAME=CAA
@@ -133,6 +133,7 @@ const RequestForCoverageAttachmentModel_1 = require("./models/RequestForCoverage
133
133
  const CashAllowanceLeaveRequestModel_1 = require("./models/CashAllowanceLeaveRequestModel");
134
134
  const PromotionRequestModel_1 = require("./models/PromotionRequestModel");
135
135
  const AnnualIncrementRequestModel_1 = require("./models/AnnualIncrementRequestModel");
136
+ const AnnualIncrementRequestEmployeeModel_1 = require("./models/AnnualIncrementRequestEmployeeModel");
136
137
  const SkillsEnhancementRequestModel_1 = require("./models/SkillsEnhancementRequestModel");
137
138
  const CityMasterModel_1 = require("./models/CityMasterModel");
138
139
  const ResidentialUnitRentalRequestModel_1 = require("./models/ResidentialUnitRentalRequestModel");
@@ -271,6 +272,7 @@ exports.AppDataSource = new typeorm_1.DataSource({
271
272
  CashAllowanceLeaveRequestModel_1.CashAllowanceLeaveRequest,
272
273
  PromotionRequestModel_1.PromotionRequest,
273
274
  AnnualIncrementRequestModel_1.AnnualIncrementRequest,
275
+ AnnualIncrementRequestEmployeeModel_1.AnnualIncrementRequestEmployee,
274
276
  SkillsEnhancementRequestModel_1.SkillsEnhancementRequest,
275
277
  CityMasterModel_1.CityMaster,
276
278
  ResidentialUnitRentalRequestModel_1.ResidentialUnitRentalRequest,
package/dist/index.d.ts CHANGED
@@ -203,6 +203,7 @@ export * from './models/PromotionRequestModel';
203
203
  export { PromotionRequestStatus } from './models/PromotionRequestModel';
204
204
  export * from './models/AnnualIncrementRequestModel';
205
205
  export { AnnualIncrementRequestStatus } from './models/AnnualIncrementRequestModel';
206
+ export * from './models/AnnualIncrementRequestEmployeeModel';
206
207
  export * from './models/SkillsEnhancementRequestModel';
207
208
  export { SkillsEnhancementRequestStatus } from './models/SkillsEnhancementRequestModel';
208
209
  export * from './models/PerformanceManagementRequestModel';
package/dist/index.js CHANGED
@@ -308,6 +308,7 @@ Object.defineProperty(exports, "PromotionRequestStatus", { enumerable: true, get
308
308
  __exportStar(require("./models/AnnualIncrementRequestModel"), exports);
309
309
  var AnnualIncrementRequestModel_1 = require("./models/AnnualIncrementRequestModel");
310
310
  Object.defineProperty(exports, "AnnualIncrementRequestStatus", { enumerable: true, get: function () { return AnnualIncrementRequestModel_1.AnnualIncrementRequestStatus; } });
311
+ __exportStar(require("./models/AnnualIncrementRequestEmployeeModel"), exports);
311
312
  __exportStar(require("./models/SkillsEnhancementRequestModel"), exports);
312
313
  var SkillsEnhancementRequestModel_1 = require("./models/SkillsEnhancementRequestModel");
313
314
  Object.defineProperty(exports, "SkillsEnhancementRequestStatus", { enumerable: true, get: function () { return SkillsEnhancementRequestModel_1.SkillsEnhancementRequestStatus; } });
@@ -0,0 +1,16 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ import { AnnualIncrementRequest } from "./AnnualIncrementRequestModel";
3
+ export declare class AnnualIncrementRequestEmployee extends BaseModel {
4
+ request_id: number;
5
+ service_id: number | null;
6
+ sub_service_id: number | null;
7
+ employee_name: string;
8
+ employee_id: string;
9
+ allowance_year: number;
10
+ effective_date: Date;
11
+ current_basic_salary: number | null;
12
+ increment_percentage: number | null;
13
+ new_basic_salary: number | null;
14
+ request: AnnualIncrementRequest;
15
+ constructor(request_id: number, employee_name: string, employee_id: string, allowance_year: number, effective_date: Date, service_id?: number | null, sub_service_id?: number | null, current_basic_salary?: number | null, increment_percentage?: number | null, new_basic_salary?: number | null);
16
+ }
@@ -0,0 +1,80 @@
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.AnnualIncrementRequestEmployee = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ const AnnualIncrementRequestModel_1 = require("./AnnualIncrementRequestModel");
16
+ let AnnualIncrementRequestEmployee = class AnnualIncrementRequestEmployee extends BaseModel_1.BaseModel {
17
+ constructor(request_id, employee_name, employee_id, allowance_year, effective_date, service_id, sub_service_id, current_basic_salary, increment_percentage, new_basic_salary) {
18
+ super();
19
+ this.request_id = request_id;
20
+ this.service_id = service_id ?? null;
21
+ this.sub_service_id = sub_service_id ?? null;
22
+ this.employee_name = employee_name;
23
+ this.employee_id = employee_id;
24
+ this.allowance_year = allowance_year;
25
+ this.effective_date = effective_date;
26
+ this.current_basic_salary = current_basic_salary ?? null;
27
+ this.increment_percentage = increment_percentage ?? null;
28
+ this.new_basic_salary = new_basic_salary ?? null;
29
+ }
30
+ };
31
+ exports.AnnualIncrementRequestEmployee = AnnualIncrementRequestEmployee;
32
+ __decorate([
33
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
34
+ __metadata("design:type", Number)
35
+ ], AnnualIncrementRequestEmployee.prototype, "request_id", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
38
+ __metadata("design:type", Object)
39
+ ], AnnualIncrementRequestEmployee.prototype, "service_id", void 0);
40
+ __decorate([
41
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
42
+ __metadata("design:type", Object)
43
+ ], AnnualIncrementRequestEmployee.prototype, "sub_service_id", void 0);
44
+ __decorate([
45
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
46
+ __metadata("design:type", String)
47
+ ], AnnualIncrementRequestEmployee.prototype, "employee_name", void 0);
48
+ __decorate([
49
+ (0, typeorm_1.Column)({ type: "varchar", length: 100, nullable: false }),
50
+ __metadata("design:type", String)
51
+ ], AnnualIncrementRequestEmployee.prototype, "employee_id", void 0);
52
+ __decorate([
53
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
54
+ __metadata("design:type", Number)
55
+ ], AnnualIncrementRequestEmployee.prototype, "allowance_year", void 0);
56
+ __decorate([
57
+ (0, typeorm_1.Column)({ type: "date", nullable: false }),
58
+ __metadata("design:type", Date)
59
+ ], AnnualIncrementRequestEmployee.prototype, "effective_date", void 0);
60
+ __decorate([
61
+ (0, typeorm_1.Column)({ type: "decimal", precision: 10, scale: 3, nullable: true }),
62
+ __metadata("design:type", Object)
63
+ ], AnnualIncrementRequestEmployee.prototype, "current_basic_salary", void 0);
64
+ __decorate([
65
+ (0, typeorm_1.Column)({ type: "decimal", precision: 5, scale: 2, nullable: true }),
66
+ __metadata("design:type", Object)
67
+ ], AnnualIncrementRequestEmployee.prototype, "increment_percentage", void 0);
68
+ __decorate([
69
+ (0, typeorm_1.Column)({ type: "decimal", precision: 10, scale: 3, nullable: true }),
70
+ __metadata("design:type", Object)
71
+ ], AnnualIncrementRequestEmployee.prototype, "new_basic_salary", void 0);
72
+ __decorate([
73
+ (0, typeorm_1.ManyToOne)(() => AnnualIncrementRequestModel_1.AnnualIncrementRequest, { onDelete: "CASCADE" }),
74
+ (0, typeorm_1.JoinColumn)({ name: "request_id", referencedColumnName: "id" }),
75
+ __metadata("design:type", AnnualIncrementRequestModel_1.AnnualIncrementRequest)
76
+ ], AnnualIncrementRequestEmployee.prototype, "request", void 0);
77
+ exports.AnnualIncrementRequestEmployee = AnnualIncrementRequestEmployee = __decorate([
78
+ (0, typeorm_1.Entity)({ name: "annual_increment_request_employees" }),
79
+ __metadata("design:paramtypes", [Number, String, String, Number, Date, Object, Object, Object, Object, Object])
80
+ ], AnnualIncrementRequestEmployee);
@@ -20,10 +20,11 @@ export declare class AnnualIncrementRequest extends BaseModel {
20
20
  assigned_to_user_id: number | null;
21
21
  assigned_at: Date | null;
22
22
  workflow_execution_id: string | null;
23
- employee_name: string;
24
- employee_id: string;
25
- allowance_year: number;
26
- effective_date: Date;
23
+ reference_number: string | null;
24
+ employee_name: string | null;
25
+ employee_id: string | null;
26
+ allowance_year: number | null;
27
+ effective_date: Date | null;
27
28
  current_basic_salary: number | null;
28
29
  increment_percentage: number | null;
29
30
  new_basic_salary: number | null;
@@ -36,10 +36,11 @@ let AnnualIncrementRequest = class AnnualIncrementRequest extends BaseModel_1.Ba
36
36
  this.assigned_to_user_id = assigned_to_user_id || null;
37
37
  this.assigned_at = assigned_at || null;
38
38
  this.workflow_execution_id = workflow_execution_id || null;
39
- this.employee_name = employee_name || "";
40
- this.employee_id = employee_id || "";
41
- this.allowance_year = allowance_year || new Date().getFullYear();
42
- this.effective_date = effective_date || new Date();
39
+ this.reference_number = null;
40
+ this.employee_name = employee_name || null;
41
+ this.employee_id = employee_id || null;
42
+ this.allowance_year = allowance_year || null;
43
+ this.effective_date = effective_date || null;
43
44
  this.current_basic_salary = current_basic_salary || null;
44
45
  this.increment_percentage = increment_percentage || null;
45
46
  this.new_basic_salary = new_basic_salary || null;
@@ -95,20 +96,24 @@ __decorate([
95
96
  __metadata("design:type", Object)
96
97
  ], AnnualIncrementRequest.prototype, "workflow_execution_id", void 0);
97
98
  __decorate([
98
- (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
99
- __metadata("design:type", String)
99
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
100
+ __metadata("design:type", Object)
101
+ ], AnnualIncrementRequest.prototype, "reference_number", void 0);
102
+ __decorate([
103
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
104
+ __metadata("design:type", Object)
100
105
  ], AnnualIncrementRequest.prototype, "employee_name", void 0);
101
106
  __decorate([
102
- (0, typeorm_1.Column)({ type: "varchar", length: 100, nullable: false }),
103
- __metadata("design:type", String)
107
+ (0, typeorm_1.Column)({ type: "varchar", length: 100, nullable: true }),
108
+ __metadata("design:type", Object)
104
109
  ], AnnualIncrementRequest.prototype, "employee_id", void 0);
105
110
  __decorate([
106
- (0, typeorm_1.Column)({ type: "integer", nullable: false }),
107
- __metadata("design:type", Number)
111
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
112
+ __metadata("design:type", Object)
108
113
  ], AnnualIncrementRequest.prototype, "allowance_year", void 0);
109
114
  __decorate([
110
- (0, typeorm_1.Column)({ type: "date", nullable: false }),
111
- __metadata("design:type", Date)
115
+ (0, typeorm_1.Column)({ type: "date", nullable: true }),
116
+ __metadata("design:type", Object)
112
117
  ], AnnualIncrementRequest.prototype, "effective_date", void 0);
113
118
  __decorate([
114
119
  (0, typeorm_1.Column)({ type: "decimal", precision: 10, scale: 3, nullable: true }),
@@ -20,6 +20,7 @@ export declare class CashAllowanceLeaveRequest extends BaseModel {
20
20
  assigned_to_user_id: number | null;
21
21
  assigned_at: Date | null;
22
22
  workflow_execution_id: string | null;
23
+ reference_number: string | null;
23
24
  employee_name: string;
24
25
  employee_id: string;
25
26
  job_title: string;
@@ -36,6 +36,7 @@ let CashAllowanceLeaveRequest = class CashAllowanceLeaveRequest extends BaseMode
36
36
  this.assigned_to_user_id = assigned_to_user_id || null;
37
37
  this.assigned_at = assigned_at || null;
38
38
  this.workflow_execution_id = workflow_execution_id || null;
39
+ this.reference_number = null;
39
40
  this.employee_name = employee_name || "";
40
41
  this.employee_id = employee_id || "";
41
42
  this.job_title = job_title || "";
@@ -96,6 +97,10 @@ __decorate([
96
97
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
97
98
  __metadata("design:type", Object)
98
99
  ], CashAllowanceLeaveRequest.prototype, "workflow_execution_id", void 0);
100
+ __decorate([
101
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
102
+ __metadata("design:type", Object)
103
+ ], CashAllowanceLeaveRequest.prototype, "reference_number", void 0);
99
104
  __decorate([
100
105
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
101
106
  __metadata("design:type", String)
@@ -0,0 +1,7 @@
1
+ import { BaseModel } from './BaseModel';
2
+ export declare class ITApprovalSettings extends BaseModel {
3
+ level: number;
4
+ approval_role_id: number;
5
+ workflow_id: number;
6
+ constructor(level: number, approval_role_id: number, workflow_id: number);
7
+ }
@@ -0,0 +1,40 @@
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.ITApprovalSettings = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ let ITApprovalSettings = class ITApprovalSettings extends BaseModel_1.BaseModel {
16
+ constructor(level, approval_role_id, workflow_id) {
17
+ super();
18
+ this.level = level;
19
+ this.approval_role_id = approval_role_id;
20
+ this.workflow_id = workflow_id;
21
+ }
22
+ };
23
+ exports.ITApprovalSettings = ITApprovalSettings;
24
+ __decorate([
25
+ (0, typeorm_1.Column)({ type: 'int', nullable: false }),
26
+ __metadata("design:type", Number)
27
+ ], ITApprovalSettings.prototype, "level", void 0);
28
+ __decorate([
29
+ (0, typeorm_1.Column)({ type: 'int', nullable: false }),
30
+ __metadata("design:type", Number)
31
+ ], ITApprovalSettings.prototype, "approval_role_id", void 0);
32
+ __decorate([
33
+ (0, typeorm_1.Column)({ type: 'int', nullable: false }),
34
+ __metadata("design:type", Number)
35
+ ], ITApprovalSettings.prototype, "workflow_id", void 0);
36
+ exports.ITApprovalSettings = ITApprovalSettings = __decorate([
37
+ (0, typeorm_1.Entity)({ name: 'it_approval_settings' }),
38
+ (0, typeorm_1.Unique)(['workflow_id', 'level']),
39
+ __metadata("design:paramtypes", [Number, Number, Number])
40
+ ], ITApprovalSettings);
@@ -0,0 +1,6 @@
1
+ import { BaseModel } from './BaseModel';
2
+ export declare class ITServicesTypesMuscat extends BaseModel {
3
+ name: string;
4
+ name_in_arabic: string;
5
+ constructor(name: string, name_in_arabic: string);
6
+ }
@@ -0,0 +1,34 @@
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.ITServicesTypesMuscat = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ let ITServicesTypesMuscat = class ITServicesTypesMuscat extends BaseModel_1.BaseModel {
16
+ constructor(name, name_in_arabic) {
17
+ super();
18
+ this.name = name;
19
+ this.name_in_arabic = name_in_arabic;
20
+ }
21
+ };
22
+ exports.ITServicesTypesMuscat = ITServicesTypesMuscat;
23
+ __decorate([
24
+ (0, typeorm_1.Column)({ nullable: false }),
25
+ __metadata("design:type", String)
26
+ ], ITServicesTypesMuscat.prototype, "name", void 0);
27
+ __decorate([
28
+ (0, typeorm_1.Column)({ nullable: false }),
29
+ __metadata("design:type", String)
30
+ ], ITServicesTypesMuscat.prototype, "name_in_arabic", void 0);
31
+ exports.ITServicesTypesMuscat = ITServicesTypesMuscat = __decorate([
32
+ (0, typeorm_1.Entity)({ name: 'it_services_types_muscat' }),
33
+ __metadata("design:paramtypes", [String, String])
34
+ ], ITServicesTypesMuscat);
@@ -0,0 +1,6 @@
1
+ import { BaseModel } from './BaseModel';
2
+ export declare class ITServicesTypesSalalah extends BaseModel {
3
+ name: string;
4
+ name_in_arabic: string;
5
+ constructor(name: string, name_in_arabic: string);
6
+ }
@@ -0,0 +1,34 @@
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.ITServicesTypesSalalah = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ let ITServicesTypesSalalah = class ITServicesTypesSalalah extends BaseModel_1.BaseModel {
16
+ constructor(name, name_in_arabic) {
17
+ super();
18
+ this.name = name;
19
+ this.name_in_arabic = name_in_arabic;
20
+ }
21
+ };
22
+ exports.ITServicesTypesSalalah = ITServicesTypesSalalah;
23
+ __decorate([
24
+ (0, typeorm_1.Column)({ nullable: false }),
25
+ __metadata("design:type", String)
26
+ ], ITServicesTypesSalalah.prototype, "name", void 0);
27
+ __decorate([
28
+ (0, typeorm_1.Column)({ nullable: false }),
29
+ __metadata("design:type", String)
30
+ ], ITServicesTypesSalalah.prototype, "name_in_arabic", void 0);
31
+ exports.ITServicesTypesSalalah = ITServicesTypesSalalah = __decorate([
32
+ (0, typeorm_1.Entity)({ name: 'it_services_types_salalah' }),
33
+ __metadata("design:paramtypes", [String, String])
34
+ ], ITServicesTypesSalalah);
@@ -20,6 +20,7 @@ export declare class PromotionRequest extends BaseModel {
20
20
  assigned_to_user_id: number | null;
21
21
  assigned_at: Date | null;
22
22
  workflow_execution_id: string | null;
23
+ reference_number: string | null;
23
24
  employee_name: string;
24
25
  employee_id: string;
25
26
  current_job_title: string;
@@ -36,6 +36,7 @@ let PromotionRequest = class PromotionRequest extends BaseModel_1.BaseModel {
36
36
  this.assigned_to_user_id = assigned_to_user_id || null;
37
37
  this.assigned_at = assigned_at || null;
38
38
  this.workflow_execution_id = workflow_execution_id || null;
39
+ this.reference_number = null;
39
40
  this.employee_name = employee_name || "";
40
41
  this.employee_id = employee_id || "";
41
42
  this.current_job_title = current_job_title || "";
@@ -95,6 +96,10 @@ __decorate([
95
96
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
96
97
  __metadata("design:type", Object)
97
98
  ], PromotionRequest.prototype, "workflow_execution_id", void 0);
99
+ __decorate([
100
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
101
+ __metadata("design:type", Object)
102
+ ], PromotionRequest.prototype, "reference_number", void 0);
98
103
  __decorate([
99
104
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
100
105
  __metadata("design:type", String)
@@ -25,6 +25,7 @@ export declare class ShiftAllowanceRequest extends BaseModel {
25
25
  assigned_to_user_id: number | null;
26
26
  assigned_at: Date | null;
27
27
  workflow_execution_id: string | null;
28
+ reference_number: string | null;
28
29
  employee_name: string;
29
30
  employee_id: string;
30
31
  job_title: string;
@@ -42,6 +42,7 @@ let ShiftAllowanceRequest = class ShiftAllowanceRequest extends BaseModel_1.Base
42
42
  this.assigned_to_user_id = assigned_to_user_id || null;
43
43
  this.assigned_at = assigned_at || null;
44
44
  this.workflow_execution_id = workflow_execution_id || null;
45
+ this.reference_number = null;
45
46
  this.employee_name = employee_name || "";
46
47
  this.employee_id = employee_id || "";
47
48
  this.job_title = job_title || "";
@@ -103,6 +104,10 @@ __decorate([
103
104
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
104
105
  __metadata("design:type", Object)
105
106
  ], ShiftAllowanceRequest.prototype, "workflow_execution_id", void 0);
107
+ __decorate([
108
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
109
+ __metadata("design:type", Object)
110
+ ], ShiftAllowanceRequest.prototype, "reference_number", void 0);
106
111
  __decorate([
107
112
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
108
113
  __metadata("design:type", String)
@@ -128,7 +133,7 @@ __decorate([
128
133
  __metadata("design:type", Date)
129
134
  ], ShiftAllowanceRequest.prototype, "shift_start_date", void 0);
130
135
  __decorate([
131
- (0, typeorm_1.Column)({ type: "date", nullable: false }),
136
+ (0, typeorm_1.Column)({ type: "date", nullable: true }),
132
137
  __metadata("design:type", Date)
133
138
  ], ShiftAllowanceRequest.prototype, "shift_end_date", void 0);
134
139
  __decorate([
@@ -0,0 +1,9 @@
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
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ // import { Column, Entity, Unique } from "typeorm";
3
+ // import { BaseModel } from './BaseModel';
4
+ // @Entity({ name: 'workflows' })
5
+ // @Unique(['service_id', 'sub_service_id', 'request_for'])
6
+ // export class Workflows extends BaseModel {
7
+ // @Column({ type: 'varchar', length: 100, nullable: false })
8
+ // name: string;
9
+ // @Column({ type: 'bigint', nullable: false })
10
+ // service_id: number;
11
+ // @Column({ type: 'bigint', nullable: false })
12
+ // sub_service_id: number;
13
+ // @Column({ type: 'varchar', length: 20, nullable: false })
14
+ // request_for: string; // 'Self' | 'Behalf of' | 'Internal'
15
+ // @Column({ type: 'int', nullable: false })
16
+ // levels: number;
17
+ // constructor(
18
+ // name: string,
19
+ // service_id: number,
20
+ // sub_service_id: number,
21
+ // request_for: string,
22
+ // levels: number,
23
+ // ) {
24
+ // super();
25
+ // this.name = name;
26
+ // this.service_id = service_id;
27
+ // this.sub_service_id = sub_service_id;
28
+ // this.request_for = request_for;
29
+ // this.levels = levels;
30
+ // }
31
+ // }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platform-modules/civil-aviation-authority",
3
- "version": "2.3.96",
3
+ "version": "2.3.97",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
@@ -128,10 +128,11 @@ import { RequestForCoverageWorkFlow } from './models/RequestForCoverageWorkflowM
128
128
  import { RequestForCoverageApprovalDetails } from './models/RequestForCoverageApprovalModel';
129
129
  import { RequestForCoverageRequestChat } from './models/RequestForCoverageChatModel';
130
130
  import { RequestForCoverageRequestAttachment } from './models/RequestForCoverageAttachmentModel';
131
- import { CashAllowanceLeaveRequest } from './models/CashAllowanceLeaveRequestModel';
132
- import { PromotionRequest } from './models/PromotionRequestModel';
133
- import { AnnualIncrementRequest } from './models/AnnualIncrementRequestModel';
134
- import { SkillsEnhancementRequest } from './models/SkillsEnhancementRequestModel';
131
+ import { CashAllowanceLeaveRequest } from './models/CashAllowanceLeaveRequestModel';
132
+ import { PromotionRequest } from './models/PromotionRequestModel';
133
+ import { AnnualIncrementRequest } from './models/AnnualIncrementRequestModel';
134
+ import { AnnualIncrementRequestEmployee } from './models/AnnualIncrementRequestEmployeeModel';
135
+ import { SkillsEnhancementRequest } from './models/SkillsEnhancementRequestModel';
135
136
  import { CityMaster } from './models/CityMasterModel';
136
137
  import { ResidentialUnitRentalRequest } from './models/ResidentialUnitRentalRequestModel';
137
138
  import { ResidentialUnitRentalWorkflow } from './models/ResidentialUnitRentalWorkflowModel';
@@ -267,10 +268,11 @@ export const AppDataSource = new DataSource({
267
268
  AssignTasksEmpWorkFlow,
268
269
  AssignTasksEmpRequestAttachment,
269
270
  AssignTasksEmpRequestChat,
270
- CashAllowanceLeaveRequest,
271
- PromotionRequest,
272
- AnnualIncrementRequest,
273
- SkillsEnhancementRequest,
271
+ CashAllowanceLeaveRequest,
272
+ PromotionRequest,
273
+ AnnualIncrementRequest,
274
+ AnnualIncrementRequestEmployee,
275
+ SkillsEnhancementRequest,
274
276
  CityMaster,
275
277
  ResidentialUnitRentalRequest,
276
278
  ResidentialUnitRentalWorkflow,
package/src/index.ts CHANGED
@@ -235,6 +235,7 @@ export { PromotionRequestStatus } from './models/PromotionRequestModel';
235
235
  // Annual Increment (Periodic Allowance) Request Service
236
236
  export * from './models/AnnualIncrementRequestModel';
237
237
  export { AnnualIncrementRequestStatus } from './models/AnnualIncrementRequestModel';
238
+ export * from './models/AnnualIncrementRequestEmployeeModel';
238
239
 
239
240
  export * from './models/SkillsEnhancementRequestModel';
240
241
  export { SkillsEnhancementRequestStatus } from './models/SkillsEnhancementRequestModel';
@@ -0,0 +1,65 @@
1
+ import { Column, Entity, JoinColumn, ManyToOne } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+ import { AnnualIncrementRequest } from "./AnnualIncrementRequestModel";
4
+
5
+ @Entity({ name: "annual_increment_request_employees" })
6
+ export class AnnualIncrementRequestEmployee extends BaseModel {
7
+ @Column({ type: "integer", nullable: false })
8
+ request_id: number;
9
+
10
+ @Column({ type: "integer", nullable: true })
11
+ service_id: number | null;
12
+
13
+ @Column({ type: "integer", nullable: true })
14
+ sub_service_id: number | null;
15
+
16
+ @Column({ type: "varchar", length: 255, nullable: false })
17
+ employee_name: string;
18
+
19
+ @Column({ type: "varchar", length: 100, nullable: false })
20
+ employee_id: string;
21
+
22
+ @Column({ type: "integer", nullable: false })
23
+ allowance_year: number;
24
+
25
+ @Column({ type: "date", nullable: false })
26
+ effective_date: Date;
27
+
28
+ @Column({ type: "decimal", precision: 10, scale: 3, nullable: true })
29
+ current_basic_salary: number | null;
30
+
31
+ @Column({ type: "decimal", precision: 5, scale: 2, nullable: true })
32
+ increment_percentage: number | null;
33
+
34
+ @Column({ type: "decimal", precision: 10, scale: 3, nullable: true })
35
+ new_basic_salary: number | null;
36
+
37
+ @ManyToOne(() => AnnualIncrementRequest, { onDelete: "CASCADE" })
38
+ @JoinColumn({ name: "request_id", referencedColumnName: "id" })
39
+ request: AnnualIncrementRequest;
40
+
41
+ constructor(
42
+ request_id: number,
43
+ employee_name: string,
44
+ employee_id: string,
45
+ allowance_year: number,
46
+ effective_date: Date,
47
+ service_id?: number | null,
48
+ sub_service_id?: number | null,
49
+ current_basic_salary?: number | null,
50
+ increment_percentage?: number | null,
51
+ new_basic_salary?: number | null
52
+ ) {
53
+ super();
54
+ this.request_id = request_id;
55
+ this.service_id = service_id ?? null;
56
+ this.sub_service_id = sub_service_id ?? null;
57
+ this.employee_name = employee_name;
58
+ this.employee_id = employee_id;
59
+ this.allowance_year = allowance_year;
60
+ this.effective_date = effective_date;
61
+ this.current_basic_salary = current_basic_salary ?? null;
62
+ this.increment_percentage = increment_percentage ?? null;
63
+ this.new_basic_salary = new_basic_salary ?? null;
64
+ }
65
+ }
@@ -45,21 +45,24 @@ export class AnnualIncrementRequest extends BaseModel {
45
45
  @Column({ type: "timestamp", nullable: true })
46
46
  assigned_at: Date | null;
47
47
 
48
- @Column({ type: "varchar", length: 255, nullable: true })
49
- workflow_execution_id: string | null;
50
-
48
+ @Column({ type: "varchar", length: 255, nullable: true })
49
+ workflow_execution_id: string | null;
50
+
51
+ @Column({ type: "varchar", length: 255, nullable: true })
52
+ reference_number: string | null;
53
+
51
54
  // Annual Increment specific fields
52
- @Column({ type: "varchar", length: 255, nullable: false })
53
- employee_name: string;
54
-
55
- @Column({ type: "varchar", length: 100, nullable: false })
56
- employee_id: string;
57
-
58
- @Column({ type: "integer", nullable: false })
59
- allowance_year: number;
60
-
61
- @Column({ type: "date", nullable: false })
62
- effective_date: Date;
55
+ @Column({ type: "varchar", length: 255, nullable: true })
56
+ employee_name: string | null;
57
+
58
+ @Column({ type: "varchar", length: 100, nullable: true })
59
+ employee_id: string | null;
60
+
61
+ @Column({ type: "integer", nullable: true })
62
+ allowance_year: number | null;
63
+
64
+ @Column({ type: "date", nullable: true })
65
+ effective_date: Date | null;
63
66
 
64
67
  @Column({ type: "decimal", precision: 10, scale: 3, nullable: true })
65
68
  current_basic_salary: number | null;
@@ -101,13 +104,14 @@ export class AnnualIncrementRequest extends BaseModel {
101
104
  this.req_user_position_id = req_user_position_id || null;
102
105
  this.description = description || null;
103
106
  this.reviewer_user_id = reviewer_user_id || null;
104
- this.assigned_to_user_id = assigned_to_user_id || null;
105
- this.assigned_at = assigned_at || null;
106
- this.workflow_execution_id = workflow_execution_id || null;
107
- this.employee_name = employee_name || "";
108
- this.employee_id = employee_id || "";
109
- this.allowance_year = allowance_year || new Date().getFullYear();
110
- this.effective_date = effective_date || new Date();
107
+ this.assigned_to_user_id = assigned_to_user_id || null;
108
+ this.assigned_at = assigned_at || null;
109
+ this.workflow_execution_id = workflow_execution_id || null;
110
+ this.reference_number = null;
111
+ this.employee_name = employee_name || null;
112
+ this.employee_id = employee_id || null;
113
+ this.allowance_year = allowance_year || null;
114
+ this.effective_date = effective_date || null;
111
115
  this.current_basic_salary = current_basic_salary || null;
112
116
  this.increment_percentage = increment_percentage || null;
113
117
  this.new_basic_salary = new_basic_salary || null;
@@ -45,9 +45,12 @@ export class CashAllowanceLeaveRequest extends BaseModel {
45
45
  @Column({ type: "timestamp", nullable: true })
46
46
  assigned_at: Date | null;
47
47
 
48
- @Column({ type: "varchar", length: 255, nullable: true })
49
- workflow_execution_id: string | null;
50
-
48
+ @Column({ type: "varchar", length: 255, nullable: true })
49
+ workflow_execution_id: string | null;
50
+
51
+ @Column({ type: "varchar", length: 255, nullable: true })
52
+ reference_number: string | null;
53
+
51
54
  // Cash Allowance for Leave specific fields
52
55
  @Column({ type: "varchar", length: 255, nullable: false })
53
56
  employee_name: string;
@@ -109,10 +112,11 @@ export class CashAllowanceLeaveRequest extends BaseModel {
109
112
  this.req_user_position_id = req_user_position_id || null;
110
113
  this.description = description || null;
111
114
  this.reviewer_user_id = reviewer_user_id || null;
112
- this.assigned_to_user_id = assigned_to_user_id || null;
113
- this.assigned_at = assigned_at || null;
114
- this.workflow_execution_id = workflow_execution_id || null;
115
- this.employee_name = employee_name || "";
115
+ this.assigned_to_user_id = assigned_to_user_id || null;
116
+ this.assigned_at = assigned_at || null;
117
+ this.workflow_execution_id = workflow_execution_id || null;
118
+ this.reference_number = null;
119
+ this.employee_name = employee_name || "";
116
120
  this.employee_id = employee_id || "";
117
121
  this.job_title = job_title || "";
118
122
  this.salary_grade = salary_grade || "";
@@ -1,193 +1,193 @@
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 - Store REPLACEMENT details (ORIGINAL details above remain unchanged)
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: "varchar", length: 255, nullable: true })
96
- replacement_current_job_position: string | null;
97
-
98
- @Column({ type: "varchar", length: 255, nullable: true })
99
- replacement_assigned_job_position: string | null;
100
-
101
- @Column({ type: "date", nullable: true })
102
- replacement_start_date: Date | null;
103
-
104
- @Column({ type: "date", nullable: true })
105
- replacement_end_date: Date | null;
106
-
107
- @Column({ type: "decimal", precision: 5, scale: 2, nullable: true })
108
- replacement_assignment_allowance: number | null;
109
-
110
- @Column({ type: "text", nullable: true })
111
- replacement_reason: string | null;
112
-
113
- @Column({ type: "integer", nullable: true })
114
- replaced_by_user_id: number | null;
115
-
116
- @Column({ type: "timestamp", nullable: true })
117
- replaced_at: Date | null;
118
-
119
- constructor(
120
- user_id: number,
121
- status: HrServiceRequestStatus = HrServiceRequestStatus.PENDING,
122
- service_id?: number | null,
123
- sub_service_id?: number | null,
124
- req_user_department_id?: number | null,
125
- req_user_section_id?: number | null,
126
- req_user_position_id?: number | null,
127
- description?: string | null,
128
- reviewer_user_id?: number | null,
129
- assigned_to_user_id?: number | null,
130
- assigned_at?: Date | null,
131
- workflow_execution_id?: string | null,
132
- assigned_employee_name?: string,
133
- civil_id_card_number?: string | null,
134
- employee_id?: string,
135
- current_job_position?: string,
136
- assigned_job_position?: string,
137
- start_date?: Date,
138
- end_date?: Date,
139
- assignment_allowance?: number | null,
140
- phone_number?: string,
141
- reason_for_request?: string,
142
- is_replaced?: boolean,
143
- replacement_employee_name?: string | null,
144
- replacement_employee_id?: string | null,
145
- replacement_civil_id_card_number?: string | null,
146
- replacement_current_job_position?: string | null,
147
- replacement_assigned_job_position?: string | null,
148
- replacement_start_date?: Date | null,
149
- replacement_end_date?: Date | null,
150
- replacement_assignment_allowance?: number | null,
151
- replacement_reason?: string | null,
152
- replaced_by_user_id?: number | null,
153
- replaced_at?: Date | null
154
- ) {
155
- super();
156
- this.user_id = user_id;
157
- this.status = status;
158
- this.service_id = service_id || null;
159
- this.sub_service_id = sub_service_id || null;
160
- this.req_user_department_id = req_user_department_id || null;
161
- this.req_user_section_id = req_user_section_id || null;
162
- this.req_user_position_id = req_user_position_id || null;
163
- this.description = description || null;
164
- this.reviewer_user_id = reviewer_user_id || null;
165
- this.assigned_to_user_id = assigned_to_user_id || null;
166
- this.assigned_at = assigned_at || null;
167
- this.workflow_execution_id = workflow_execution_id || null;
168
- this.assigned_employee_name = assigned_employee_name || "";
169
- this.civil_id_card_number = civil_id_card_number || null;
170
- this.employee_id = employee_id || "";
171
- this.current_job_position = current_job_position || "";
172
- this.assigned_job_position = assigned_job_position || "";
173
- this.start_date = start_date || new Date();
174
- this.end_date = end_date || new Date();
175
- this.assignment_allowance = assignment_allowance || null;
176
- this.phone_number = phone_number || "";
177
- this.reason_for_request = reason_for_request || "";
178
- // Replacement fields initialization
179
- this.is_replaced = is_replaced || false;
180
- this.replacement_employee_name = replacement_employee_name || null;
181
- this.replacement_employee_id = replacement_employee_id || null;
182
- this.replacement_civil_id_card_number = replacement_civil_id_card_number || null;
183
- this.replacement_current_job_position = replacement_current_job_position || null;
184
- this.replacement_assigned_job_position = replacement_assigned_job_position || null;
185
- this.replacement_start_date = replacement_start_date || null;
186
- this.replacement_end_date = replacement_end_date || null;
187
- this.replacement_assignment_allowance = replacement_assignment_allowance || null;
188
- this.replacement_reason = replacement_reason || null;
189
- this.replaced_by_user_id = replaced_by_user_id || null;
190
- this.replaced_at = replaced_at || null;
191
- }
192
- }
193
-
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 - Store REPLACEMENT details (ORIGINAL details above remain unchanged)
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: "varchar", length: 255, nullable: true })
96
+ replacement_current_job_position: string | null;
97
+
98
+ @Column({ type: "varchar", length: 255, nullable: true })
99
+ replacement_assigned_job_position: string | null;
100
+
101
+ @Column({ type: "date", nullable: true })
102
+ replacement_start_date: Date | null;
103
+
104
+ @Column({ type: "date", nullable: true })
105
+ replacement_end_date: Date | null;
106
+
107
+ @Column({ type: "decimal", precision: 5, scale: 2, nullable: true })
108
+ replacement_assignment_allowance: number | null;
109
+
110
+ @Column({ type: "text", nullable: true })
111
+ replacement_reason: string | null;
112
+
113
+ @Column({ type: "integer", nullable: true })
114
+ replaced_by_user_id: number | null;
115
+
116
+ @Column({ type: "timestamp", nullable: true })
117
+ replaced_at: Date | null;
118
+
119
+ constructor(
120
+ user_id: number,
121
+ status: HrServiceRequestStatus = HrServiceRequestStatus.PENDING,
122
+ service_id?: number | null,
123
+ sub_service_id?: number | null,
124
+ req_user_department_id?: number | null,
125
+ req_user_section_id?: number | null,
126
+ req_user_position_id?: number | null,
127
+ description?: string | null,
128
+ reviewer_user_id?: number | null,
129
+ assigned_to_user_id?: number | null,
130
+ assigned_at?: Date | null,
131
+ workflow_execution_id?: string | null,
132
+ assigned_employee_name?: string,
133
+ civil_id_card_number?: string | null,
134
+ employee_id?: string,
135
+ current_job_position?: string,
136
+ assigned_job_position?: string,
137
+ start_date?: Date,
138
+ end_date?: Date,
139
+ assignment_allowance?: number | null,
140
+ phone_number?: string,
141
+ reason_for_request?: string,
142
+ is_replaced?: boolean,
143
+ replacement_employee_name?: string | null,
144
+ replacement_employee_id?: string | null,
145
+ replacement_civil_id_card_number?: string | null,
146
+ replacement_current_job_position?: string | null,
147
+ replacement_assigned_job_position?: string | null,
148
+ replacement_start_date?: Date | null,
149
+ replacement_end_date?: Date | null,
150
+ replacement_assignment_allowance?: number | null,
151
+ replacement_reason?: string | null,
152
+ replaced_by_user_id?: number | null,
153
+ replaced_at?: Date | null
154
+ ) {
155
+ super();
156
+ this.user_id = user_id;
157
+ this.status = status;
158
+ this.service_id = service_id || null;
159
+ this.sub_service_id = sub_service_id || null;
160
+ this.req_user_department_id = req_user_department_id || null;
161
+ this.req_user_section_id = req_user_section_id || null;
162
+ this.req_user_position_id = req_user_position_id || null;
163
+ this.description = description || null;
164
+ this.reviewer_user_id = reviewer_user_id || null;
165
+ this.assigned_to_user_id = assigned_to_user_id || null;
166
+ this.assigned_at = assigned_at || null;
167
+ this.workflow_execution_id = workflow_execution_id || null;
168
+ this.assigned_employee_name = assigned_employee_name || "";
169
+ this.civil_id_card_number = civil_id_card_number || null;
170
+ this.employee_id = employee_id || "";
171
+ this.current_job_position = current_job_position || "";
172
+ this.assigned_job_position = assigned_job_position || "";
173
+ this.start_date = start_date || new Date();
174
+ this.end_date = end_date || new Date();
175
+ this.assignment_allowance = assignment_allowance || null;
176
+ this.phone_number = phone_number || "";
177
+ this.reason_for_request = reason_for_request || "";
178
+ // Replacement fields initialization
179
+ this.is_replaced = is_replaced || false;
180
+ this.replacement_employee_name = replacement_employee_name || null;
181
+ this.replacement_employee_id = replacement_employee_id || null;
182
+ this.replacement_civil_id_card_number = replacement_civil_id_card_number || null;
183
+ this.replacement_current_job_position = replacement_current_job_position || null;
184
+ this.replacement_assigned_job_position = replacement_assigned_job_position || null;
185
+ this.replacement_start_date = replacement_start_date || null;
186
+ this.replacement_end_date = replacement_end_date || null;
187
+ this.replacement_assignment_allowance = replacement_assignment_allowance || null;
188
+ this.replacement_reason = replacement_reason || null;
189
+ this.replaced_by_user_id = replaced_by_user_id || null;
190
+ this.replaced_at = replaced_at || null;
191
+ }
192
+ }
193
+
@@ -1,23 +1,23 @@
1
- import { Column, Entity, Index } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- @Entity({ name: "performance_cycle_periods" })
5
- @Index("uq_performance_cycle_period", ["cycle_period", "cycle_year"], { unique: true })
6
- export class PerformanceCyclePeriod extends BaseModel {
7
- @Column({ type: "varchar", length: 50, nullable: false })
8
- cycle_period: string;
9
-
10
- @Column({ type: "integer", nullable: false })
11
- cycle_year: number;
12
-
13
- @Column({ type: "boolean", default: false })
14
- is_active: boolean;
15
-
16
- constructor(cycle_period?: string, cycle_year?: number) {
17
- super();
18
- this.cycle_period = cycle_period || "";
19
- this.cycle_year = cycle_year || new Date().getFullYear();
20
- this.is_active = false;
21
- }
22
- }
23
-
1
+ import { Column, Entity, Index } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "performance_cycle_periods" })
5
+ @Index("uq_performance_cycle_period", ["cycle_period", "cycle_year"], { unique: true })
6
+ export class PerformanceCyclePeriod extends BaseModel {
7
+ @Column({ type: "varchar", length: 50, nullable: false })
8
+ cycle_period: string;
9
+
10
+ @Column({ type: "integer", nullable: false })
11
+ cycle_year: number;
12
+
13
+ @Column({ type: "boolean", default: false })
14
+ is_active: boolean;
15
+
16
+ constructor(cycle_period?: string, cycle_year?: number) {
17
+ super();
18
+ this.cycle_period = cycle_period || "";
19
+ this.cycle_year = cycle_year || new Date().getFullYear();
20
+ this.is_active = false;
21
+ }
22
+ }
23
+
@@ -1,27 +1,27 @@
1
- import { Column, Entity, Index } from "typeorm";
2
- import { BaseModel } from "./BaseModel";
3
-
4
- @Entity({ name: "performance_management_goals" })
5
- export class PerformanceGoalMaster extends BaseModel {
6
- @Column({ type: "varchar", length: 255, nullable: false })
7
- goal_title: string;
8
-
9
- @Column({ type: "text", nullable: true })
10
- goal_description: string | null;
11
-
12
- @Column({ type: "integer", nullable: false })
13
- @Index("idx_performance_goal_cycle_period_id")
14
- cycle_period_id: number;
15
-
16
- @Column({ type: "boolean", default: true })
17
- is_active: boolean;
18
-
19
- constructor(goal_title?: string, goal_description?: string | null, cycle_period_id?: number) {
20
- super();
21
- this.goal_title = goal_title || "";
22
- this.goal_description = goal_description || null;
23
- this.cycle_period_id = cycle_period_id || 0;
24
- this.is_active = true;
25
- }
26
- }
27
-
1
+ import { Column, Entity, Index } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "performance_management_goals" })
5
+ export class PerformanceGoalMaster extends BaseModel {
6
+ @Column({ type: "varchar", length: 255, nullable: false })
7
+ goal_title: string;
8
+
9
+ @Column({ type: "text", nullable: true })
10
+ goal_description: string | null;
11
+
12
+ @Column({ type: "integer", nullable: false })
13
+ @Index("idx_performance_goal_cycle_period_id")
14
+ cycle_period_id: number;
15
+
16
+ @Column({ type: "boolean", default: true })
17
+ is_active: boolean;
18
+
19
+ constructor(goal_title?: string, goal_description?: string | null, cycle_period_id?: number) {
20
+ super();
21
+ this.goal_title = goal_title || "";
22
+ this.goal_description = goal_description || null;
23
+ this.cycle_period_id = cycle_period_id || 0;
24
+ this.is_active = true;
25
+ }
26
+ }
27
+
@@ -45,9 +45,12 @@ export class PromotionRequest extends BaseModel {
45
45
  @Column({ type: "timestamp", nullable: true })
46
46
  assigned_at: Date | null;
47
47
 
48
- @Column({ type: "varchar", length: 255, nullable: true })
49
- workflow_execution_id: string | null;
50
-
48
+ @Column({ type: "varchar", length: 255, nullable: true })
49
+ workflow_execution_id: string | null;
50
+
51
+ @Column({ type: "varchar", length: 255, nullable: true })
52
+ reference_number: string | null;
53
+
51
54
  // Promotion Decision specific fields
52
55
  @Column({ type: "varchar", length: 255, nullable: false })
53
56
  employee_name: string;
@@ -105,10 +108,11 @@ export class PromotionRequest extends BaseModel {
105
108
  this.req_user_position_id = req_user_position_id || null;
106
109
  this.description = description || null;
107
110
  this.reviewer_user_id = reviewer_user_id || null;
108
- this.assigned_to_user_id = assigned_to_user_id || null;
109
- this.assigned_at = assigned_at || null;
110
- this.workflow_execution_id = workflow_execution_id || null;
111
- this.employee_name = employee_name || "";
111
+ this.assigned_to_user_id = assigned_to_user_id || null;
112
+ this.assigned_at = assigned_at || null;
113
+ this.workflow_execution_id = workflow_execution_id || null;
114
+ this.reference_number = null;
115
+ this.employee_name = employee_name || "";
112
116
  this.employee_id = employee_id || "";
113
117
  this.current_job_title = current_job_title || "";
114
118
  this.proposed_job_title = proposed_job_title || "";
@@ -54,6 +54,9 @@ export class ShiftAllowanceRequest extends BaseModel {
54
54
  @Column({ type: "varchar", length: 255, nullable: true })
55
55
  workflow_execution_id: string | null;
56
56
 
57
+ @Column({ type: "varchar", length: 255, nullable: true })
58
+ reference_number: string | null;
59
+
57
60
  // Shift Allowance specific fields
58
61
  @Column({ type: "varchar", length: 255, nullable: false })
59
62
  employee_name: string;
@@ -73,7 +76,7 @@ export class ShiftAllowanceRequest extends BaseModel {
73
76
  @Column({ type: "date", nullable: false })
74
77
  shift_start_date: Date;
75
78
 
76
- @Column({ type: "date", nullable: false })
79
+ @Column({ type: "date", nullable: true })
77
80
  shift_end_date: Date;
78
81
 
79
82
  @Column({ type: "time", nullable: true })
@@ -122,6 +125,7 @@ export class ShiftAllowanceRequest extends BaseModel {
122
125
  this.assigned_to_user_id = assigned_to_user_id || null;
123
126
  this.assigned_at = assigned_at || null;
124
127
  this.workflow_execution_id = workflow_execution_id || null;
128
+ this.reference_number = null;
125
129
  this.employee_name = employee_name || "";
126
130
  this.employee_id = employee_id || "";
127
131
  this.job_title = job_title || "";