@platform-modules/civil-aviation-authority 2.2.308 → 2.2.310

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.
@@ -81,6 +81,7 @@ const HrServiceApprovalModel_1 = require("./models/HrServiceApprovalModel");
81
81
  const HrServiceWorkflowModel_1 = require("./models/HrServiceWorkflowModel");
82
82
  const HrServiceAttachmentModel_1 = require("./models/HrServiceAttachmentModel");
83
83
  const HrServiceChatModel_1 = require("./models/HrServiceChatModel");
84
+ const TrainingRequestModel_1 = require("./models/TrainingRequestModel");
84
85
  exports.AppDataSource = new typeorm_1.DataSource({
85
86
  type: 'postgres',
86
87
  host: process.env.DB_HOST || 'localhost',
@@ -165,6 +166,7 @@ exports.AppDataSource = new typeorm_1.DataSource({
165
166
  HrServiceApprovalModel_1.HrServiceApprovalDetails,
166
167
  HrServiceWorkflowModel_1.HrServiceWorkFlow,
167
168
  HrServiceAttachmentModel_1.HrServiceRequestAttachment,
168
- HrServiceChatModel_1.HrServiceRequestChat
169
+ HrServiceChatModel_1.HrServiceRequestChat,
170
+ TrainingRequestModel_1.TrainingRequest
169
171
  ],
170
172
  });
package/dist/index.d.ts CHANGED
@@ -70,3 +70,4 @@ export * from './models/HrServiceApprovalModel';
70
70
  export * from './models/HrServiceWorkflowModel';
71
71
  export * from './models/HrServiceAttachmentModel';
72
72
  export * from './models/HrServiceChatModel';
73
+ export * from './models/TrainingRequestModel';
package/dist/index.js CHANGED
@@ -90,3 +90,4 @@ __exportStar(require("./models/HrServiceApprovalModel"), exports);
90
90
  __exportStar(require("./models/HrServiceWorkflowModel"), exports);
91
91
  __exportStar(require("./models/HrServiceAttachmentModel"), exports);
92
92
  __exportStar(require("./models/HrServiceChatModel"), exports);
93
+ __exportStar(require("./models/TrainingRequestModel"), exports);
@@ -20,5 +20,22 @@ export declare class HrServiceRequest extends BaseModel {
20
20
  assigned_to_user_id: number | null;
21
21
  assigned_at: Date | null;
22
22
  workflow_execution_id: string | null;
23
- constructor(user_id: number, status?: HrServiceRequestStatus, 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);
23
+ assigned_employee_name: string;
24
+ civil_id_card_number: string | null;
25
+ employee_id: string;
26
+ current_job_position: string;
27
+ assigned_job_position: string;
28
+ start_date: Date;
29
+ end_date: Date;
30
+ assignment_allowance: number | null;
31
+ phone_number: string;
32
+ reason_for_request: string;
33
+ is_replaced: boolean;
34
+ replacement_employee_name: string | null;
35
+ replacement_employee_id: string | null;
36
+ replacement_civil_id_card_number: string | null;
37
+ replacement_reason: string | null;
38
+ replaced_by_user_id: number | null;
39
+ replaced_at: Date | null;
40
+ constructor(user_id: number, status?: HrServiceRequestStatus, 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, assigned_employee_name?: string, civil_id_card_number?: string | null, employee_id?: string, current_job_position?: string, assigned_job_position?: string, start_date?: Date, end_date?: Date, assignment_allowance?: number | null, phone_number?: string, reason_for_request?: string, is_replaced?: boolean, replacement_employee_name?: string | null, replacement_employee_id?: string | null, replacement_civil_id_card_number?: string | null, replacement_reason?: string | null, replaced_by_user_id?: number | null, replaced_at?: Date | null);
24
41
  }
@@ -22,7 +22,7 @@ var HrServiceRequestStatus;
22
22
  HrServiceRequestStatus["REJECTED"] = "Rejected";
23
23
  })(HrServiceRequestStatus || (exports.HrServiceRequestStatus = HrServiceRequestStatus = {}));
24
24
  let HrServiceRequest = class HrServiceRequest extends BaseModel_1.BaseModel {
25
- constructor(user_id, status = HrServiceRequestStatus.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) {
25
+ constructor(user_id, status = HrServiceRequestStatus.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, assigned_employee_name, civil_id_card_number, employee_id, current_job_position, assigned_job_position, start_date, end_date, assignment_allowance, phone_number, reason_for_request, is_replaced, replacement_employee_name, replacement_employee_id, replacement_civil_id_card_number, replacement_reason, replaced_by_user_id, replaced_at) {
26
26
  super();
27
27
  this.user_id = user_id;
28
28
  this.status = status;
@@ -36,6 +36,23 @@ let HrServiceRequest = class HrServiceRequest 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.assigned_employee_name = assigned_employee_name || "";
40
+ this.civil_id_card_number = civil_id_card_number || null;
41
+ this.employee_id = employee_id || "";
42
+ this.current_job_position = current_job_position || "";
43
+ this.assigned_job_position = assigned_job_position || "";
44
+ this.start_date = start_date || new Date();
45
+ this.end_date = end_date || new Date();
46
+ this.assignment_allowance = assignment_allowance || null;
47
+ this.phone_number = phone_number || "";
48
+ this.reason_for_request = reason_for_request || "";
49
+ this.is_replaced = is_replaced || false;
50
+ this.replacement_employee_name = replacement_employee_name || null;
51
+ this.replacement_employee_id = replacement_employee_id || null;
52
+ this.replacement_civil_id_card_number = replacement_civil_id_card_number || null;
53
+ this.replacement_reason = replacement_reason || null;
54
+ this.replaced_by_user_id = replaced_by_user_id || null;
55
+ this.replaced_at = replaced_at || null;
39
56
  }
40
57
  };
41
58
  exports.HrServiceRequest = HrServiceRequest;
@@ -87,7 +104,76 @@ __decorate([
87
104
  (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
88
105
  __metadata("design:type", Object)
89
106
  ], HrServiceRequest.prototype, "workflow_execution_id", void 0);
107
+ __decorate([
108
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
109
+ __metadata("design:type", String)
110
+ ], HrServiceRequest.prototype, "assigned_employee_name", void 0);
111
+ __decorate([
112
+ (0, typeorm_1.Column)({ type: "varchar", length: 50, nullable: true }),
113
+ __metadata("design:type", Object)
114
+ ], HrServiceRequest.prototype, "civil_id_card_number", void 0);
115
+ __decorate([
116
+ (0, typeorm_1.Column)({ type: "varchar", length: 100, nullable: false }),
117
+ __metadata("design:type", String)
118
+ ], HrServiceRequest.prototype, "employee_id", void 0);
119
+ __decorate([
120
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
121
+ __metadata("design:type", String)
122
+ ], HrServiceRequest.prototype, "current_job_position", void 0);
123
+ __decorate([
124
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
125
+ __metadata("design:type", String)
126
+ ], HrServiceRequest.prototype, "assigned_job_position", void 0);
127
+ __decorate([
128
+ (0, typeorm_1.Column)({ type: "date", nullable: false }),
129
+ __metadata("design:type", Date)
130
+ ], HrServiceRequest.prototype, "start_date", void 0);
131
+ __decorate([
132
+ (0, typeorm_1.Column)({ type: "date", nullable: false }),
133
+ __metadata("design:type", Date)
134
+ ], HrServiceRequest.prototype, "end_date", void 0);
135
+ __decorate([
136
+ (0, typeorm_1.Column)({ type: "decimal", precision: 5, scale: 2, nullable: true }),
137
+ __metadata("design:type", Object)
138
+ ], HrServiceRequest.prototype, "assignment_allowance", void 0);
139
+ __decorate([
140
+ (0, typeorm_1.Column)({ type: "varchar", length: 20, nullable: false }),
141
+ __metadata("design:type", String)
142
+ ], HrServiceRequest.prototype, "phone_number", void 0);
143
+ __decorate([
144
+ (0, typeorm_1.Column)({ type: "text", nullable: false }),
145
+ __metadata("design:type", String)
146
+ ], HrServiceRequest.prototype, "reason_for_request", void 0);
147
+ __decorate([
148
+ (0, typeorm_1.Column)({ type: "boolean", default: false, nullable: false }),
149
+ __metadata("design:type", Boolean)
150
+ ], HrServiceRequest.prototype, "is_replaced", void 0);
151
+ __decorate([
152
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
153
+ __metadata("design:type", Object)
154
+ ], HrServiceRequest.prototype, "replacement_employee_name", void 0);
155
+ __decorate([
156
+ (0, typeorm_1.Column)({ type: "varchar", length: 100, nullable: true }),
157
+ __metadata("design:type", Object)
158
+ ], HrServiceRequest.prototype, "replacement_employee_id", void 0);
159
+ __decorate([
160
+ (0, typeorm_1.Column)({ type: "varchar", length: 50, nullable: true }),
161
+ __metadata("design:type", Object)
162
+ ], HrServiceRequest.prototype, "replacement_civil_id_card_number", void 0);
163
+ __decorate([
164
+ (0, typeorm_1.Column)({ type: "text", nullable: true }),
165
+ __metadata("design:type", Object)
166
+ ], HrServiceRequest.prototype, "replacement_reason", void 0);
167
+ __decorate([
168
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
169
+ __metadata("design:type", Object)
170
+ ], HrServiceRequest.prototype, "replaced_by_user_id", void 0);
171
+ __decorate([
172
+ (0, typeorm_1.Column)({ type: "timestamp", nullable: true }),
173
+ __metadata("design:type", Object)
174
+ ], HrServiceRequest.prototype, "replaced_at", void 0);
90
175
  exports.HrServiceRequest = HrServiceRequest = __decorate([
91
176
  (0, typeorm_1.Entity)({ name: "hr_service_requests" }),
92
- __metadata("design:paramtypes", [Number, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
177
+ __metadata("design:paramtypes", [Number, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, String, Object, String, String, String, Date,
178
+ Date, Object, String, String, Boolean, Object, Object, Object, Object, Object, Object])
93
179
  ], HrServiceRequest);
@@ -0,0 +1,43 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ export declare enum TrainingRequestStatus {
3
+ PENDING = "Pending",
4
+ ASSIGNED = "Assigned",
5
+ IN_PROGRESS = "In Progress",
6
+ COMPLETED = "Completed",
7
+ APPROVED = "Approved",
8
+ REJECTED = "Rejected"
9
+ }
10
+ export declare enum TypeOfTraining {
11
+ INSIDE_TRAINING = "Inside Training",
12
+ OUTSIDE_TRAINING = "Outside Training"
13
+ }
14
+ export declare enum TypeOfCategory {
15
+ PLANNED = "Planned",
16
+ OUT_OF_PLANNED = "Out of planned"
17
+ }
18
+ export declare enum TrainingMediaCoverageRequired {
19
+ YES = "Yes",
20
+ NO = "No"
21
+ }
22
+ export declare class TrainingRequest extends BaseModel {
23
+ req_user_department_id: number | null;
24
+ req_user_section_id: number | null;
25
+ req_user_position_id: number | null;
26
+ service_id: number | null;
27
+ sub_service_id: number | null;
28
+ user_id: number;
29
+ type_of_training: TypeOfTraining;
30
+ type_of_category: TypeOfCategory | null;
31
+ description: string;
32
+ start_date: Date | null;
33
+ end_date: Date | null;
34
+ place: string;
35
+ no_of_attendees: number;
36
+ media_coverage_required: TrainingMediaCoverageRequired;
37
+ status: TrainingRequestStatus;
38
+ reviewer_user_id: number | null;
39
+ assigned_to_user_id: number | null;
40
+ assigned_at: Date | null;
41
+ workflow_execution_id: string | null;
42
+ constructor(user_id: number, type_of_training: TypeOfTraining, description: string, place: string, no_of_attendees: number, media_coverage_required: TrainingMediaCoverageRequired, status?: TrainingRequestStatus, 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, type_of_category?: TypeOfCategory | null, start_date?: Date | null, end_date?: Date | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null);
43
+ }
@@ -0,0 +1,161 @@
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.TrainingRequest = exports.TrainingMediaCoverageRequired = exports.TypeOfCategory = exports.TypeOfTraining = exports.TrainingRequestStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ var TrainingRequestStatus;
16
+ (function (TrainingRequestStatus) {
17
+ TrainingRequestStatus["PENDING"] = "Pending";
18
+ TrainingRequestStatus["ASSIGNED"] = "Assigned";
19
+ TrainingRequestStatus["IN_PROGRESS"] = "In Progress";
20
+ TrainingRequestStatus["COMPLETED"] = "Completed";
21
+ TrainingRequestStatus["APPROVED"] = "Approved";
22
+ TrainingRequestStatus["REJECTED"] = "Rejected";
23
+ })(TrainingRequestStatus || (exports.TrainingRequestStatus = TrainingRequestStatus = {}));
24
+ var TypeOfTraining;
25
+ (function (TypeOfTraining) {
26
+ TypeOfTraining["INSIDE_TRAINING"] = "Inside Training";
27
+ TypeOfTraining["OUTSIDE_TRAINING"] = "Outside Training";
28
+ })(TypeOfTraining || (exports.TypeOfTraining = TypeOfTraining = {}));
29
+ var TypeOfCategory;
30
+ (function (TypeOfCategory) {
31
+ TypeOfCategory["PLANNED"] = "Planned";
32
+ TypeOfCategory["OUT_OF_PLANNED"] = "Out of planned";
33
+ })(TypeOfCategory || (exports.TypeOfCategory = TypeOfCategory = {}));
34
+ var TrainingMediaCoverageRequired;
35
+ (function (TrainingMediaCoverageRequired) {
36
+ TrainingMediaCoverageRequired["YES"] = "Yes";
37
+ TrainingMediaCoverageRequired["NO"] = "No";
38
+ })(TrainingMediaCoverageRequired || (exports.TrainingMediaCoverageRequired = TrainingMediaCoverageRequired = {}));
39
+ let TrainingRequest = class TrainingRequest extends BaseModel_1.BaseModel {
40
+ constructor(user_id, type_of_training, description, place, no_of_attendees, media_coverage_required, status = TrainingRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, type_of_category, start_date, end_date, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id) {
41
+ super();
42
+ this.user_id = user_id;
43
+ this.type_of_training = type_of_training;
44
+ this.description = description;
45
+ this.place = place;
46
+ this.no_of_attendees = no_of_attendees;
47
+ this.media_coverage_required = media_coverage_required;
48
+ this.status = status;
49
+ this.service_id = service_id || null;
50
+ this.sub_service_id = sub_service_id || null;
51
+ this.req_user_department_id = req_user_department_id || null;
52
+ this.req_user_section_id = req_user_section_id || null;
53
+ this.req_user_position_id = req_user_position_id || null;
54
+ this.type_of_category = type_of_category || null;
55
+ this.start_date = start_date || null;
56
+ this.end_date = end_date || null;
57
+ this.reviewer_user_id = reviewer_user_id || null;
58
+ this.assigned_to_user_id = assigned_to_user_id || null;
59
+ this.assigned_at = assigned_at || null;
60
+ this.workflow_execution_id = workflow_execution_id || null;
61
+ }
62
+ };
63
+ exports.TrainingRequest = TrainingRequest;
64
+ __decorate([
65
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
66
+ __metadata("design:type", Object)
67
+ ], TrainingRequest.prototype, "req_user_department_id", void 0);
68
+ __decorate([
69
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
70
+ __metadata("design:type", Object)
71
+ ], TrainingRequest.prototype, "req_user_section_id", void 0);
72
+ __decorate([
73
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
74
+ __metadata("design:type", Object)
75
+ ], TrainingRequest.prototype, "req_user_position_id", void 0);
76
+ __decorate([
77
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
78
+ __metadata("design:type", Object)
79
+ ], TrainingRequest.prototype, "service_id", void 0);
80
+ __decorate([
81
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
82
+ __metadata("design:type", Object)
83
+ ], TrainingRequest.prototype, "sub_service_id", void 0);
84
+ __decorate([
85
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
86
+ __metadata("design:type", Number)
87
+ ], TrainingRequest.prototype, "user_id", void 0);
88
+ __decorate([
89
+ (0, typeorm_1.Column)({
90
+ type: "enum",
91
+ enum: TypeOfTraining,
92
+ nullable: false
93
+ }),
94
+ __metadata("design:type", String)
95
+ ], TrainingRequest.prototype, "type_of_training", void 0);
96
+ __decorate([
97
+ (0, typeorm_1.Column)({
98
+ type: "enum",
99
+ enum: TypeOfCategory,
100
+ nullable: true
101
+ }),
102
+ __metadata("design:type", Object)
103
+ ], TrainingRequest.prototype, "type_of_category", void 0);
104
+ __decorate([
105
+ (0, typeorm_1.Column)({ type: "text", nullable: false }),
106
+ __metadata("design:type", String)
107
+ ], TrainingRequest.prototype, "description", void 0);
108
+ __decorate([
109
+ (0, typeorm_1.Column)({ type: "date", nullable: true }),
110
+ __metadata("design:type", Object)
111
+ ], TrainingRequest.prototype, "start_date", void 0);
112
+ __decorate([
113
+ (0, typeorm_1.Column)({ type: "date", nullable: true }),
114
+ __metadata("design:type", Object)
115
+ ], TrainingRequest.prototype, "end_date", void 0);
116
+ __decorate([
117
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
118
+ __metadata("design:type", String)
119
+ ], TrainingRequest.prototype, "place", void 0);
120
+ __decorate([
121
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
122
+ __metadata("design:type", Number)
123
+ ], TrainingRequest.prototype, "no_of_attendees", void 0);
124
+ __decorate([
125
+ (0, typeorm_1.Column)({
126
+ type: "enum",
127
+ enum: TrainingMediaCoverageRequired,
128
+ default: TrainingMediaCoverageRequired.NO,
129
+ nullable: false
130
+ }),
131
+ __metadata("design:type", String)
132
+ ], TrainingRequest.prototype, "media_coverage_required", void 0);
133
+ __decorate([
134
+ (0, typeorm_1.Column)({
135
+ type: "enum",
136
+ enum: TrainingRequestStatus,
137
+ default: TrainingRequestStatus.PENDING,
138
+ nullable: false
139
+ }),
140
+ __metadata("design:type", String)
141
+ ], TrainingRequest.prototype, "status", void 0);
142
+ __decorate([
143
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
144
+ __metadata("design:type", Object)
145
+ ], TrainingRequest.prototype, "reviewer_user_id", void 0);
146
+ __decorate([
147
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
148
+ __metadata("design:type", Object)
149
+ ], TrainingRequest.prototype, "assigned_to_user_id", void 0);
150
+ __decorate([
151
+ (0, typeorm_1.Column)({ type: "timestamp", nullable: true }),
152
+ __metadata("design:type", Object)
153
+ ], TrainingRequest.prototype, "assigned_at", void 0);
154
+ __decorate([
155
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
156
+ __metadata("design:type", Object)
157
+ ], TrainingRequest.prototype, "workflow_execution_id", void 0);
158
+ exports.TrainingRequest = TrainingRequest = __decorate([
159
+ (0, typeorm_1.Entity)({ name: "training_requests" }),
160
+ __metadata("design:paramtypes", [Number, String, String, String, Number, String, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
161
+ ], TrainingRequest);
@@ -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
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platform-modules/civil-aviation-authority",
3
- "version": "2.2.308",
3
+ "version": "2.2.310",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
@@ -79,6 +79,7 @@ import { HrServiceApprovalDetails } from './models/HrServiceApprovalModel';
79
79
  import { HrServiceWorkFlow } from './models/HrServiceWorkflowModel';
80
80
  import { HrServiceRequestAttachment } from './models/HrServiceAttachmentModel';
81
81
  import { HrServiceRequestChat } from './models/HrServiceChatModel';
82
+ import { TrainingRequest } from './models/TrainingRequestModel';
82
83
 
83
84
  export const AppDataSource = new DataSource({
84
85
  type: 'postgres',
@@ -164,6 +165,7 @@ export const AppDataSource = new DataSource({
164
165
  HrServiceApprovalDetails,
165
166
  HrServiceWorkFlow,
166
167
  HrServiceRequestAttachment,
167
- HrServiceRequestChat
168
+ HrServiceRequestChat,
169
+ TrainingRequest
168
170
  ],
169
171
  });
package/src/index.ts CHANGED
@@ -74,3 +74,4 @@ export * from './models/HrServiceApprovalModel';
74
74
  export * from './models/HrServiceWorkflowModel';
75
75
  export * from './models/HrServiceAttachmentModel';
76
76
  export * from './models/HrServiceChatModel';
77
+ export * from './models/TrainingRequestModel';
@@ -48,6 +48,59 @@ export class HrServiceRequest extends BaseModel {
48
48
  @Column({ type: "varchar", length: 255, nullable: true })
49
49
  workflow_execution_id: string | null;
50
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
+
51
104
  constructor(
52
105
  user_id: number,
53
106
  status: HrServiceRequestStatus = HrServiceRequestStatus.PENDING,
@@ -60,7 +113,24 @@ export class HrServiceRequest extends BaseModel {
60
113
  reviewer_user_id?: number | null,
61
114
  assigned_to_user_id?: number | null,
62
115
  assigned_at?: Date | null,
63
- workflow_execution_id?: string | 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
64
134
  ) {
65
135
  super();
66
136
  this.user_id = user_id;
@@ -75,6 +145,23 @@ export class HrServiceRequest extends BaseModel {
75
145
  this.assigned_to_user_id = assigned_to_user_id || null;
76
146
  this.assigned_at = assigned_at || null;
77
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;
78
165
  }
79
166
  }
80
167
 
@@ -0,0 +1,148 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum TrainingRequestStatus {
5
+ PENDING = "Pending",
6
+ ASSIGNED = "Assigned",
7
+ IN_PROGRESS = "In Progress",
8
+ COMPLETED = "Completed",
9
+ APPROVED = "Approved",
10
+ REJECTED = "Rejected"
11
+ }
12
+
13
+ export enum TypeOfTraining {
14
+ INSIDE_TRAINING = "Inside Training",
15
+ OUTSIDE_TRAINING = "Outside Training"
16
+ }
17
+
18
+ export enum TypeOfCategory {
19
+ PLANNED = "Planned",
20
+ OUT_OF_PLANNED = "Out of planned"
21
+ }
22
+
23
+ export enum TrainingMediaCoverageRequired {
24
+ YES = "Yes",
25
+ NO = "No"
26
+ }
27
+
28
+ @Entity({ name: "training_requests" })
29
+ export class TrainingRequest extends BaseModel {
30
+ @Column({ type: "integer", nullable: true })
31
+ req_user_department_id: number | null;
32
+
33
+ @Column({ type: "integer", nullable: true })
34
+ req_user_section_id: number | null;
35
+
36
+ @Column({ type: "integer", nullable: true })
37
+ req_user_position_id: number | null;
38
+
39
+ @Column({ type: "integer", nullable: true })
40
+ service_id: number | null;
41
+
42
+ @Column({ type: "integer", nullable: true })
43
+ sub_service_id: number | null;
44
+
45
+ @Column({ type: "integer", nullable: false })
46
+ user_id: number;
47
+
48
+ @Column({
49
+ type: "enum",
50
+ enum: TypeOfTraining,
51
+ nullable: false
52
+ })
53
+ type_of_training: TypeOfTraining;
54
+
55
+ @Column({
56
+ type: "enum",
57
+ enum: TypeOfCategory,
58
+ nullable: true
59
+ })
60
+ type_of_category: TypeOfCategory | null;
61
+
62
+ @Column({ type: "text", nullable: false })
63
+ description: string;
64
+
65
+ @Column({ type: "date", nullable: true })
66
+ start_date: Date | null;
67
+
68
+ @Column({ type: "date", nullable: true })
69
+ end_date: Date | null;
70
+
71
+ @Column({ type: "varchar", length: 255, nullable: false })
72
+ place: string;
73
+
74
+ @Column({ type: "integer", nullable: false })
75
+ no_of_attendees: number;
76
+
77
+ @Column({
78
+ type: "enum",
79
+ enum: TrainingMediaCoverageRequired,
80
+ default: TrainingMediaCoverageRequired.NO,
81
+ nullable: false
82
+ })
83
+ media_coverage_required: TrainingMediaCoverageRequired;
84
+
85
+ @Column({
86
+ type: "enum",
87
+ enum: TrainingRequestStatus,
88
+ default: TrainingRequestStatus.PENDING,
89
+ nullable: false
90
+ })
91
+ status: TrainingRequestStatus;
92
+
93
+ @Column({ type: "integer", nullable: true })
94
+ reviewer_user_id: number | null;
95
+
96
+ @Column({ type: "integer", nullable: true })
97
+ assigned_to_user_id: number | null;
98
+
99
+ @Column({ type: "timestamp", nullable: true })
100
+ assigned_at: Date | null;
101
+
102
+ @Column({ type: "varchar", length: 255, nullable: true })
103
+ workflow_execution_id: string | null;
104
+
105
+ constructor(
106
+ user_id: number,
107
+ type_of_training: TypeOfTraining,
108
+ description: string,
109
+ place: string,
110
+ no_of_attendees: number,
111
+ media_coverage_required: TrainingMediaCoverageRequired,
112
+ status: TrainingRequestStatus = TrainingRequestStatus.PENDING,
113
+ service_id?: number | null,
114
+ sub_service_id?: number | null,
115
+ req_user_department_id?: number | null,
116
+ req_user_section_id?: number | null,
117
+ req_user_position_id?: number | null,
118
+ type_of_category?: TypeOfCategory | null,
119
+ start_date?: Date | null,
120
+ end_date?: Date | null,
121
+ reviewer_user_id?: number | null,
122
+ assigned_to_user_id?: number | null,
123
+ assigned_at?: Date | null,
124
+ workflow_execution_id?: string | null
125
+ ) {
126
+ super();
127
+ this.user_id = user_id;
128
+ this.type_of_training = type_of_training;
129
+ this.description = description;
130
+ this.place = place;
131
+ this.no_of_attendees = no_of_attendees;
132
+ this.media_coverage_required = media_coverage_required;
133
+ this.status = status;
134
+ this.service_id = service_id || null;
135
+ this.sub_service_id = sub_service_id || null;
136
+ this.req_user_department_id = req_user_department_id || null;
137
+ this.req_user_section_id = req_user_section_id || null;
138
+ this.req_user_position_id = req_user_position_id || null;
139
+ this.type_of_category = type_of_category || null;
140
+ this.start_date = start_date || null;
141
+ this.end_date = end_date || null;
142
+ this.reviewer_user_id = reviewer_user_id || null;
143
+ this.assigned_to_user_id = assigned_to_user_id || null;
144
+ this.assigned_at = assigned_at || null;
145
+ this.workflow_execution_id = workflow_execution_id || null;
146
+ }
147
+ }
148
+
@@ -1,30 +0,0 @@
1
- import { BaseModel } from './BaseModel';
2
- export declare enum MealType {
3
- BREAKFAST = "Breakfast",
4
- LUNCH = "Lunch",
5
- DINNER = "Dinner"
6
- }
7
- export declare enum ServiceTypes {
8
- LAUNDRY = "Laundry",
9
- TELEPHONE = "Telephone Service"
10
- }
11
- export declare class HotelReservation extends BaseModel {
12
- type_of_accommodation: string;
13
- price: number;
14
- meal: MealType;
15
- service: ServiceTypes;
16
- date_of_request: Date;
17
- hotel_name: string;
18
- check_in_date: Date;
19
- check_in_time: string;
20
- check_out_date: Date;
21
- check_out_time: string;
22
- number_of_guests: number;
23
- description: string;
24
- attachment_url: string;
25
- requested_by: string;
26
- visitor_name: string;
27
- hr_approval: boolean;
28
- pr_approval: boolean;
29
- constructor(type_of_accommodation: string, price: number, meal: MealType, service: ServiceTypes, date_of_request: Date, hotel_name: string, check_in_date: Date, check_in_time: string, check_out_date: Date, check_out_time: string, number_of_guests: number, description: string, requested_by: string, visitor_name: string, hr_approval: boolean, pr_approval: boolean);
30
- }
@@ -1,119 +0,0 @@
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.HotelReservation = exports.ServiceTypes = exports.MealType = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const BaseModel_1 = require("./BaseModel");
15
- var MealType;
16
- (function (MealType) {
17
- MealType["BREAKFAST"] = "Breakfast";
18
- MealType["LUNCH"] = "Lunch";
19
- MealType["DINNER"] = "Dinner";
20
- })(MealType || (exports.MealType = MealType = {}));
21
- var ServiceTypes;
22
- (function (ServiceTypes) {
23
- ServiceTypes["LAUNDRY"] = "Laundry";
24
- ServiceTypes["TELEPHONE"] = "Telephone Service";
25
- })(ServiceTypes || (exports.ServiceTypes = ServiceTypes = {}));
26
- let HotelReservation = class HotelReservation extends BaseModel_1.BaseModel {
27
- constructor(type_of_accommodation, price, meal, service, date_of_request, hotel_name, check_in_date, check_in_time, check_out_date, check_out_time, number_of_guests, description, requested_by, visitor_name, hr_approval, pr_approval) {
28
- super();
29
- this.type_of_accommodation = type_of_accommodation;
30
- this.price = price;
31
- this.meal = meal;
32
- this.service = service;
33
- this.date_of_request = date_of_request;
34
- this.hotel_name = hotel_name;
35
- this.check_in_date = check_in_date;
36
- this.check_in_time = check_in_time;
37
- this.check_out_date = check_out_date;
38
- this.check_out_time = check_out_time;
39
- this.number_of_guests = number_of_guests;
40
- this.description = description;
41
- this.requested_by = requested_by;
42
- this.visitor_name = visitor_name;
43
- this.hr_approval = hr_approval;
44
- this.pr_approval = pr_approval;
45
- }
46
- };
47
- exports.HotelReservation = HotelReservation;
48
- __decorate([
49
- (0, typeorm_1.Column)({ type: 'varchar', length: 50 }),
50
- __metadata("design:type", String)
51
- ], HotelReservation.prototype, "type_of_accommodation", void 0);
52
- __decorate([
53
- (0, typeorm_1.Column)({ type: 'decimal', precision: 10, scale: 2, nullable: false }),
54
- __metadata("design:type", Number)
55
- ], HotelReservation.prototype, "price", void 0);
56
- __decorate([
57
- (0, typeorm_1.Column)({ type: 'enum', enum: MealType, nullable: false, }),
58
- __metadata("design:type", String)
59
- ], HotelReservation.prototype, "meal", void 0);
60
- __decorate([
61
- (0, typeorm_1.Column)({ type: 'enum', enum: ServiceTypes, nullable: false, }),
62
- __metadata("design:type", String)
63
- ], HotelReservation.prototype, "service", void 0);
64
- __decorate([
65
- (0, typeorm_1.Column)({ type: 'timestamptz', nullable: false }),
66
- __metadata("design:type", Date)
67
- ], HotelReservation.prototype, "date_of_request", void 0);
68
- __decorate([
69
- (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: false }),
70
- __metadata("design:type", String)
71
- ], HotelReservation.prototype, "hotel_name", void 0);
72
- __decorate([
73
- (0, typeorm_1.Column)({ type: 'date', nullable: false }),
74
- __metadata("design:type", Date)
75
- ], HotelReservation.prototype, "check_in_date", void 0);
76
- __decorate([
77
- (0, typeorm_1.Column)({ type: 'time', nullable: false }),
78
- __metadata("design:type", String)
79
- ], HotelReservation.prototype, "check_in_time", void 0);
80
- __decorate([
81
- (0, typeorm_1.Column)({ type: 'date', nullable: false }),
82
- __metadata("design:type", Date)
83
- ], HotelReservation.prototype, "check_out_date", void 0);
84
- __decorate([
85
- (0, typeorm_1.Column)({ type: 'time', nullable: false }),
86
- __metadata("design:type", String)
87
- ], HotelReservation.prototype, "check_out_time", void 0);
88
- __decorate([
89
- (0, typeorm_1.Column)({ type: 'int', nullable: false }),
90
- __metadata("design:type", Number)
91
- ], HotelReservation.prototype, "number_of_guests", void 0);
92
- __decorate([
93
- (0, typeorm_1.Column)({ type: 'text', nullable: true }),
94
- __metadata("design:type", String)
95
- ], HotelReservation.prototype, "description", void 0);
96
- __decorate([
97
- (0, typeorm_1.Column)({ type: 'text', nullable: false }),
98
- __metadata("design:type", String)
99
- ], HotelReservation.prototype, "attachment_url", void 0);
100
- __decorate([
101
- (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: false }),
102
- __metadata("design:type", String)
103
- ], HotelReservation.prototype, "requested_by", void 0);
104
- __decorate([
105
- (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: false }),
106
- __metadata("design:type", String)
107
- ], HotelReservation.prototype, "visitor_name", void 0);
108
- __decorate([
109
- (0, typeorm_1.Column)({ type: 'boolean', default: false }),
110
- __metadata("design:type", Boolean)
111
- ], HotelReservation.prototype, "hr_approval", void 0);
112
- __decorate([
113
- (0, typeorm_1.Column)({ type: 'boolean', default: false }),
114
- __metadata("design:type", Boolean)
115
- ], HotelReservation.prototype, "pr_approval", void 0);
116
- exports.HotelReservation = HotelReservation = __decorate([
117
- (0, typeorm_1.Entity)({ name: 'hotel_reservations' }),
118
- __metadata("design:paramtypes", [String, Number, String, String, Date, String, Date, String, Date, String, Number, String, String, String, Boolean, Boolean])
119
- ], HotelReservation);