@platform-modules/foreign-ministry 1.3.12 → 1.3.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/data-source.js +0 -12
  2. package/dist/index.d.ts +0 -10
  3. package/dist/index.js +1 -17
  4. package/dist/models/DiplomaticWorkFlowModel.d.ts +0 -1
  5. package/dist/models/DiplomaticWorkFlowModel.js +0 -4
  6. package/dist/models/MissionTravelClassConfigModel.d.ts +10 -0
  7. package/dist/models/MissionTravelClassConfigModel.js +50 -0
  8. package/dist/models/MissionTravelPerdiemModel.d.ts +10 -0
  9. package/dist/models/MissionTravelPerdiemModel.js +54 -0
  10. package/dist/models/RetiredCardRequestsModel.d.ts +1 -2
  11. package/dist/models/RetiredCardRequestsModel.js +2 -7
  12. package/package.json +1 -1
  13. package/src/data-source.ts +0 -12
  14. package/src/index.ts +0 -11
  15. package/src/models/DiplomaticClubSubscriptionMasterModel.ts +26 -26
  16. package/src/models/DiplomaticRequestsModel.ts +157 -157
  17. package/src/models/DiplomaticWorkFlowModel.ts +0 -3
  18. package/src/models/LeaveConfigModel.ts +71 -71
  19. package/src/models/MissionTravelApprovalModel.ts +100 -100
  20. package/src/models/MissionTravelAttachmentModel.ts +56 -56
  21. package/src/models/MissionTravelChatModel.ts +52 -52
  22. package/src/models/MissionTravelPersonModel.ts +105 -105
  23. package/src/models/MissionTravelWorkflowModel.ts +54 -54
  24. package/src/models/RetiredCardRequestsModel.ts +1 -7
  25. package/dist/models/DiplomaticClubCardApprovalModel.d.ts +0 -16
  26. package/dist/models/DiplomaticClubCardApprovalModel.js +0 -58
  27. package/dist/models/DiplomaticClubCardAttachmentModel.d.ts +0 -9
  28. package/dist/models/DiplomaticClubCardAttachmentModel.js +0 -44
  29. package/dist/models/DiplomaticClubCardChatModel.d.ts +0 -7
  30. package/dist/models/DiplomaticClubCardChatModel.js +0 -36
  31. package/dist/models/DiplomaticClubCardMemberModel.d.ts +0 -13
  32. package/dist/models/DiplomaticClubCardMemberModel.js +0 -60
  33. package/dist/models/DiplomaticClubCardRequestModel.d.ts +0 -33
  34. package/dist/models/DiplomaticClubCardRequestModel.js +0 -98
  35. package/dist/models/DiplomaticClubCardWorkFlowModel.d.ts +0 -12
  36. package/dist/models/DiplomaticClubCardWorkFlowModel.js +0 -42
  37. package/dist/models/DiplomaticServiceDetailsModel.d.ts +0 -20
  38. package/dist/models/DiplomaticServiceDetailsModel.js +0 -65
  39. package/dist/models/DiplomaticSettingsModel.d.ts +0 -11
  40. package/dist/models/DiplomaticSettingsModel.js +0 -59
  41. package/dist/models/DiplomaticTitleModel.d.ts +0 -12
  42. package/dist/models/DiplomaticTitleModel.js +0 -45
  43. package/dist/models/GatePassApprovalsModel.d.ts +0 -33
  44. package/dist/models/GatePassApprovalsModel.js +0 -110
  45. package/dist/models/GatePassAttachmentsModel.d.ts +0 -16
  46. package/dist/models/GatePassAttachmentsModel.js +0 -60
  47. package/dist/models/GatePassChatsModel.d.ts +0 -26
  48. package/dist/models/GatePassChatsModel.js +0 -84
  49. package/dist/models/GatePassRequestsModel.d.ts +0 -46
  50. package/dist/models/GatePassRequestsModel.js +0 -148
  51. package/dist/models/GatePassVisitorsModel.d.ts +0 -27
  52. package/dist/models/GatePassVisitorsModel.js +0 -115
  53. package/dist/models/GatePassWorkFlowModel.d.ts +0 -33
  54. package/dist/models/GatePassWorkFlowModel.js +0 -93
  55. package/dist/models/PassportRequestApprovalModel.d.ts +0 -22
  56. package/dist/models/PassportRequestApprovalModel.js +0 -91
  57. package/dist/models/PassportRequestAttachmentModel.d.ts +0 -10
  58. package/dist/models/PassportRequestAttachmentModel.js +0 -54
  59. package/dist/models/PassportRequestChatModel.d.ts +0 -8
  60. package/dist/models/PassportRequestChatModel.js +0 -44
  61. package/dist/models/PassportRequestDependentModel.d.ts +0 -20
  62. package/dist/models/PassportRequestDependentModel.js +0 -85
  63. package/dist/models/PassportRequestModel.d.ts +0 -40
  64. package/dist/models/PassportRequestModel.js +0 -128
  65. package/dist/models/PassportRequestWorkFlowModel.d.ts +0 -15
  66. package/dist/models/PassportRequestWorkFlowModel.js +0 -60
  67. package/dist/models/SubscriptionAmountModel.d.ts +0 -67
  68. package/dist/models/SubscriptionAmountModel.js +0 -114
  69. package/src/models/GatePassApprovalsModel.ts +0 -98
  70. package/src/models/GatePassAttachmentsModel.ts +0 -38
  71. package/src/models/GatePassChatsModel.ts +0 -72
  72. package/src/models/GatePassRequestsModel.ts +0 -139
  73. package/src/models/GatePassVisitorsModel.ts +0 -100
  74. package/src/models/GatePassWorkFlowModel.ts +0 -66
@@ -1,60 +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.PassportRequestWorkFlow = exports.PassportRequestWorkFlowStatus = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const BaseModel_1 = require("./BaseModel");
15
- var PassportRequestWorkFlowStatus;
16
- (function (PassportRequestWorkFlowStatus) {
17
- PassportRequestWorkFlowStatus["COMPLETED"] = "Completed";
18
- PassportRequestWorkFlowStatus["NOT_YET_STARTED"] = "Not Yet Started";
19
- PassportRequestWorkFlowStatus["PENDING"] = "Pending";
20
- })(PassportRequestWorkFlowStatus || (exports.PassportRequestWorkFlowStatus = PassportRequestWorkFlowStatus = {}));
21
- let PassportRequestWorkFlow = class PassportRequestWorkFlow extends BaseModel_1.BaseModel {
22
- constructor(request_id, content, approval_details_id, status, service_id, sub_service_id) {
23
- super();
24
- this.request_id = request_id;
25
- this.approval_details_id = approval_details_id || 0;
26
- this.content = content;
27
- this.status = status || PassportRequestWorkFlowStatus.NOT_YET_STARTED;
28
- this.service_id = service_id || null;
29
- this.sub_service_id = sub_service_id || null;
30
- }
31
- };
32
- exports.PassportRequestWorkFlow = PassportRequestWorkFlow;
33
- __decorate([
34
- (0, typeorm_1.Column)({ type: 'int', nullable: false }),
35
- __metadata("design:type", Number)
36
- ], PassportRequestWorkFlow.prototype, "request_id", void 0);
37
- __decorate([
38
- (0, typeorm_1.Column)({ type: 'int', nullable: false, default: 0 }),
39
- __metadata("design:type", Number)
40
- ], PassportRequestWorkFlow.prototype, "approval_details_id", void 0);
41
- __decorate([
42
- (0, typeorm_1.Column)({ type: 'varchar', length: 255, nullable: false }),
43
- __metadata("design:type", String)
44
- ], PassportRequestWorkFlow.prototype, "content", void 0);
45
- __decorate([
46
- (0, typeorm_1.Column)({ type: 'enum', enum: PassportRequestWorkFlowStatus, default: PassportRequestWorkFlowStatus.NOT_YET_STARTED, nullable: false }),
47
- __metadata("design:type", String)
48
- ], PassportRequestWorkFlow.prototype, "status", void 0);
49
- __decorate([
50
- (0, typeorm_1.Column)({ type: 'int', nullable: true }),
51
- __metadata("design:type", Object)
52
- ], PassportRequestWorkFlow.prototype, "service_id", void 0);
53
- __decorate([
54
- (0, typeorm_1.Column)({ type: 'int', nullable: true }),
55
- __metadata("design:type", Object)
56
- ], PassportRequestWorkFlow.prototype, "sub_service_id", void 0);
57
- exports.PassportRequestWorkFlow = PassportRequestWorkFlow = __decorate([
58
- (0, typeorm_1.Entity)({ name: 'passport_request_work_flows' }),
59
- __metadata("design:paramtypes", [Number, String, Number, String, Object, Object])
60
- ], PassportRequestWorkFlow);
@@ -1,67 +0,0 @@
1
- import { BaseModel } from './BaseModel';
2
- export declare enum MembershipType {
3
- SINGLE = "Single",
4
- FAMILY = "Family"
5
- }
6
- export declare enum RequestType {
7
- EMPLOYEE_FAMILY = "Employee Family",
8
- EMPLOYEE_SELF = "Employee Self",
9
- NON_EMPLOYEE = "Non Employee"
10
- }
11
- export declare enum RequestStatus {
12
- DRAFT = "Draft",
13
- SUBMITTED = "Submitted",
14
- PENDING = "Pending",
15
- IN_PROGRESS = "In Progress",
16
- APPROVED = "Approved",
17
- REJECTED = "Rejected",
18
- COMPLETED = "Completed",
19
- CANCELLED = "Cancelled"
20
- }
21
- export declare enum DiplomaticClubCardApprovalStatus {
22
- PENDING = "Pending",
23
- APPROVED = "Approved",
24
- REJECTED = "Rejected",
25
- SKIPPED = "Skipped",
26
- IN_PROGRESS = "In Progress"
27
- }
28
- export { DiplomaticWorkFlowStatus as DiplomaticClubCardWorkFlowStatus } from './DiplomaticWorkFlowModel';
29
- export declare enum PassportType {
30
- DIPLOMATIC = "Diplomatic Passport",
31
- SERVICE = "Service passport"
32
- }
33
- export declare enum ApplicationFor {
34
- SELF = "Self",
35
- DEPENDENTS = "Dependents",
36
- BOTH = "Both"
37
- }
38
- export declare enum PassportRequestType {
39
- NEW = "New",
40
- RENEWAL = "Renewal",
41
- REPLACEMENT = "Replacement"
42
- }
43
- export declare enum PassportRequestStatus {
44
- DRAFT = "Draft",
45
- SUBMITTED = "Submitted",
46
- PENDING = "Pending",
47
- IN_PROGRESS = "In Progress",
48
- APPROVED = "Approved",
49
- REJECTED = "Rejected",
50
- COMPLETED = "Completed",
51
- CANCELLED = "Cancelled"
52
- }
53
- export declare enum PassportRequestApprovalStatus {
54
- PENDING = "Pending",
55
- APPROVED = "Approved",
56
- REJECTED = "Rejected",
57
- SKIPPED = "Skipped",
58
- IN_PROGRESS = "In Progress"
59
- }
60
- export declare class SubscriptionAmounts extends BaseModel {
61
- membership_type: MembershipType;
62
- amount: number;
63
- description: string | null;
64
- is_active: boolean;
65
- effective_from: Date | null;
66
- effective_to: Date | null;
67
- }
@@ -1,114 +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.SubscriptionAmounts = exports.PassportRequestApprovalStatus = exports.PassportRequestStatus = exports.PassportRequestType = exports.ApplicationFor = exports.PassportType = exports.DiplomaticClubCardWorkFlowStatus = exports.DiplomaticClubCardApprovalStatus = exports.RequestStatus = exports.RequestType = exports.MembershipType = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const BaseModel_1 = require("./BaseModel");
15
- var MembershipType;
16
- (function (MembershipType) {
17
- MembershipType["SINGLE"] = "Single";
18
- MembershipType["FAMILY"] = "Family";
19
- })(MembershipType || (exports.MembershipType = MembershipType = {}));
20
- var RequestType;
21
- (function (RequestType) {
22
- RequestType["EMPLOYEE_FAMILY"] = "Employee Family";
23
- RequestType["EMPLOYEE_SELF"] = "Employee Self";
24
- RequestType["NON_EMPLOYEE"] = "Non Employee";
25
- })(RequestType || (exports.RequestType = RequestType = {}));
26
- var RequestStatus;
27
- (function (RequestStatus) {
28
- RequestStatus["DRAFT"] = "Draft";
29
- RequestStatus["SUBMITTED"] = "Submitted";
30
- RequestStatus["PENDING"] = "Pending";
31
- RequestStatus["IN_PROGRESS"] = "In Progress";
32
- RequestStatus["APPROVED"] = "Approved";
33
- RequestStatus["REJECTED"] = "Rejected";
34
- RequestStatus["COMPLETED"] = "Completed";
35
- RequestStatus["CANCELLED"] = "Cancelled";
36
- })(RequestStatus || (exports.RequestStatus = RequestStatus = {}));
37
- var DiplomaticClubCardApprovalStatus;
38
- (function (DiplomaticClubCardApprovalStatus) {
39
- DiplomaticClubCardApprovalStatus["PENDING"] = "Pending";
40
- DiplomaticClubCardApprovalStatus["APPROVED"] = "Approved";
41
- DiplomaticClubCardApprovalStatus["REJECTED"] = "Rejected";
42
- DiplomaticClubCardApprovalStatus["SKIPPED"] = "Skipped";
43
- DiplomaticClubCardApprovalStatus["IN_PROGRESS"] = "In Progress";
44
- })(DiplomaticClubCardApprovalStatus || (exports.DiplomaticClubCardApprovalStatus = DiplomaticClubCardApprovalStatus = {}));
45
- // Export alias for compatibility
46
- var DiplomaticWorkFlowModel_1 = require("./DiplomaticWorkFlowModel");
47
- Object.defineProperty(exports, "DiplomaticClubCardWorkFlowStatus", { enumerable: true, get: function () { return DiplomaticWorkFlowModel_1.DiplomaticWorkFlowStatus; } });
48
- // Passport Request Enums
49
- var PassportType;
50
- (function (PassportType) {
51
- PassportType["DIPLOMATIC"] = "Diplomatic Passport";
52
- PassportType["SERVICE"] = "Service passport";
53
- })(PassportType || (exports.PassportType = PassportType = {}));
54
- var ApplicationFor;
55
- (function (ApplicationFor) {
56
- ApplicationFor["SELF"] = "Self";
57
- ApplicationFor["DEPENDENTS"] = "Dependents";
58
- ApplicationFor["BOTH"] = "Both";
59
- })(ApplicationFor || (exports.ApplicationFor = ApplicationFor = {}));
60
- var PassportRequestType;
61
- (function (PassportRequestType) {
62
- PassportRequestType["NEW"] = "New";
63
- PassportRequestType["RENEWAL"] = "Renewal";
64
- PassportRequestType["REPLACEMENT"] = "Replacement";
65
- })(PassportRequestType || (exports.PassportRequestType = PassportRequestType = {}));
66
- var PassportRequestStatus;
67
- (function (PassportRequestStatus) {
68
- PassportRequestStatus["DRAFT"] = "Draft";
69
- PassportRequestStatus["SUBMITTED"] = "Submitted";
70
- PassportRequestStatus["PENDING"] = "Pending";
71
- PassportRequestStatus["IN_PROGRESS"] = "In Progress";
72
- PassportRequestStatus["APPROVED"] = "Approved";
73
- PassportRequestStatus["REJECTED"] = "Rejected";
74
- PassportRequestStatus["COMPLETED"] = "Completed";
75
- PassportRequestStatus["CANCELLED"] = "Cancelled";
76
- })(PassportRequestStatus || (exports.PassportRequestStatus = PassportRequestStatus = {}));
77
- var PassportRequestApprovalStatus;
78
- (function (PassportRequestApprovalStatus) {
79
- PassportRequestApprovalStatus["PENDING"] = "Pending";
80
- PassportRequestApprovalStatus["APPROVED"] = "Approved";
81
- PassportRequestApprovalStatus["REJECTED"] = "Rejected";
82
- PassportRequestApprovalStatus["SKIPPED"] = "Skipped";
83
- PassportRequestApprovalStatus["IN_PROGRESS"] = "In Progress";
84
- })(PassportRequestApprovalStatus || (exports.PassportRequestApprovalStatus = PassportRequestApprovalStatus = {}));
85
- let SubscriptionAmounts = class SubscriptionAmounts extends BaseModel_1.BaseModel {
86
- };
87
- exports.SubscriptionAmounts = SubscriptionAmounts;
88
- __decorate([
89
- (0, typeorm_1.Column)({ type: 'enum', enum: MembershipType, nullable: false }),
90
- __metadata("design:type", String)
91
- ], SubscriptionAmounts.prototype, "membership_type", void 0);
92
- __decorate([
93
- (0, typeorm_1.Column)({ type: 'decimal', precision: 10, scale: 2, nullable: false }),
94
- __metadata("design:type", Number)
95
- ], SubscriptionAmounts.prototype, "amount", void 0);
96
- __decorate([
97
- (0, typeorm_1.Column)({ type: 'varchar', length: 100, nullable: true }),
98
- __metadata("design:type", Object)
99
- ], SubscriptionAmounts.prototype, "description", void 0);
100
- __decorate([
101
- (0, typeorm_1.Column)({ type: 'boolean', default: true, nullable: false }),
102
- __metadata("design:type", Boolean)
103
- ], SubscriptionAmounts.prototype, "is_active", void 0);
104
- __decorate([
105
- (0, typeorm_1.Column)({ type: 'date', nullable: true }),
106
- __metadata("design:type", Object)
107
- ], SubscriptionAmounts.prototype, "effective_from", void 0);
108
- __decorate([
109
- (0, typeorm_1.Column)({ type: 'date', nullable: true }),
110
- __metadata("design:type", Object)
111
- ], SubscriptionAmounts.prototype, "effective_to", void 0);
112
- exports.SubscriptionAmounts = SubscriptionAmounts = __decorate([
113
- (0, typeorm_1.Entity)({ name: 'subscription_amounts' })
114
- ], SubscriptionAmounts);
@@ -1,98 +0,0 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- /**
5
- * Gate Pass Approval Status Enum
6
- */
7
- export enum GatePassApprovalStatus {
8
- PENDING = "Pending",
9
- IN_PROGRESS = "In Progress",
10
- APPROVED = "Approved",
11
- REJECTED = "Rejected",
12
- CANCELLED = "Cancelled"
13
- }
14
-
15
- /**
16
- * Gate Pass Approval Details Table
17
- * Stores approval information for each level of the workflow
18
- * Workflow: Employee → Department Admin Office → Security Department
19
- */
20
- @Entity({ name: 'gate_pass_approvals' })
21
- export class GatePassApprovalDetails extends BaseModel {
22
-
23
- @Column({ type: 'int', nullable: false })
24
- gate_pass_request_id: number; // Foreign key to gate_pass_requests
25
-
26
- @Column({ type: 'int', nullable: false })
27
- level: number; // Approval level (1: Department Admin Office, 2: Security Department)
28
-
29
- @Column({ type: 'int', nullable: true })
30
- approver_user_id: number | null;
31
-
32
- @Column({ type: 'int', nullable: true })
33
- approver_role_id: number | null;
34
-
35
- @Column({ type: 'integer', nullable: true })
36
- delegate_user_id: number | null; // If someone is delegating approval
37
-
38
- @Column({ type: 'integer', nullable: true })
39
- approved_by: number | null; // Actual user who approved (in case of delegation)
40
-
41
- @Column({ type: 'int', nullable: true })
42
- department_id: number | null;
43
-
44
- @Column({ type: 'int', nullable: true })
45
- section_id: number | null;
46
-
47
- @Column({ type: 'text', nullable: true })
48
- comment: string | null; // Approval/rejection comment
49
-
50
- @Column({ type: 'enum', enum: GatePassApprovalStatus, default: GatePassApprovalStatus.PENDING, nullable: false })
51
- approval_status: GatePassApprovalStatus;
52
-
53
- @Column({ type: 'boolean', default: true, nullable: false })
54
- is_allowed: boolean; // Whether this approval step is allowed
55
-
56
- @Column({ type: 'varchar', length: 50, nullable: true })
57
- access_type: string | null; // Normal - to track access type
58
-
59
- @Column({ type: 'integer', nullable: true })
60
- service_id: number | null;
61
-
62
- @Column({ type: 'integer', nullable: true })
63
- sub_service_id: number | null;
64
-
65
- constructor(
66
- gate_pass_request_id: number,
67
- level: number,
68
- approver_user_id: number | null,
69
- approver_role_id: number | null,
70
- delegate_user_id: number | null,
71
- approved_by: number | null,
72
- department_id: number | null,
73
- section_id: number | null,
74
- comment: string | null,
75
- approval_status: GatePassApprovalStatus,
76
- is_allowed: boolean,
77
- access_type: string | null,
78
- service_id: number | null,
79
- sub_service_id: number | null
80
- ) {
81
- super();
82
- this.gate_pass_request_id = gate_pass_request_id;
83
- this.level = level;
84
- this.approver_user_id = approver_user_id;
85
- this.approver_role_id = approver_role_id;
86
- this.delegate_user_id = delegate_user_id;
87
- this.approved_by = approved_by;
88
- this.department_id = department_id;
89
- this.section_id = section_id;
90
- this.comment = comment;
91
- this.approval_status = approval_status;
92
- this.is_allowed = is_allowed;
93
- this.access_type = access_type;
94
- this.service_id = service_id;
95
- this.sub_service_id = sub_service_id;
96
- }
97
- }
98
-
@@ -1,38 +0,0 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- /**
5
- * Gate Pass Request Attachment Table
6
- * Stores file attachments for gate pass requests
7
- */
8
- @Entity({ name: 'gate_pass_attachments' })
9
- export class GatePassRequestAttachment extends BaseModel {
10
-
11
- @Column({ type: 'integer', nullable: false })
12
- request_id: number;
13
-
14
- @Column({ type: 'integer', nullable: true })
15
- service_id: number | null;
16
-
17
- @Column({ type: 'integer', nullable: true })
18
- sub_service_id: number | null;
19
-
20
- @Column({ type: 'varchar', length: 500, nullable: false })
21
- file_url: string;
22
-
23
- @Column({ type: 'varchar', length: 255, nullable: true })
24
- file_name: string;
25
-
26
- @Column({ type: 'varchar', length: 100, nullable: true })
27
- file_type: string;
28
-
29
- @Column({ type: 'bigint', nullable: true })
30
- file_size: number | null;
31
-
32
- @Column({ type: 'integer', nullable: true })
33
- chat_id: number | null;
34
-
35
- @Column({ type: 'text', nullable: true })
36
- description: string | null; // Optional description for the attachment
37
- }
38
-
@@ -1,72 +0,0 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- /**
5
- * Gate Pass Message Type Enum
6
- */
7
- export enum GatePassMessageType {
8
- TEXT = "text",
9
- IMAGE = "image",
10
- VIDEO = "video",
11
- FILE = "file",
12
- LINK = "link"
13
- }
14
-
15
- /**
16
- * Gate Pass Request Chat Table
17
- * Stores chat messages for gate pass requests
18
- */
19
- @Entity({ name: 'gate_pass_chats' })
20
- export class GatePassRequestChat extends BaseModel {
21
-
22
- @Column({ type: 'integer', nullable: false })
23
- request_id: number;
24
-
25
- @Column({ type: 'integer', nullable: true })
26
- service_id: number | null;
27
-
28
- @Column({ type: 'integer', nullable: true })
29
- sub_service_id: number | null;
30
-
31
- @Column({ type: 'integer', nullable: false })
32
- user_id: number;
33
-
34
- @Column({ type: 'integer', nullable: true })
35
- role_id: number;
36
-
37
- @Column({ type: 'text', nullable: false })
38
- message: string;
39
-
40
- @Column({
41
- type: 'enum',
42
- enum: GatePassMessageType,
43
- default: GatePassMessageType.TEXT,
44
- nullable: false
45
- })
46
- messageType: GatePassMessageType;
47
-
48
- @Column({ type: 'text', nullable: true })
49
- status: string;
50
-
51
- constructor(
52
- request_id: number,
53
- user_id: number,
54
- role_id: number,
55
- message: string,
56
- service_id?: number,
57
- sub_service_id?: number,
58
- messageType?: GatePassMessageType,
59
- status?: string
60
- ) {
61
- super();
62
- this.request_id = request_id;
63
- this.service_id = service_id || null;
64
- this.sub_service_id = sub_service_id || null;
65
- this.user_id = user_id;
66
- this.role_id = role_id;
67
- this.message = message;
68
- this.messageType = messageType || GatePassMessageType.TEXT;
69
- this.status = status || 'Pending';
70
- }
71
- }
72
-
@@ -1,139 +0,0 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- /**
5
- * Gate Pass Request Status Enum
6
- */
7
- export enum GatePassRequestStatus {
8
- PENDING = "Pending",
9
- APPROVED = "Approved",
10
- REJECTED = "Rejected",
11
- CANCELLED = "Cancelled",
12
- IN_PROGRESS = "In Progress"
13
- }
14
-
15
- /**
16
- * Gate Pass Type Enum
17
- */
18
- export enum GatePassType {
19
- SHORT_TERM = "Short-term",
20
- LONG_TERM = "Long-term"
21
- }
22
-
23
- /**
24
- * Main Gate Pass Request Table (FM022)
25
- * This table stores the primary gate pass request data
26
- * Employees request gate passes for visitors
27
- */
28
- @Entity({ name: 'gate_pass_requests' })
29
- export class GatePassRequests extends BaseModel {
30
-
31
- // User and Department Information
32
- @Column({ type: 'int', nullable: false })
33
- user_id: number; // Employee who is requesting
34
-
35
- @Column({ type: 'int', nullable: true })
36
- req_user_department_id: number | null;
37
-
38
- @Column({ type: 'int', nullable: true })
39
- req_user_section_id: number | null;
40
-
41
- @Column({ type: 'int', nullable: true })
42
- service_id: number | null;
43
-
44
- @Column({ type: 'int', nullable: true })
45
- sub_service_id: number | null;
46
-
47
- // Request Status and Workflow
48
- @Column({ type: 'enum', enum: GatePassRequestStatus, default: GatePassRequestStatus.PENDING, nullable: false })
49
- status: GatePassRequestStatus;
50
-
51
- @Column({ type: 'varchar', length: 255, nullable: true })
52
- workflow_execution_id: string | null;
53
-
54
- // Gate Pass Request Fields (from requirements)
55
- @Column({ type: 'date', nullable: true })
56
- date: Date | null; // التاريخ (Date)
57
-
58
- @Column({ type: 'int', nullable: true })
59
- department_id: number | null; // الدائرة (Department)
60
-
61
- @Column({ type: 'varchar', length: 255, nullable: true })
62
- serial_number: string | null; // الرقم التسلسلي (Serial Number)
63
-
64
- @Column({ type: 'varchar', length: 255, nullable: true })
65
- office_number: string | null; // رقم المكتب (Office Number)
66
-
67
- @Column({ type: 'varchar', length: 255, nullable: true })
68
- visiting_department: string | null; // قسم الزيارة (Visiting Department) - Auto filled
69
-
70
- @Column({ type: 'varchar', length: 255, nullable: true })
71
- person_to_be_interviewed: string | null; // الشخص المطلوب مقابلته (Person to be Interviewed)
72
-
73
- @Column({ type: 'varchar', length: 255, nullable: true })
74
- vehicle_type_and_color: string | null; // نوع المركبة ولونها (Vehicle Type and Color)
75
-
76
- @Column({ type: 'varchar', length: 255, nullable: true })
77
- plate_number_and_code: string | null; // رقم اللوحة والرمز (Plate Number and Code)
78
-
79
- @Column({ type: 'text', nullable: true })
80
- purpose_of_entry: string | null; // الغرض من الدخول (Purpose of Entry)
81
-
82
- @Column({ type: 'date', nullable: true })
83
- from_date: Date | null; // من (From)
84
-
85
- @Column({ type: 'date', nullable: true })
86
- to_date: Date | null; // الى (To)
87
-
88
- @Column({ type: 'enum', enum: GatePassType, nullable: true })
89
- gate_pass_type: GatePassType | null; // نوع ممر البوابة (Gate Pass Type) - Short Term / Long Term
90
-
91
- @Column({ type: 'varchar', length: 255, nullable: true })
92
- visiting_person_in_department: string | null; // زائر في القسم (Visiting Person in Department)
93
-
94
- constructor(
95
- user_id: number,
96
- req_user_department_id: number | null,
97
- req_user_section_id: number | null,
98
- service_id: number | null,
99
- sub_service_id: number | null,
100
- status: GatePassRequestStatus,
101
- workflow_execution_id: string | null,
102
- date: Date | null,
103
- department_id: number | null,
104
- serial_number: string | null,
105
- office_number: string | null,
106
- visiting_department: string | null,
107
- person_to_be_interviewed: string | null,
108
- vehicle_type_and_color: string | null,
109
- plate_number_and_code: string | null,
110
- purpose_of_entry: string | null,
111
- from_date: Date | null,
112
- to_date: Date | null,
113
- gate_pass_type: GatePassType | null,
114
- visiting_person_in_department: string | null
115
- ) {
116
- super();
117
- this.user_id = user_id;
118
- this.req_user_department_id = req_user_department_id;
119
- this.req_user_section_id = req_user_section_id;
120
- this.service_id = service_id;
121
- this.sub_service_id = sub_service_id;
122
- this.status = status;
123
- this.workflow_execution_id = workflow_execution_id;
124
- this.date = date;
125
- this.department_id = department_id;
126
- this.serial_number = serial_number;
127
- this.office_number = office_number;
128
- this.visiting_department = visiting_department;
129
- this.person_to_be_interviewed = person_to_be_interviewed;
130
- this.vehicle_type_and_color = vehicle_type_and_color;
131
- this.plate_number_and_code = plate_number_and_code;
132
- this.purpose_of_entry = purpose_of_entry;
133
- this.from_date = from_date;
134
- this.to_date = to_date;
135
- this.gate_pass_type = gate_pass_type;
136
- this.visiting_person_in_department = visiting_person_in_department;
137
- }
138
- }
139
-