@platform-modules/civil-aviation-authority 2.3.10 → 2.3.11

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.
@@ -93,6 +93,11 @@ const TrainingWorkflowModel_1 = require("./models/TrainingWorkflowModel");
93
93
  const TrainingApprovalModel_1 = require("./models/TrainingApprovalModel");
94
94
  const TrainingChatModel_1 = require("./models/TrainingChatModel");
95
95
  const TrainingAttachmentModel_1 = require("./models/TrainingAttachmentModel");
96
+ const StudyLeaveRequestModel_1 = require("./models/StudyLeaveRequestModel");
97
+ const StudyLeaveWorkflowModel_1 = require("./models/StudyLeaveWorkflowModel");
98
+ const StudyLeaveApprovalModel_1 = require("./models/StudyLeaveApprovalModel");
99
+ const StudyLeaveChatModel_1 = require("./models/StudyLeaveChatModel");
100
+ const StudyLeaveAttachmentModel_1 = require("./models/StudyLeaveAttachmentModel");
96
101
  const SecondmentRequestModel_1 = require("./models/SecondmentRequestModel");
97
102
  exports.AppDataSource = new typeorm_1.DataSource({
98
103
  type: 'postgres',
@@ -184,6 +189,11 @@ exports.AppDataSource = new typeorm_1.DataSource({
184
189
  TrainingApprovalModel_1.TrainingApprovalDetails,
185
190
  TrainingChatModel_1.TrainingRequestChat,
186
191
  TrainingAttachmentModel_1.TrainingRequestAttachment,
192
+ StudyLeaveRequestModel_1.StudyLeaveRequest,
193
+ StudyLeaveWorkflowModel_1.StudyLeaveWorkFlow,
194
+ StudyLeaveApprovalModel_1.StudyLeaveApprovalDetails,
195
+ StudyLeaveChatModel_1.StudyLeaveRequestChat,
196
+ StudyLeaveAttachmentModel_1.StudyLeaveRequestAttachment,
187
197
  SecondmentRequestModel_1.SecondmentRequest,
188
198
  DutyMissionRequestModel_1.DutyMissionRequests,
189
199
  DutyMissionApprovalModel_1.DutyMissionApprovalDetails,
package/dist/index.d.ts CHANGED
@@ -75,6 +75,11 @@ export * from './models/TrainingWorkflowModel';
75
75
  export * from './models/TrainingApprovalModel';
76
76
  export * from './models/TrainingChatModel';
77
77
  export * from './models/TrainingAttachmentModel';
78
+ export * from './models/StudyLeaveRequestModel';
79
+ export * from './models/StudyLeaveWorkflowModel';
80
+ export * from './models/StudyLeaveApprovalModel';
81
+ export * from './models/StudyLeaveChatModel';
82
+ export * from './models/StudyLeaveAttachmentModel';
78
83
  export { HrServiceRequestStatus } from './models/HrServiceRequestModel';
79
84
  export { HrServiceApprovalStatus } from './models/HrServiceApprovalModel';
80
85
  export { HrServiceWorkFlowStatus } from './models/HrServiceWorkflowModel';
@@ -88,6 +93,13 @@ export { TrainingWorkFlowStatus } from './models/TrainingWorkflowModel';
88
93
  export { TrainingRequestAttachment } from './models/TrainingAttachmentModel';
89
94
  export { TrainingRequestChat } from './models/TrainingChatModel';
90
95
  export { TrainingMessageType } from './models/TrainingChatModel';
96
+ export { StudyLeaveRequestStatus } from './models/StudyLeaveRequestModel';
97
+ export { StudyLeaveApprovalStatus } from './models/StudyLeaveApprovalModel';
98
+ export { StudyLeaveWorkFlowStatus } from './models/StudyLeaveWorkflowModel';
99
+ export { StudyLeaveRequestAttachment } from './models/StudyLeaveAttachmentModel';
100
+ export { StudyLeaveRequestChat } from './models/StudyLeaveChatModel';
101
+ export { StudyLeaveMessageType } from './models/StudyLeaveChatModel';
102
+ export { StudyLeaveChatStatus } from './models/StudyLeaveChatModel';
91
103
  export * from './models/SecondmentRequestModel';
92
104
  export { SecondmentRequestStatus } from './models/SecondmentRequestModel';
93
105
  export * from './models/TemporaryAssignmentRequestModel';
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.SalaryPaymentSource = exports.TemporaryAssignmentRequestStatus = exports.SecondmentRequestStatus = exports.TrainingMessageType = exports.TrainingRequestChat = exports.TrainingRequestAttachment = exports.TrainingWorkFlowStatus = exports.TrainingApprovalStatus = exports.TrainingRequestStatus = exports.HrServiceChatStatus = exports.HrServiceMessageType = exports.HrServiceRequestChat = exports.HrServiceRequestAttachment = exports.HrServiceWorkFlowStatus = exports.HrServiceApprovalStatus = exports.HrServiceRequestStatus = void 0;
17
+ exports.SalaryPaymentSource = exports.TemporaryAssignmentRequestStatus = exports.SecondmentRequestStatus = exports.StudyLeaveChatStatus = exports.StudyLeaveMessageType = exports.StudyLeaveRequestChat = exports.StudyLeaveRequestAttachment = exports.StudyLeaveWorkFlowStatus = exports.StudyLeaveApprovalStatus = exports.StudyLeaveRequestStatus = exports.TrainingMessageType = exports.TrainingRequestChat = exports.TrainingRequestAttachment = exports.TrainingWorkFlowStatus = exports.TrainingApprovalStatus = exports.TrainingRequestStatus = exports.HrServiceChatStatus = exports.HrServiceMessageType = exports.HrServiceRequestChat = exports.HrServiceRequestAttachment = exports.HrServiceWorkFlowStatus = exports.HrServiceApprovalStatus = exports.HrServiceRequestStatus = void 0;
18
18
  __exportStar(require("./models/user"), exports);
19
19
  __exportStar(require("./models/role"), exports);
20
20
  __exportStar(require("./models/user-sessions"), exports);
@@ -96,6 +96,11 @@ __exportStar(require("./models/TrainingWorkflowModel"), exports);
96
96
  __exportStar(require("./models/TrainingApprovalModel"), exports);
97
97
  __exportStar(require("./models/TrainingChatModel"), exports);
98
98
  __exportStar(require("./models/TrainingAttachmentModel"), exports);
99
+ __exportStar(require("./models/StudyLeaveRequestModel"), exports);
100
+ __exportStar(require("./models/StudyLeaveWorkflowModel"), exports);
101
+ __exportStar(require("./models/StudyLeaveApprovalModel"), exports);
102
+ __exportStar(require("./models/StudyLeaveChatModel"), exports);
103
+ __exportStar(require("./models/StudyLeaveAttachmentModel"), exports);
99
104
  var HrServiceRequestModel_1 = require("./models/HrServiceRequestModel");
100
105
  Object.defineProperty(exports, "HrServiceRequestStatus", { enumerable: true, get: function () { return HrServiceRequestModel_1.HrServiceRequestStatus; } });
101
106
  var HrServiceApprovalModel_1 = require("./models/HrServiceApprovalModel");
@@ -122,6 +127,20 @@ var TrainingChatModel_1 = require("./models/TrainingChatModel");
122
127
  Object.defineProperty(exports, "TrainingRequestChat", { enumerable: true, get: function () { return TrainingChatModel_1.TrainingRequestChat; } });
123
128
  var TrainingChatModel_2 = require("./models/TrainingChatModel");
124
129
  Object.defineProperty(exports, "TrainingMessageType", { enumerable: true, get: function () { return TrainingChatModel_2.TrainingMessageType; } });
130
+ var StudyLeaveRequestModel_1 = require("./models/StudyLeaveRequestModel");
131
+ Object.defineProperty(exports, "StudyLeaveRequestStatus", { enumerable: true, get: function () { return StudyLeaveRequestModel_1.StudyLeaveRequestStatus; } });
132
+ var StudyLeaveApprovalModel_1 = require("./models/StudyLeaveApprovalModel");
133
+ Object.defineProperty(exports, "StudyLeaveApprovalStatus", { enumerable: true, get: function () { return StudyLeaveApprovalModel_1.StudyLeaveApprovalStatus; } });
134
+ var StudyLeaveWorkflowModel_1 = require("./models/StudyLeaveWorkflowModel");
135
+ Object.defineProperty(exports, "StudyLeaveWorkFlowStatus", { enumerable: true, get: function () { return StudyLeaveWorkflowModel_1.StudyLeaveWorkFlowStatus; } });
136
+ var StudyLeaveAttachmentModel_1 = require("./models/StudyLeaveAttachmentModel");
137
+ Object.defineProperty(exports, "StudyLeaveRequestAttachment", { enumerable: true, get: function () { return StudyLeaveAttachmentModel_1.StudyLeaveRequestAttachment; } });
138
+ var StudyLeaveChatModel_1 = require("./models/StudyLeaveChatModel");
139
+ Object.defineProperty(exports, "StudyLeaveRequestChat", { enumerable: true, get: function () { return StudyLeaveChatModel_1.StudyLeaveRequestChat; } });
140
+ var StudyLeaveChatModel_2 = require("./models/StudyLeaveChatModel");
141
+ Object.defineProperty(exports, "StudyLeaveMessageType", { enumerable: true, get: function () { return StudyLeaveChatModel_2.StudyLeaveMessageType; } });
142
+ var StudyLeaveChatModel_3 = require("./models/StudyLeaveChatModel");
143
+ Object.defineProperty(exports, "StudyLeaveChatStatus", { enumerable: true, get: function () { return StudyLeaveChatModel_3.StudyLeaveChatStatus; } });
125
144
  __exportStar(require("./models/SecondmentRequestModel"), exports);
126
145
  var SecondmentRequestModel_1 = require("./models/SecondmentRequestModel");
127
146
  Object.defineProperty(exports, "SecondmentRequestStatus", { enumerable: true, get: function () { return SecondmentRequestModel_1.SecondmentRequestStatus; } });
@@ -0,0 +1,25 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ export declare enum StudyLeaveApprovalStatus {
3
+ PENDING = "Pending",
4
+ IN_PROGRESS = "In Progress",
5
+ APPROVED = "Approved",
6
+ REJECTED = "Rejected",
7
+ ASSIGNED = "Assigned"
8
+ }
9
+ export declare class StudyLeaveApprovalDetails extends BaseModel {
10
+ request_id: number;
11
+ service_id: number | null;
12
+ sub_service_id: number | null;
13
+ level: number;
14
+ approver_user_id: number | null;
15
+ approver_role_id: number | null;
16
+ department_id: number | null;
17
+ section_id: number | null;
18
+ delegate_user_id: number | null;
19
+ approved_by: number | null;
20
+ comment: string;
21
+ approval_status: StudyLeaveApprovalStatus;
22
+ is_manager: boolean;
23
+ is_allowed: boolean;
24
+ constructor(request_id: number, approver_user_id: number | null, approver_role_id: number | null, comment: string, approval_status: StudyLeaveApprovalStatus, level: number, service_id?: number | null, sub_service_id?: number | null, department_id?: number | null, section_id?: number | null, delegate_user_id?: number | null, approved_by?: number | null, is_manager?: boolean, is_allowed?: boolean);
25
+ }
@@ -0,0 +1,107 @@
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.StudyLeaveApprovalDetails = exports.StudyLeaveApprovalStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ var StudyLeaveApprovalStatus;
16
+ (function (StudyLeaveApprovalStatus) {
17
+ StudyLeaveApprovalStatus["PENDING"] = "Pending";
18
+ StudyLeaveApprovalStatus["IN_PROGRESS"] = "In Progress";
19
+ StudyLeaveApprovalStatus["APPROVED"] = "Approved";
20
+ StudyLeaveApprovalStatus["REJECTED"] = "Rejected";
21
+ StudyLeaveApprovalStatus["ASSIGNED"] = "Assigned";
22
+ })(StudyLeaveApprovalStatus || (exports.StudyLeaveApprovalStatus = StudyLeaveApprovalStatus = {}));
23
+ let StudyLeaveApprovalDetails = class StudyLeaveApprovalDetails extends BaseModel_1.BaseModel {
24
+ constructor(request_id, approver_user_id, approver_role_id, comment, approval_status, level, service_id, sub_service_id, department_id, section_id, delegate_user_id, approved_by, is_manager, is_allowed) {
25
+ super();
26
+ this.request_id = request_id;
27
+ this.service_id = service_id || null;
28
+ this.sub_service_id = sub_service_id || null;
29
+ this.approver_user_id = approver_user_id;
30
+ this.approver_role_id = approver_role_id;
31
+ this.comment = comment;
32
+ this.approval_status = approval_status;
33
+ this.level = level;
34
+ this.department_id = department_id || null;
35
+ this.section_id = section_id || null;
36
+ this.delegate_user_id = delegate_user_id || null;
37
+ this.approved_by = approved_by || null;
38
+ this.is_manager = is_manager ?? false;
39
+ this.is_allowed = is_allowed !== undefined ? is_allowed : true;
40
+ }
41
+ };
42
+ exports.StudyLeaveApprovalDetails = StudyLeaveApprovalDetails;
43
+ __decorate([
44
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
45
+ __metadata("design:type", Number)
46
+ ], StudyLeaveApprovalDetails.prototype, "request_id", void 0);
47
+ __decorate([
48
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
49
+ __metadata("design:type", Object)
50
+ ], StudyLeaveApprovalDetails.prototype, "service_id", void 0);
51
+ __decorate([
52
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
53
+ __metadata("design:type", Object)
54
+ ], StudyLeaveApprovalDetails.prototype, "sub_service_id", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
57
+ __metadata("design:type", Number)
58
+ ], StudyLeaveApprovalDetails.prototype, "level", void 0);
59
+ __decorate([
60
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
61
+ __metadata("design:type", Object)
62
+ ], StudyLeaveApprovalDetails.prototype, "approver_user_id", void 0);
63
+ __decorate([
64
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
65
+ __metadata("design:type", Object)
66
+ ], StudyLeaveApprovalDetails.prototype, "approver_role_id", void 0);
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
69
+ __metadata("design:type", Object)
70
+ ], StudyLeaveApprovalDetails.prototype, "department_id", void 0);
71
+ __decorate([
72
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
73
+ __metadata("design:type", Object)
74
+ ], StudyLeaveApprovalDetails.prototype, "section_id", void 0);
75
+ __decorate([
76
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
77
+ __metadata("design:type", Object)
78
+ ], StudyLeaveApprovalDetails.prototype, "delegate_user_id", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
81
+ __metadata("design:type", Object)
82
+ ], StudyLeaveApprovalDetails.prototype, "approved_by", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true, default: "" }),
85
+ __metadata("design:type", String)
86
+ ], StudyLeaveApprovalDetails.prototype, "comment", void 0);
87
+ __decorate([
88
+ (0, typeorm_1.Column)({
89
+ type: "enum",
90
+ enum: StudyLeaveApprovalStatus,
91
+ default: StudyLeaveApprovalStatus.PENDING,
92
+ nullable: false
93
+ }),
94
+ __metadata("design:type", String)
95
+ ], StudyLeaveApprovalDetails.prototype, "approval_status", void 0);
96
+ __decorate([
97
+ (0, typeorm_1.Column)({ type: "boolean", default: false, nullable: false }),
98
+ __metadata("design:type", Boolean)
99
+ ], StudyLeaveApprovalDetails.prototype, "is_manager", void 0);
100
+ __decorate([
101
+ (0, typeorm_1.Column)({ type: "boolean", default: true, nullable: false }),
102
+ __metadata("design:type", Boolean)
103
+ ], StudyLeaveApprovalDetails.prototype, "is_allowed", void 0);
104
+ exports.StudyLeaveApprovalDetails = StudyLeaveApprovalDetails = __decorate([
105
+ (0, typeorm_1.Entity)({ name: "study_leave_approvals" }),
106
+ __metadata("design:paramtypes", [Number, Object, Object, String, String, Number, Object, Object, Object, Object, Object, Object, Boolean, Boolean])
107
+ ], StudyLeaveApprovalDetails);
@@ -0,0 +1,13 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ export declare class StudyLeaveRequestAttachment extends BaseModel {
3
+ request_id: number;
4
+ service_id: number | null;
5
+ sub_service_id: number | null;
6
+ uploaded_by: number;
7
+ file_url: string;
8
+ file_name: string;
9
+ file_type: string;
10
+ file_size: number | null;
11
+ description: string;
12
+ constructor(request_id: number, uploaded_by: number, file_url: string, service_id?: number | null, sub_service_id?: number | null, file_name?: string, file_type?: string, file_size?: number, description?: string);
13
+ }
@@ -0,0 +1,69 @@
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.StudyLeaveRequestAttachment = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ let StudyLeaveRequestAttachment = class StudyLeaveRequestAttachment extends BaseModel_1.BaseModel {
16
+ constructor(request_id, uploaded_by, file_url, service_id, sub_service_id, file_name, file_type, file_size, description) {
17
+ super();
18
+ this.request_id = request_id;
19
+ this.service_id = service_id || null;
20
+ this.sub_service_id = sub_service_id || null;
21
+ this.uploaded_by = uploaded_by;
22
+ this.file_url = file_url;
23
+ this.file_name = file_name || "";
24
+ this.file_type = file_type || "";
25
+ this.file_size = file_size || null;
26
+ this.description = description || "";
27
+ }
28
+ };
29
+ exports.StudyLeaveRequestAttachment = StudyLeaveRequestAttachment;
30
+ __decorate([
31
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
32
+ __metadata("design:type", Number)
33
+ ], StudyLeaveRequestAttachment.prototype, "request_id", void 0);
34
+ __decorate([
35
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
36
+ __metadata("design:type", Object)
37
+ ], StudyLeaveRequestAttachment.prototype, "service_id", void 0);
38
+ __decorate([
39
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
40
+ __metadata("design:type", Object)
41
+ ], StudyLeaveRequestAttachment.prototype, "sub_service_id", void 0);
42
+ __decorate([
43
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
44
+ __metadata("design:type", Number)
45
+ ], StudyLeaveRequestAttachment.prototype, "uploaded_by", void 0);
46
+ __decorate([
47
+ (0, typeorm_1.Column)({ type: "varchar", length: 500, nullable: false }),
48
+ __metadata("design:type", String)
49
+ ], StudyLeaveRequestAttachment.prototype, "file_url", void 0);
50
+ __decorate([
51
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
52
+ __metadata("design:type", String)
53
+ ], StudyLeaveRequestAttachment.prototype, "file_name", void 0);
54
+ __decorate([
55
+ (0, typeorm_1.Column)({ type: "varchar", length: 100, nullable: true }),
56
+ __metadata("design:type", String)
57
+ ], StudyLeaveRequestAttachment.prototype, "file_type", void 0);
58
+ __decorate([
59
+ (0, typeorm_1.Column)({ type: "bigint", nullable: true }),
60
+ __metadata("design:type", Object)
61
+ ], StudyLeaveRequestAttachment.prototype, "file_size", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.Column)({ type: "text", nullable: true }),
64
+ __metadata("design:type", String)
65
+ ], StudyLeaveRequestAttachment.prototype, "description", void 0);
66
+ exports.StudyLeaveRequestAttachment = StudyLeaveRequestAttachment = __decorate([
67
+ (0, typeorm_1.Entity)({ name: "study_leave_request_attachments" }),
68
+ __metadata("design:paramtypes", [Number, Number, String, Object, Object, String, String, Number, String])
69
+ ], StudyLeaveRequestAttachment);
@@ -0,0 +1,26 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ export declare enum StudyLeaveMessageType {
3
+ TEXT = "text",
4
+ IMAGE = "image",
5
+ VIDEO = "video",
6
+ FILE = "file",
7
+ LINK = "link"
8
+ }
9
+ export declare enum StudyLeaveChatStatus {
10
+ PENDING = "Pending",
11
+ APPROVED = "Approved",
12
+ REJECTED = "Rejected",
13
+ IN_PROGRESS = "In Progress"
14
+ }
15
+ export declare class StudyLeaveRequestChat extends BaseModel {
16
+ request_id: number;
17
+ service_id: number | null;
18
+ sub_service_id: number | null;
19
+ user_id: number;
20
+ message: string;
21
+ approver_role_id: number | null;
22
+ messageType: StudyLeaveMessageType;
23
+ is_internal: boolean;
24
+ status: string;
25
+ constructor(request_id: number, user_id: number, message: string, service_id?: number | null, sub_service_id?: number | null, messageType?: StudyLeaveMessageType, is_internal?: boolean, status?: string, approver_role_id?: number);
26
+ }
@@ -0,0 +1,89 @@
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.StudyLeaveRequestChat = exports.StudyLeaveChatStatus = exports.StudyLeaveMessageType = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ var StudyLeaveMessageType;
16
+ (function (StudyLeaveMessageType) {
17
+ StudyLeaveMessageType["TEXT"] = "text";
18
+ StudyLeaveMessageType["IMAGE"] = "image";
19
+ StudyLeaveMessageType["VIDEO"] = "video";
20
+ StudyLeaveMessageType["FILE"] = "file";
21
+ StudyLeaveMessageType["LINK"] = "link";
22
+ })(StudyLeaveMessageType || (exports.StudyLeaveMessageType = StudyLeaveMessageType = {}));
23
+ var StudyLeaveChatStatus;
24
+ (function (StudyLeaveChatStatus) {
25
+ StudyLeaveChatStatus["PENDING"] = "Pending";
26
+ StudyLeaveChatStatus["APPROVED"] = "Approved";
27
+ StudyLeaveChatStatus["REJECTED"] = "Rejected";
28
+ StudyLeaveChatStatus["IN_PROGRESS"] = "In Progress";
29
+ })(StudyLeaveChatStatus || (exports.StudyLeaveChatStatus = StudyLeaveChatStatus = {}));
30
+ let StudyLeaveRequestChat = class StudyLeaveRequestChat extends BaseModel_1.BaseModel {
31
+ constructor(request_id, user_id, message, service_id, sub_service_id, messageType, is_internal, status, approver_role_id) {
32
+ super();
33
+ this.request_id = request_id;
34
+ this.service_id = service_id || null;
35
+ this.sub_service_id = sub_service_id || null;
36
+ this.user_id = user_id;
37
+ this.message = message;
38
+ this.messageType = messageType || StudyLeaveMessageType.TEXT;
39
+ this.is_internal = is_internal || false;
40
+ this.status = status || 'Pending';
41
+ this.approver_role_id = approver_role_id || null;
42
+ }
43
+ };
44
+ exports.StudyLeaveRequestChat = StudyLeaveRequestChat;
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
47
+ __metadata("design:type", Number)
48
+ ], StudyLeaveRequestChat.prototype, "request_id", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
51
+ __metadata("design:type", Object)
52
+ ], StudyLeaveRequestChat.prototype, "service_id", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
55
+ __metadata("design:type", Object)
56
+ ], StudyLeaveRequestChat.prototype, "sub_service_id", void 0);
57
+ __decorate([
58
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
59
+ __metadata("design:type", Number)
60
+ ], StudyLeaveRequestChat.prototype, "user_id", void 0);
61
+ __decorate([
62
+ (0, typeorm_1.Column)({ type: "text", nullable: false }),
63
+ __metadata("design:type", String)
64
+ ], StudyLeaveRequestChat.prototype, "message", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
67
+ __metadata("design:type", Object)
68
+ ], StudyLeaveRequestChat.prototype, "approver_role_id", void 0);
69
+ __decorate([
70
+ (0, typeorm_1.Column)({
71
+ type: "enum",
72
+ enum: StudyLeaveMessageType,
73
+ default: StudyLeaveMessageType.TEXT,
74
+ nullable: false
75
+ }),
76
+ __metadata("design:type", String)
77
+ ], StudyLeaveRequestChat.prototype, "messageType", void 0);
78
+ __decorate([
79
+ (0, typeorm_1.Column)({ type: "boolean", default: false }),
80
+ __metadata("design:type", Boolean)
81
+ ], StudyLeaveRequestChat.prototype, "is_internal", void 0);
82
+ __decorate([
83
+ (0, typeorm_1.Column)({ type: "text", nullable: false }),
84
+ __metadata("design:type", String)
85
+ ], StudyLeaveRequestChat.prototype, "status", void 0);
86
+ exports.StudyLeaveRequestChat = StudyLeaveRequestChat = __decorate([
87
+ (0, typeorm_1.Entity)({ name: "study_leave_request_chat" }),
88
+ __metadata("design:paramtypes", [Number, Number, String, Object, Object, String, Boolean, String, Number])
89
+ ], StudyLeaveRequestChat);
@@ -0,0 +1,29 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ export declare enum StudyLeaveRequestStatus {
3
+ PENDING = "Pending",
4
+ IN_PROGRESS = "In Progress",
5
+ COMPLETED = "Completed",
6
+ APPROVED = "Approved",
7
+ REJECTED = "Rejected"
8
+ }
9
+ export declare class StudyLeaveRequest extends BaseModel {
10
+ req_user_department_id: number | null;
11
+ req_user_section_id: number | null;
12
+ req_user_position_id: number | null;
13
+ service_id: number | null;
14
+ sub_service_id: number | null;
15
+ user_id: number;
16
+ course_name: string;
17
+ institute_name: string;
18
+ duration_of_course: string | null;
19
+ course_start_date: Date;
20
+ course_end_date: Date;
21
+ location: string;
22
+ description: string;
23
+ status: StudyLeaveRequestStatus;
24
+ reviewer_user_id: number | null;
25
+ assigned_to_user_id: number | null;
26
+ assigned_at: Date | null;
27
+ workflow_execution_id: string | null;
28
+ constructor(user_id: number, course_name: string, institute_name: string, course_start_date: Date, course_end_date: Date, location: string, description: string, status?: StudyLeaveRequestStatus, 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, duration_of_course?: string | null, reviewer_user_id?: number | null, assigned_to_user_id?: number | null, assigned_at?: Date | null, workflow_execution_id?: string | null);
29
+ }
@@ -0,0 +1,128 @@
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.StudyLeaveRequest = exports.StudyLeaveRequestStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ var StudyLeaveRequestStatus;
16
+ (function (StudyLeaveRequestStatus) {
17
+ StudyLeaveRequestStatus["PENDING"] = "Pending";
18
+ StudyLeaveRequestStatus["IN_PROGRESS"] = "In Progress";
19
+ StudyLeaveRequestStatus["COMPLETED"] = "Completed";
20
+ StudyLeaveRequestStatus["APPROVED"] = "Approved";
21
+ StudyLeaveRequestStatus["REJECTED"] = "Rejected";
22
+ })(StudyLeaveRequestStatus || (exports.StudyLeaveRequestStatus = StudyLeaveRequestStatus = {}));
23
+ let StudyLeaveRequest = class StudyLeaveRequest extends BaseModel_1.BaseModel {
24
+ constructor(user_id, course_name, institute_name, course_start_date, course_end_date, location, description, status = StudyLeaveRequestStatus.PENDING, service_id, sub_service_id, req_user_department_id, req_user_section_id, req_user_position_id, duration_of_course, reviewer_user_id, assigned_to_user_id, assigned_at, workflow_execution_id) {
25
+ super();
26
+ this.user_id = user_id;
27
+ this.course_name = course_name;
28
+ this.institute_name = institute_name;
29
+ this.course_start_date = course_start_date;
30
+ this.course_end_date = course_end_date;
31
+ this.location = location;
32
+ this.description = description;
33
+ this.status = status;
34
+ this.service_id = service_id || null;
35
+ this.sub_service_id = sub_service_id || null;
36
+ this.req_user_department_id = req_user_department_id || null;
37
+ this.req_user_section_id = req_user_section_id || null;
38
+ this.req_user_position_id = req_user_position_id || null;
39
+ this.duration_of_course = duration_of_course || null;
40
+ this.reviewer_user_id = reviewer_user_id || null;
41
+ this.assigned_to_user_id = assigned_to_user_id || null;
42
+ this.assigned_at = assigned_at || null;
43
+ this.workflow_execution_id = workflow_execution_id || null;
44
+ }
45
+ };
46
+ exports.StudyLeaveRequest = StudyLeaveRequest;
47
+ __decorate([
48
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
49
+ __metadata("design:type", Object)
50
+ ], StudyLeaveRequest.prototype, "req_user_department_id", void 0);
51
+ __decorate([
52
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
53
+ __metadata("design:type", Object)
54
+ ], StudyLeaveRequest.prototype, "req_user_section_id", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
57
+ __metadata("design:type", Object)
58
+ ], StudyLeaveRequest.prototype, "req_user_position_id", void 0);
59
+ __decorate([
60
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
61
+ __metadata("design:type", Object)
62
+ ], StudyLeaveRequest.prototype, "service_id", void 0);
63
+ __decorate([
64
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
65
+ __metadata("design:type", Object)
66
+ ], StudyLeaveRequest.prototype, "sub_service_id", void 0);
67
+ __decorate([
68
+ (0, typeorm_1.Column)({ type: "integer", nullable: false }),
69
+ __metadata("design:type", Number)
70
+ ], StudyLeaveRequest.prototype, "user_id", void 0);
71
+ __decorate([
72
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
73
+ __metadata("design:type", String)
74
+ ], StudyLeaveRequest.prototype, "course_name", void 0);
75
+ __decorate([
76
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
77
+ __metadata("design:type", String)
78
+ ], StudyLeaveRequest.prototype, "institute_name", void 0);
79
+ __decorate([
80
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
81
+ __metadata("design:type", Object)
82
+ ], StudyLeaveRequest.prototype, "duration_of_course", void 0);
83
+ __decorate([
84
+ (0, typeorm_1.Column)({ type: "date", nullable: false }),
85
+ __metadata("design:type", Date)
86
+ ], StudyLeaveRequest.prototype, "course_start_date", void 0);
87
+ __decorate([
88
+ (0, typeorm_1.Column)({ type: "date", nullable: false }),
89
+ __metadata("design:type", Date)
90
+ ], StudyLeaveRequest.prototype, "course_end_date", void 0);
91
+ __decorate([
92
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
93
+ __metadata("design:type", String)
94
+ ], StudyLeaveRequest.prototype, "location", void 0);
95
+ __decorate([
96
+ (0, typeorm_1.Column)({ type: "text", nullable: false }),
97
+ __metadata("design:type", String)
98
+ ], StudyLeaveRequest.prototype, "description", void 0);
99
+ __decorate([
100
+ (0, typeorm_1.Column)({
101
+ type: "enum",
102
+ enum: StudyLeaveRequestStatus,
103
+ default: StudyLeaveRequestStatus.PENDING,
104
+ nullable: false
105
+ }),
106
+ __metadata("design:type", String)
107
+ ], StudyLeaveRequest.prototype, "status", void 0);
108
+ __decorate([
109
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
110
+ __metadata("design:type", Object)
111
+ ], StudyLeaveRequest.prototype, "reviewer_user_id", void 0);
112
+ __decorate([
113
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
114
+ __metadata("design:type", Object)
115
+ ], StudyLeaveRequest.prototype, "assigned_to_user_id", void 0);
116
+ __decorate([
117
+ (0, typeorm_1.Column)({ type: "timestamp", nullable: true }),
118
+ __metadata("design:type", Object)
119
+ ], StudyLeaveRequest.prototype, "assigned_at", void 0);
120
+ __decorate([
121
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: true }),
122
+ __metadata("design:type", Object)
123
+ ], StudyLeaveRequest.prototype, "workflow_execution_id", void 0);
124
+ exports.StudyLeaveRequest = StudyLeaveRequest = __decorate([
125
+ (0, typeorm_1.Entity)({ name: "study_leave_requests" }),
126
+ __metadata("design:paramtypes", [Number, String, String, Date,
127
+ Date, String, String, String, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object])
128
+ ], StudyLeaveRequest);
@@ -0,0 +1,19 @@
1
+ import { BaseModel } from "./BaseModel";
2
+ export declare enum StudyLeaveWorkFlowStatus {
3
+ COMPLETED = "Completed",
4
+ NOT_YET_STARTED = "Not Yet Started",
5
+ PENDING = "Pending",
6
+ REJECTED = "Rejected"
7
+ }
8
+ export declare class StudyLeaveWorkFlow extends BaseModel {
9
+ request_id: number;
10
+ service_id: number | null;
11
+ sub_service_id: number | null;
12
+ order: number | null;
13
+ content: string;
14
+ approver_role_id: number | null;
15
+ approver_user_id: number | null;
16
+ approved_by: number | null;
17
+ status: StudyLeaveWorkFlowStatus;
18
+ constructor(request_id: number, content: string, status: StudyLeaveWorkFlowStatus, service_id?: number | null, sub_service_id?: number | null, order?: number, approver_role_id?: number | null, approver_user_id?: number | null, approved_by?: number | null);
19
+ }
@@ -0,0 +1,81 @@
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.StudyLeaveWorkFlow = exports.StudyLeaveWorkFlowStatus = void 0;
13
+ const typeorm_1 = require("typeorm");
14
+ const BaseModel_1 = require("./BaseModel");
15
+ var StudyLeaveWorkFlowStatus;
16
+ (function (StudyLeaveWorkFlowStatus) {
17
+ StudyLeaveWorkFlowStatus["COMPLETED"] = "Completed";
18
+ StudyLeaveWorkFlowStatus["NOT_YET_STARTED"] = "Not Yet Started";
19
+ StudyLeaveWorkFlowStatus["PENDING"] = "Pending";
20
+ StudyLeaveWorkFlowStatus["REJECTED"] = "Rejected";
21
+ })(StudyLeaveWorkFlowStatus || (exports.StudyLeaveWorkFlowStatus = StudyLeaveWorkFlowStatus = {}));
22
+ let StudyLeaveWorkFlow = class StudyLeaveWorkFlow extends BaseModel_1.BaseModel {
23
+ constructor(request_id, content, status, service_id, sub_service_id, order, approver_role_id, approver_user_id, approved_by) {
24
+ super();
25
+ this.request_id = request_id;
26
+ this.service_id = service_id || null;
27
+ this.sub_service_id = sub_service_id || null;
28
+ this.content = content;
29
+ this.status = status;
30
+ this.order = order || null;
31
+ this.approver_role_id = approver_role_id || null;
32
+ this.approver_user_id = approver_user_id || null;
33
+ this.approved_by = approved_by || null;
34
+ }
35
+ };
36
+ exports.StudyLeaveWorkFlow = StudyLeaveWorkFlow;
37
+ __decorate([
38
+ (0, typeorm_1.Column)({ type: "int", nullable: false }),
39
+ __metadata("design:type", Number)
40
+ ], StudyLeaveWorkFlow.prototype, "request_id", void 0);
41
+ __decorate([
42
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
43
+ __metadata("design:type", Object)
44
+ ], StudyLeaveWorkFlow.prototype, "service_id", void 0);
45
+ __decorate([
46
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
47
+ __metadata("design:type", Object)
48
+ ], StudyLeaveWorkFlow.prototype, "sub_service_id", void 0);
49
+ __decorate([
50
+ (0, typeorm_1.Column)({ type: "int", nullable: true }),
51
+ __metadata("design:type", Object)
52
+ ], StudyLeaveWorkFlow.prototype, "order", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({ type: "varchar", length: 255, nullable: false }),
55
+ __metadata("design:type", String)
56
+ ], StudyLeaveWorkFlow.prototype, "content", void 0);
57
+ __decorate([
58
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
59
+ __metadata("design:type", Object)
60
+ ], StudyLeaveWorkFlow.prototype, "approver_role_id", void 0);
61
+ __decorate([
62
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
63
+ __metadata("design:type", Object)
64
+ ], StudyLeaveWorkFlow.prototype, "approver_user_id", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.Column)({ type: "integer", nullable: true }),
67
+ __metadata("design:type", Object)
68
+ ], StudyLeaveWorkFlow.prototype, "approved_by", void 0);
69
+ __decorate([
70
+ (0, typeorm_1.Column)({
71
+ type: "enum",
72
+ enum: StudyLeaveWorkFlowStatus,
73
+ default: StudyLeaveWorkFlowStatus.PENDING,
74
+ nullable: false
75
+ }),
76
+ __metadata("design:type", String)
77
+ ], StudyLeaveWorkFlow.prototype, "status", void 0);
78
+ exports.StudyLeaveWorkFlow = StudyLeaveWorkFlow = __decorate([
79
+ (0, typeorm_1.Entity)({ name: "study_leave_workflows" }),
80
+ __metadata("design:paramtypes", [Number, String, String, Object, Object, Number, Object, Object, Object])
81
+ ], StudyLeaveWorkFlow);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@platform-modules/civil-aviation-authority",
3
- "version": "2.3.10",
3
+ "version": "2.3.11",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {
@@ -91,6 +91,11 @@ import { TrainingWorkFlow } from './models/TrainingWorkflowModel';
91
91
  import { TrainingApprovalDetails } from './models/TrainingApprovalModel';
92
92
  import { TrainingRequestChat } from './models/TrainingChatModel';
93
93
  import { TrainingRequestAttachment } from './models/TrainingAttachmentModel';
94
+ import { StudyLeaveRequest } from './models/StudyLeaveRequestModel';
95
+ import { StudyLeaveWorkFlow } from './models/StudyLeaveWorkflowModel';
96
+ import { StudyLeaveApprovalDetails } from './models/StudyLeaveApprovalModel';
97
+ import { StudyLeaveRequestChat } from './models/StudyLeaveChatModel';
98
+ import { StudyLeaveRequestAttachment } from './models/StudyLeaveAttachmentModel';
94
99
  import { SecondmentRequest } from './models/SecondmentRequestModel';
95
100
 
96
101
  export const AppDataSource = new DataSource({
@@ -183,6 +188,11 @@ export const AppDataSource = new DataSource({
183
188
  TrainingApprovalDetails,
184
189
  TrainingRequestChat,
185
190
  TrainingRequestAttachment,
191
+ StudyLeaveRequest,
192
+ StudyLeaveWorkFlow,
193
+ StudyLeaveApprovalDetails,
194
+ StudyLeaveRequestChat,
195
+ StudyLeaveRequestAttachment,
186
196
  SecondmentRequest,
187
197
  DutyMissionRequests,
188
198
  DutyMissionApprovalDetails,
package/src/index.ts CHANGED
@@ -79,6 +79,11 @@ export * from './models/TrainingWorkflowModel';
79
79
  export * from './models/TrainingApprovalModel';
80
80
  export * from './models/TrainingChatModel';
81
81
  export * from './models/TrainingAttachmentModel';
82
+ export * from './models/StudyLeaveRequestModel';
83
+ export * from './models/StudyLeaveWorkflowModel';
84
+ export * from './models/StudyLeaveApprovalModel';
85
+ export * from './models/StudyLeaveChatModel';
86
+ export * from './models/StudyLeaveAttachmentModel';
82
87
  export {HrServiceRequestStatus} from './models/HrServiceRequestModel';
83
88
  export {HrServiceApprovalStatus} from './models/HrServiceApprovalModel';
84
89
  export {HrServiceWorkFlowStatus} from './models/HrServiceWorkflowModel';
@@ -92,6 +97,13 @@ export {TrainingWorkFlowStatus} from './models/TrainingWorkflowModel';
92
97
  export {TrainingRequestAttachment} from './models/TrainingAttachmentModel';
93
98
  export {TrainingRequestChat} from './models/TrainingChatModel';
94
99
  export {TrainingMessageType} from './models/TrainingChatModel';
100
+ export {StudyLeaveRequestStatus} from './models/StudyLeaveRequestModel';
101
+ export {StudyLeaveApprovalStatus} from './models/StudyLeaveApprovalModel';
102
+ export {StudyLeaveWorkFlowStatus} from './models/StudyLeaveWorkflowModel';
103
+ export {StudyLeaveRequestAttachment} from './models/StudyLeaveAttachmentModel';
104
+ export {StudyLeaveRequestChat} from './models/StudyLeaveChatModel';
105
+ export {StudyLeaveMessageType} from './models/StudyLeaveChatModel';
106
+ export {StudyLeaveChatStatus} from './models/StudyLeaveChatModel';
95
107
  export * from './models/SecondmentRequestModel';
96
108
  export {SecondmentRequestStatus} from './models/SecondmentRequestModel';
97
109
  export * from './models/TemporaryAssignmentRequestModel';
@@ -0,0 +1,94 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum StudyLeaveApprovalStatus {
5
+ PENDING = "Pending",
6
+ IN_PROGRESS = "In Progress",
7
+ APPROVED = "Approved",
8
+ REJECTED = "Rejected",
9
+ ASSIGNED = "Assigned"
10
+ }
11
+
12
+ @Entity({ name: "study_leave_approvals" })
13
+ export class StudyLeaveApprovalDetails extends BaseModel {
14
+ @Column({ type: "integer", nullable: false })
15
+ request_id: number;
16
+
17
+ @Column({ type: "integer", nullable: true })
18
+ service_id: number | null;
19
+
20
+ @Column({ type: "integer", nullable: true })
21
+ sub_service_id: number | null;
22
+
23
+ @Column({ type: "integer", nullable: false })
24
+ level: number;
25
+
26
+ @Column({ type: "integer", nullable: true })
27
+ approver_user_id: number | null;
28
+
29
+ @Column({ type: "integer", nullable: true })
30
+ approver_role_id: number | null;
31
+
32
+ @Column({ type: "integer", nullable: true })
33
+ department_id: number | null;
34
+
35
+ @Column({ type: "integer", nullable: true })
36
+ section_id: number | null;
37
+
38
+ @Column({ type: "integer", nullable: true })
39
+ delegate_user_id: number | null;
40
+
41
+ @Column({ type: "integer", nullable: true })
42
+ approved_by: number | null;
43
+
44
+ @Column({ type: "varchar", length: 255, nullable: true, default: "" })
45
+ comment: string;
46
+
47
+ @Column({
48
+ type: "enum",
49
+ enum: StudyLeaveApprovalStatus,
50
+ default: StudyLeaveApprovalStatus.PENDING,
51
+ nullable: false
52
+ })
53
+ approval_status: StudyLeaveApprovalStatus;
54
+
55
+ @Column({ type: "boolean", default: false, nullable: false })
56
+ is_manager: boolean;
57
+
58
+ @Column({ type: "boolean", default: true, nullable: false })
59
+ is_allowed: boolean;
60
+
61
+ constructor(
62
+ request_id: number,
63
+ approver_user_id: number | null,
64
+ approver_role_id: number | null,
65
+ comment: string,
66
+ approval_status: StudyLeaveApprovalStatus,
67
+ level: number,
68
+ service_id?: number | null,
69
+ sub_service_id?: number | null,
70
+ department_id?: number | null,
71
+ section_id?: number | null,
72
+ delegate_user_id?: number | null,
73
+ approved_by?: number | null,
74
+ is_manager?: boolean,
75
+ is_allowed?: boolean
76
+ ) {
77
+ super();
78
+ this.request_id = request_id;
79
+ this.service_id = service_id || null;
80
+ this.sub_service_id = sub_service_id || null;
81
+ this.approver_user_id = approver_user_id;
82
+ this.approver_role_id = approver_role_id;
83
+ this.comment = comment;
84
+ this.approval_status = approval_status;
85
+ this.level = level;
86
+ this.department_id = department_id || null;
87
+ this.section_id = section_id || null;
88
+ this.delegate_user_id = delegate_user_id || null;
89
+ this.approved_by = approved_by || null;
90
+ this.is_manager = is_manager ?? false;
91
+ this.is_allowed = is_allowed !== undefined ? is_allowed : true;
92
+ }
93
+ }
94
+
@@ -0,0 +1,56 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "study_leave_request_attachments" })
5
+ export class StudyLeaveRequestAttachment extends BaseModel {
6
+ @Column({ type: "integer", nullable: false })
7
+ request_id: number;
8
+
9
+ @Column({ type: "integer", nullable: true })
10
+ service_id: number | null;
11
+
12
+ @Column({ type: "integer", nullable: true })
13
+ sub_service_id: number | null;
14
+
15
+ @Column({ type: "integer", nullable: false })
16
+ uploaded_by: number;
17
+
18
+ @Column({ type: "varchar", length: 500, nullable: false })
19
+ file_url: string;
20
+
21
+ @Column({ type: "varchar", length: 255, nullable: true })
22
+ file_name: string;
23
+
24
+ @Column({ type: "varchar", length: 100, nullable: true })
25
+ file_type: string;
26
+
27
+ @Column({ type: "bigint", nullable: true })
28
+ file_size: number | null;
29
+
30
+ @Column({ type: "text", nullable: true })
31
+ description: string;
32
+
33
+ constructor(
34
+ request_id: number,
35
+ uploaded_by: number,
36
+ file_url: string,
37
+ service_id?: number | null,
38
+ sub_service_id?: number | null,
39
+ file_name?: string,
40
+ file_type?: string,
41
+ file_size?: number,
42
+ description?: string
43
+ ) {
44
+ super();
45
+ this.request_id = request_id;
46
+ this.service_id = service_id || null;
47
+ this.sub_service_id = sub_service_id || null;
48
+ this.uploaded_by = uploaded_by;
49
+ this.file_url = file_url;
50
+ this.file_name = file_name || "";
51
+ this.file_type = file_type || "";
52
+ this.file_size = file_size || null;
53
+ this.description = description || "";
54
+ }
55
+ }
56
+
@@ -0,0 +1,76 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum StudyLeaveMessageType {
5
+ TEXT = "text",
6
+ IMAGE = "image",
7
+ VIDEO = "video",
8
+ FILE = "file",
9
+ LINK = "link"
10
+ }
11
+
12
+ export enum StudyLeaveChatStatus {
13
+ PENDING = "Pending",
14
+ APPROVED = "Approved",
15
+ REJECTED = "Rejected",
16
+ IN_PROGRESS = "In Progress"
17
+ }
18
+
19
+ @Entity({ name: "study_leave_request_chat" })
20
+ export class StudyLeaveRequestChat extends BaseModel {
21
+ @Column({ type: "integer", nullable: false })
22
+ request_id: number;
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: false })
34
+ message: string;
35
+
36
+ @Column({ type: "integer", nullable: true })
37
+ approver_role_id: number | null;
38
+
39
+ @Column({
40
+ type: "enum",
41
+ enum: StudyLeaveMessageType,
42
+ default: StudyLeaveMessageType.TEXT,
43
+ nullable: false
44
+ })
45
+ messageType: StudyLeaveMessageType;
46
+
47
+ @Column({ type: "boolean", default: false })
48
+ is_internal: boolean;
49
+
50
+ @Column({ type: "text", nullable: false })
51
+ status: string;
52
+
53
+ constructor(
54
+ request_id: number,
55
+ user_id: number,
56
+ message: string,
57
+ service_id?: number | null,
58
+ sub_service_id?: number | null,
59
+ messageType?: StudyLeaveMessageType,
60
+ is_internal?: boolean,
61
+ status?: string,
62
+ approver_role_id?: number
63
+ ) {
64
+ super();
65
+ this.request_id = request_id;
66
+ this.service_id = service_id || null;
67
+ this.sub_service_id = sub_service_id || null;
68
+ this.user_id = user_id;
69
+ this.message = message;
70
+ this.messageType = messageType || StudyLeaveMessageType.TEXT;
71
+ this.is_internal = is_internal || false;
72
+ this.status = status || 'Pending';
73
+ this.approver_role_id = approver_role_id || null;
74
+ }
75
+ }
76
+
@@ -0,0 +1,114 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum StudyLeaveRequestStatus {
5
+ PENDING = "Pending",
6
+ IN_PROGRESS = "In Progress",
7
+ COMPLETED = "Completed",
8
+ APPROVED = "Approved",
9
+ REJECTED = "Rejected"
10
+ }
11
+
12
+ @Entity({ name: "study_leave_requests" })
13
+ export class StudyLeaveRequest extends BaseModel {
14
+ @Column({ type: "integer", nullable: true })
15
+ req_user_department_id: number | null;
16
+
17
+ @Column({ type: "integer", nullable: true })
18
+ req_user_section_id: number | null;
19
+
20
+ @Column({ type: "integer", nullable: true })
21
+ req_user_position_id: number | null;
22
+
23
+ @Column({ type: "integer", nullable: true })
24
+ service_id: number | null;
25
+
26
+ @Column({ type: "integer", nullable: true })
27
+ sub_service_id: number | null;
28
+
29
+ @Column({ type: "integer", nullable: false })
30
+ user_id: number;
31
+
32
+ @Column({ type: "varchar", length: 255, nullable: false })
33
+ course_name: string;
34
+
35
+ @Column({ type: "varchar", length: 255, nullable: false })
36
+ institute_name: string;
37
+
38
+ @Column({ type: "varchar", length: 255, nullable: true })
39
+ duration_of_course: string | null;
40
+
41
+ @Column({ type: "date", nullable: false })
42
+ course_start_date: Date;
43
+
44
+ @Column({ type: "date", nullable: false })
45
+ course_end_date: Date;
46
+
47
+ @Column({ type: "varchar", length: 255, nullable: false })
48
+ location: string;
49
+
50
+ @Column({ type: "text", nullable: false })
51
+ description: string;
52
+
53
+ @Column({
54
+ type: "enum",
55
+ enum: StudyLeaveRequestStatus,
56
+ default: StudyLeaveRequestStatus.PENDING,
57
+ nullable: false
58
+ })
59
+ status: StudyLeaveRequestStatus;
60
+
61
+ @Column({ type: "integer", nullable: true })
62
+ reviewer_user_id: number | null;
63
+
64
+ @Column({ type: "integer", nullable: true })
65
+ assigned_to_user_id: number | null;
66
+
67
+ @Column({ type: "timestamp", nullable: true })
68
+ assigned_at: Date | null;
69
+
70
+ @Column({ type: "varchar", length: 255, nullable: true })
71
+ workflow_execution_id: string | null;
72
+
73
+ constructor(
74
+ user_id: number,
75
+ course_name: string,
76
+ institute_name: string,
77
+ course_start_date: Date,
78
+ course_end_date: Date,
79
+ location: string,
80
+ description: string,
81
+ status: StudyLeaveRequestStatus = StudyLeaveRequestStatus.PENDING,
82
+ service_id?: number | null,
83
+ sub_service_id?: number | null,
84
+ req_user_department_id?: number | null,
85
+ req_user_section_id?: number | null,
86
+ req_user_position_id?: number | null,
87
+ duration_of_course?: string | null,
88
+ reviewer_user_id?: number | null,
89
+ assigned_to_user_id?: number | null,
90
+ assigned_at?: Date | null,
91
+ workflow_execution_id?: string | null
92
+ ) {
93
+ super();
94
+ this.user_id = user_id;
95
+ this.course_name = course_name;
96
+ this.institute_name = institute_name;
97
+ this.course_start_date = course_start_date;
98
+ this.course_end_date = course_end_date;
99
+ this.location = location;
100
+ this.description = description;
101
+ this.status = status;
102
+ this.service_id = service_id || null;
103
+ this.sub_service_id = sub_service_id || null;
104
+ this.req_user_department_id = req_user_department_id || null;
105
+ this.req_user_section_id = req_user_section_id || null;
106
+ this.req_user_position_id = req_user_position_id || null;
107
+ this.duration_of_course = duration_of_course || null;
108
+ this.reviewer_user_id = reviewer_user_id || null;
109
+ this.assigned_to_user_id = assigned_to_user_id || null;
110
+ this.assigned_at = assigned_at || null;
111
+ this.workflow_execution_id = workflow_execution_id || null;
112
+ }
113
+ }
114
+
@@ -0,0 +1,68 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ export enum StudyLeaveWorkFlowStatus {
5
+ COMPLETED = "Completed",
6
+ NOT_YET_STARTED = "Not Yet Started",
7
+ PENDING = "Pending",
8
+ REJECTED = "Rejected"
9
+ }
10
+
11
+ @Entity({ name: "study_leave_workflows" })
12
+ export class StudyLeaveWorkFlow extends BaseModel {
13
+ @Column({ type: "int", nullable: false })
14
+ request_id: number;
15
+
16
+ @Column({ type: "integer", nullable: true })
17
+ service_id: number | null;
18
+
19
+ @Column({ type: "integer", nullable: true })
20
+ sub_service_id: number | null;
21
+
22
+ @Column({ type: "int", nullable: true })
23
+ order: number | null;
24
+
25
+ @Column({ type: "varchar", length: 255, nullable: false })
26
+ content: string;
27
+
28
+ @Column({ type: "integer", nullable: true })
29
+ approver_role_id: number | null;
30
+
31
+ @Column({ type: "integer", nullable: true })
32
+ approver_user_id: number | null;
33
+
34
+ @Column({ type: "integer", nullable: true })
35
+ approved_by: number | null;
36
+
37
+ @Column({
38
+ type: "enum",
39
+ enum: StudyLeaveWorkFlowStatus,
40
+ default: StudyLeaveWorkFlowStatus.PENDING,
41
+ nullable: false
42
+ })
43
+ status: StudyLeaveWorkFlowStatus;
44
+
45
+ constructor(
46
+ request_id: number,
47
+ content: string,
48
+ status: StudyLeaveWorkFlowStatus,
49
+ service_id?: number | null,
50
+ sub_service_id?: number | null,
51
+ order?: number,
52
+ approver_role_id?: number | null,
53
+ approver_user_id?: number | null,
54
+ approved_by?: number | null
55
+ ) {
56
+ super();
57
+ this.request_id = request_id;
58
+ this.service_id = service_id || null;
59
+ this.sub_service_id = sub_service_id || null;
60
+ this.content = content;
61
+ this.status = status;
62
+ this.order = order || null;
63
+ this.approver_role_id = approver_role_id || null;
64
+ this.approver_user_id = approver_user_id || null;
65
+ this.approved_by = approved_by || null;
66
+ }
67
+ }
68
+