@platform-modules/civil-aviation-authority 2.0.27 → 2.0.28

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 (36) hide show
  1. package/.env +4 -10
  2. package/dist/data-source.js +10 -4
  3. package/dist/index.d.ts +5 -2
  4. package/dist/index.js +5 -2
  5. package/dist/models/HotelApprovalModel.d.ts +22 -0
  6. package/dist/models/HotelApprovalModel.js +91 -0
  7. package/dist/models/HotelAttachedModel.d.ts +12 -0
  8. package/dist/models/HotelAttachedModel.js +64 -0
  9. package/dist/models/HotelChatModel.d.ts +17 -0
  10. package/dist/models/HotelChatModel.js +67 -0
  11. package/dist/models/HotelWorkFlowModel.d.ts +14 -0
  12. package/dist/models/HotelWorkFlowModel.js +56 -0
  13. package/dist/models/HotelreservationModal.d.ts +30 -0
  14. package/dist/models/HotelreservationModal.js +119 -0
  15. package/dist/models/HotelreservationModel.d.ts +44 -0
  16. package/dist/models/HotelreservationModel.js +171 -0
  17. package/dist/models/LogisticsForeignVehicleModel.d.ts +6 -5
  18. package/dist/models/LogisticsForeignVehicleModel.js +7 -5
  19. package/dist/models/WorkflowTaskNames.d.ts +3 -12
  20. package/dist/models/WorkflowTaskNames.js +9 -28
  21. package/package.json +1 -1
  22. package/src/data-source.ts +10 -5
  23. package/src/index.ts +5 -2
  24. package/src/models/HotelApprovalModel.ts +78 -0
  25. package/src/models/HotelAttachedModel.ts +54 -0
  26. package/src/models/HotelChatModel.ts +55 -0
  27. package/src/models/HotelWorkFlowModel.ts +42 -0
  28. package/src/models/HotelreservationModel.ts +159 -0
  29. package/src/models/LogisticsForeignVehicleModel.ts +10 -8
  30. package/src/models/WorkflowTaskNames.ts +8 -27
  31. package/dist/models/PortalFeedbackModel.d.ts +0 -8
  32. package/dist/models/PortalFeedbackModel.js +0 -44
  33. package/dist/models/feedbackModel.d.ts +0 -16
  34. package/dist/models/feedbackModel.js +0 -61
  35. package/src/models/PortalFeedbackModel.ts +0 -34
  36. package/src/models/feedbackModel.ts +0 -50
@@ -0,0 +1,159 @@
1
+ import { Entity, Column } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MealType {
5
+ BREAKFAST = "Breakfast",
6
+ LUNCH = "Lunch",
7
+ DINNER = "Dinner",
8
+ }
9
+
10
+ export enum ServiceTypes {
11
+ LAUNDRY = "Laundry",
12
+ TELEPHONE = "Telephone Service",
13
+ }
14
+
15
+ export enum HotelReservationStatus {
16
+ PENDING = "Pending",
17
+ APPROVED = "Approved",
18
+ REJECTED = "Rejected",
19
+ IN_PROGRESS = "In Progress"
20
+ }
21
+
22
+ @Entity({ name:'hotelreservations'})
23
+ export class HotelReservation extends BaseModel {
24
+ // Workflow fields (similar to IT Help Desk)
25
+ @Column({ type: 'int', nullable: true })
26
+ req_user_department_id: number | null;
27
+
28
+ @Column({ type: 'int', nullable: true })
29
+ req_user_section_id: number | null;
30
+
31
+ @Column({ nullable: true })
32
+ service_id: number | null;
33
+
34
+ @Column({ nullable: true })
35
+ sub_service_id: number | null;
36
+
37
+ @Column({ type: 'varchar', length: 20, nullable: true })
38
+ service_type: string | null; // 'internal' or 'external'
39
+
40
+ @Column({ type: 'varchar', nullable: true })
41
+ workflow_execution_id: string | null;
42
+
43
+ @Column({
44
+ type: "enum",
45
+ enum: HotelReservationStatus,
46
+ default: HotelReservationStatus.PENDING,
47
+ nullable: false,
48
+ })
49
+ status: HotelReservationStatus;
50
+
51
+ @Column({ nullable: false })
52
+ user_id: number;
53
+
54
+ // Hotel reservation specific fields
55
+ @Column({ type: 'varchar', length: 50 })
56
+ type_of_accommodation: string;
57
+
58
+ @Column({ type: 'decimal', precision: 10, scale: 2, nullable: false })
59
+ price: number;
60
+
61
+ @Column({ type: 'enum', enum: MealType, nullable: false, })
62
+ meal: MealType;
63
+
64
+ @Column({ type: 'enum', enum: ServiceTypes, nullable: false, })
65
+ service: ServiceTypes;
66
+
67
+ @Column({ type: 'timestamptz', nullable: false })
68
+ date_of_request: Date;
69
+
70
+ @Column({ type: 'varchar', length: 100, nullable: false })
71
+ hotel_name: string;
72
+
73
+ @Column({ type: 'date', nullable: false })
74
+ check_in_date: Date;
75
+
76
+ @Column({ type: 'time', nullable: false })
77
+ check_in_time: string;
78
+
79
+ @Column({ type: 'date', nullable: false })
80
+ check_out_date: Date;
81
+
82
+ @Column({ type: 'time', nullable: false })
83
+ check_out_time: string;
84
+
85
+ @Column({ type: 'int', nullable: false })
86
+ number_of_guests: number;
87
+
88
+ @Column({ type: 'text', nullable: true })
89
+ description: string;
90
+
91
+ @Column({ type: 'text', nullable: false })
92
+ attachment_url: string;
93
+
94
+ @Column({ type: 'varchar', length: 100, nullable: false })
95
+ requested_by: string;
96
+
97
+ @Column({ type: 'varchar', length: 100, nullable: false })
98
+ visitor_name: string;
99
+
100
+ @Column({ type: 'boolean', default: false })
101
+ hr_approval: boolean;
102
+
103
+ @Column({ type: 'boolean', default: false })
104
+ pr_approval: boolean;
105
+
106
+
107
+ constructor(
108
+ type_of_accommodation: string,
109
+ price: number,
110
+ meal: MealType,
111
+ service: ServiceTypes,
112
+ date_of_request: Date,
113
+ hotel_name: string,
114
+ check_in_date: Date,
115
+ check_in_time: string,
116
+ check_out_date: Date,
117
+ check_out_time: string,
118
+ number_of_guests: number,
119
+ description: string,
120
+ requested_by: string,
121
+ visitor_name: string,
122
+ user_id: number,
123
+ status: HotelReservationStatus = HotelReservationStatus.PENDING,
124
+ hr_approval: boolean = false,
125
+ pr_approval: boolean = false,
126
+ service_id?: number | null,
127
+ sub_service_id?: number | null,
128
+ service_type?: string | null,
129
+ workflow_execution_id?: string | null,
130
+ req_user_department_id?: number | null,
131
+ req_user_section_id?: number | null
132
+ ) {
133
+ super();
134
+ this.type_of_accommodation = type_of_accommodation;
135
+ this.price = price;
136
+ this.meal = meal;
137
+ this.service = service;
138
+ this.date_of_request = date_of_request;
139
+ this.hotel_name = hotel_name;
140
+ this.check_in_date = check_in_date;
141
+ this.check_in_time = check_in_time;
142
+ this.check_out_date = check_out_date;
143
+ this.check_out_time = check_out_time;
144
+ this.number_of_guests = number_of_guests;
145
+ this.description = description;
146
+ this.requested_by = requested_by;
147
+ this.visitor_name = visitor_name;
148
+ this.user_id = user_id;
149
+ this.status = status;
150
+ this.hr_approval = hr_approval;
151
+ this.pr_approval = pr_approval;
152
+ this.service_id = service_id ?? null;
153
+ this.sub_service_id = sub_service_id ?? null;
154
+ this.service_type = service_type ?? null;
155
+ this.workflow_execution_id = workflow_execution_id ?? null;
156
+ this.req_user_department_id = req_user_department_id ?? null;
157
+ this.req_user_section_id = req_user_section_id ?? null;
158
+ }
159
+ }
@@ -2,9 +2,10 @@ import { Column, Entity } from "typeorm";
2
2
  import { BaseModel } from './BaseModel';
3
3
 
4
4
  export enum Foreign_Purpose_of_Travel {
5
- SITE = "Site Visit",
6
- AIRPORT = "Airport Duty",
7
- OFFICIAL = "Official Meeting",
5
+ AIRPORT_PICKUP = "Airport Pickup/Drop-off",
6
+ OFFICIAL_MEETING = "Official Meeting",
7
+ SITE_VISIT = "Site Visit",
8
+ CONFERENCE = "Conference/Event",
8
9
  OTHER = "Other"
9
10
  }
10
11
 
@@ -47,12 +48,13 @@ export class LogisticsForeignVehicleRequests extends BaseModel {
47
48
  @Column({ type: 'int', nullable: false })
48
49
  number_of_passengers: number;
49
50
 
50
- @Column({
51
- type: 'varchar',
52
- default: 'Other',
51
+ @Column({
52
+ type: "enum",
53
+ enum: Foreign_Purpose_of_Travel,
54
+ default: Foreign_Purpose_of_Travel.OTHER,
53
55
  nullable: false,
54
56
  })
55
- purpose_of_travel: string;
57
+ purpose_of_travel: Foreign_Purpose_of_Travel;
56
58
 
57
59
  @Column({
58
60
  type: "enum",
@@ -106,7 +108,7 @@ export class LogisticsForeignVehicleRequests extends BaseModel {
106
108
  sub_service_id: number,
107
109
  user_id: number,
108
110
  number_of_passengers: number,
109
- purpose_of_travel: string,
111
+ purpose_of_travel: Foreign_Purpose_of_Travel,
110
112
  vehicle_required_location: Foreign_Vehicle_Required_Location,
111
113
  contact_number: string,
112
114
  request_type: Foreign_Request_Type,
@@ -1,50 +1,31 @@
1
1
  import { Column, Entity } from "typeorm";
2
2
  import { BaseModel } from './BaseModel';
3
3
 
4
- export enum TaskType {
5
- SIMPLE = 'SIMPLE',
6
- HUMAN = 'HUMAN'
7
- }
8
-
9
- export enum CategoryType {
10
- CREATE = 'CREATE',
11
- APPROVAL = 'APPROVAL',
12
- NOTIFICATION = 'NOTIFICATION'
13
- }
14
-
15
4
  @Entity({ name: 'workflow_task_names' })
16
5
  export class WorkflowTaskNames extends BaseModel {
17
6
 
18
7
  @Column({ type: 'varchar', length: 100, nullable: false })
19
8
  name: string;
9
+
10
+ @Column({ type: 'integer', nullable: false })
11
+ task_id: number;
20
12
 
21
13
  @Column({ type: 'varchar', length: 200, nullable: true })
22
14
  description: string;
23
15
 
24
- @Column({
25
- type: 'enum',
26
- enum: TaskType,
27
- nullable: true
28
- })
29
- task_type: TaskType;
30
-
31
- @Column({
32
- type: 'enum',
33
- enum: CategoryType,
34
- nullable: true
35
- })
36
- category: CategoryType;
16
+ @Column({ type: 'varchar', length: 200, nullable: true })
17
+ task_type: string;
37
18
 
38
19
  constructor(
39
20
  name: string,
21
+ task_id: number,
40
22
  description: string,
41
- task_type: TaskType,
42
- category: CategoryType
23
+ task_type: string
43
24
  ) {
44
25
  super();
45
26
  this.name = name;
27
+ this.task_id = task_id;
46
28
  this.description = description;
47
29
  this.task_type = task_type;
48
- this.category = category;
49
30
  }
50
31
  }
@@ -1,8 +0,0 @@
1
- import { BaseModel } from './BaseModel';
2
- import { Rating } from './feedbackModel';
3
- export declare class PortalFeedback extends BaseModel {
4
- comment: string;
5
- rating: Rating;
6
- user_Id: number;
7
- constructor(comment: string, rating: Rating, user_Id: number);
8
- }
@@ -1,44 +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.PortalFeedback = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const BaseModel_1 = require("./BaseModel");
15
- const feedbackModel_1 = require("./feedbackModel");
16
- let PortalFeedback = class PortalFeedback extends BaseModel_1.BaseModel {
17
- constructor(comment, rating, user_Id) {
18
- super();
19
- this.comment = comment,
20
- this.rating = rating,
21
- this.user_Id = user_Id;
22
- }
23
- };
24
- exports.PortalFeedback = PortalFeedback;
25
- __decorate([
26
- (0, typeorm_1.Column)({ nullable: true }),
27
- __metadata("design:type", String)
28
- ], PortalFeedback.prototype, "comment", void 0);
29
- __decorate([
30
- (0, typeorm_1.Column)({
31
- type: "enum",
32
- enum: feedbackModel_1.Rating,
33
- nullable: true,
34
- }),
35
- __metadata("design:type", Number)
36
- ], PortalFeedback.prototype, "rating", void 0);
37
- __decorate([
38
- (0, typeorm_1.Column)({ nullable: true }),
39
- __metadata("design:type", Number)
40
- ], PortalFeedback.prototype, "user_Id", void 0);
41
- exports.PortalFeedback = PortalFeedback = __decorate([
42
- (0, typeorm_1.Entity)({ name: 'portal_feedback' }),
43
- __metadata("design:paramtypes", [String, Number, Number])
44
- ], PortalFeedback);
@@ -1,16 +0,0 @@
1
- import { BaseModel } from './BaseModel';
2
- export declare enum Rating {
3
- ONE = 1,
4
- TWO = 2,
5
- THREE = 3,
6
- FOUR = 4,
7
- FIVE = 5
8
- }
9
- export declare class Feedback extends BaseModel {
10
- comment: string;
11
- rating: Rating;
12
- category_Id: number;
13
- sub_category_Id: number;
14
- user_Id: number;
15
- constructor(comment: string, rating: Rating, category_Id: number, sub_category_Id: number, user_Id: number);
16
- }
@@ -1,61 +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.Feedback = exports.Rating = void 0;
13
- const typeorm_1 = require("typeorm");
14
- const BaseModel_1 = require("./BaseModel");
15
- var Rating;
16
- (function (Rating) {
17
- Rating[Rating["ONE"] = 1] = "ONE";
18
- Rating[Rating["TWO"] = 2] = "TWO";
19
- Rating[Rating["THREE"] = 3] = "THREE";
20
- Rating[Rating["FOUR"] = 4] = "FOUR";
21
- Rating[Rating["FIVE"] = 5] = "FIVE";
22
- })(Rating || (exports.Rating = Rating = {}));
23
- let Feedback = class Feedback extends BaseModel_1.BaseModel {
24
- constructor(comment, rating, category_Id, sub_category_Id, user_Id) {
25
- super();
26
- this.comment = comment,
27
- this.rating = rating,
28
- this.category_Id = category_Id,
29
- this.sub_category_Id = sub_category_Id,
30
- this.user_Id = user_Id;
31
- }
32
- };
33
- exports.Feedback = Feedback;
34
- __decorate([
35
- (0, typeorm_1.Column)({ nullable: true }),
36
- __metadata("design:type", String)
37
- ], Feedback.prototype, "comment", void 0);
38
- __decorate([
39
- (0, typeorm_1.Column)({
40
- type: "enum",
41
- enum: Rating,
42
- nullable: true,
43
- }),
44
- __metadata("design:type", Number)
45
- ], Feedback.prototype, "rating", void 0);
46
- __decorate([
47
- (0, typeorm_1.Column)({ nullable: true }),
48
- __metadata("design:type", Number)
49
- ], Feedback.prototype, "category_Id", void 0);
50
- __decorate([
51
- (0, typeorm_1.Column)({ nullable: true }),
52
- __metadata("design:type", Number)
53
- ], Feedback.prototype, "sub_category_Id", void 0);
54
- __decorate([
55
- (0, typeorm_1.Column)({ nullable: true }),
56
- __metadata("design:type", Number)
57
- ], Feedback.prototype, "user_Id", void 0);
58
- exports.Feedback = Feedback = __decorate([
59
- (0, typeorm_1.Entity)({ name: 'feedback' }),
60
- __metadata("design:paramtypes", [String, Number, Number, Number, Number])
61
- ], Feedback);
@@ -1,34 +0,0 @@
1
-
2
- import { Column, Entity } from "typeorm";
3
- import { BaseModel } from './BaseModel';
4
- import { Rating } from './feedbackModel';
5
-
6
- @Entity({ name: 'portal_feedback' })
7
- export class PortalFeedback extends BaseModel {
8
-
9
- @Column({ nullable: true })
10
- comment: string;
11
-
12
- @Column({
13
- type: "enum",
14
- enum: Rating,
15
- nullable: true,
16
- })
17
- rating: Rating;
18
-
19
- @Column({ nullable: true })
20
- user_Id: number;
21
-
22
- constructor(
23
- comment: string,
24
- rating: Rating,
25
- user_Id: number,
26
- ) {
27
- super();
28
- this.comment = comment,
29
- this.rating = rating,
30
- this.user_Id = user_Id
31
- }
32
- }
33
-
34
-
@@ -1,50 +0,0 @@
1
-
2
- import { Column, Entity, BeforeInsert, BeforeUpdate } from "typeorm";
3
- import { BaseModel } from './BaseModel';
4
-
5
- export enum Rating {
6
- ONE = 1,
7
- TWO = 2,
8
- THREE = 3,
9
- FOUR = 4,
10
- FIVE = 5,
11
- }
12
-
13
- @Entity({ name: 'feedback' })
14
- export class Feedback extends BaseModel {
15
-
16
- @Column({ nullable: true })
17
- comment: string;
18
-
19
- @Column({
20
- type: "enum",
21
- enum: Rating,
22
- nullable: true,
23
- })
24
- rating: Rating;
25
-
26
- @Column({ nullable: true })
27
- category_Id: number;
28
-
29
- @Column({ nullable: true })
30
- sub_category_Id: number;
31
-
32
- @Column({ nullable: true })
33
- user_Id: number;
34
-
35
- constructor(
36
- comment: string,
37
- rating: Rating,
38
- category_Id: number,
39
- sub_category_Id: number,
40
- user_Id: number,
41
- ) {
42
- super();
43
- this.comment = comment,
44
- this.rating = rating,
45
- this.category_Id = category_Id,
46
- this.sub_category_Id = sub_category_Id,
47
- this.user_Id = user_Id
48
- }
49
- }
50
-