@platform-modules/foreign-ministry 1.3.133 → 1.3.135

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 (52) hide show
  1. package/.env +15 -6
  2. package/dist/data-source.js +13 -1
  3. package/dist/index.d.ts +6 -0
  4. package/dist/index.js +7 -0
  5. package/dist/models/HelpContentMappedCategoriesModel.d.ts +6 -0
  6. package/dist/models/HelpContentMappedCategoriesModel.js +34 -0
  7. package/dist/models/HelpContentMappedTagsModel.d.ts +6 -0
  8. package/dist/models/HelpContentMappedTagsModel.js +34 -0
  9. package/dist/models/HelpContentTagsModel.d.ts +5 -0
  10. package/dist/models/HelpContentTagsModel.js +29 -0
  11. package/dist/models/MeetingApprovalModel.d.ts +22 -0
  12. package/dist/models/MeetingApprovalModel.js +84 -0
  13. package/dist/models/MeetingAttachmentModel.d.ts +11 -0
  14. package/dist/models/MeetingAttachmentModel.js +52 -0
  15. package/dist/models/MeetingAttendeeModel.d.ts +12 -0
  16. package/dist/models/MeetingAttendeeModel.js +39 -0
  17. package/dist/models/MeetingChatModel.d.ts +19 -0
  18. package/dist/models/MeetingChatModel.js +77 -0
  19. package/dist/models/MeetingRequestModel.d.ts +68 -0
  20. package/dist/models/MeetingRequestModel.js +174 -0
  21. package/dist/models/MeetingWorkflowModel.d.ts +17 -0
  22. package/dist/models/MeetingWorkflowModel.js +62 -0
  23. package/dist/models/StayAfterHoursRequestModel.d.ts +0 -2
  24. package/dist/models/StayAfterHoursRequestModel.js +0 -8
  25. package/dist/models/questionTagsModel.d.ts +6 -0
  26. package/dist/models/questionTagsModel.js +34 -0
  27. package/package.json +24 -24
  28. package/src/data-source.ts +357 -345
  29. package/src/index.ts +278 -272
  30. package/src/models/DocumentTranslationRequestModel.ts +54 -54
  31. package/src/models/LeaveConfigModel.ts +71 -71
  32. package/src/models/MeetingApprovalModel.ts +56 -0
  33. package/src/models/MeetingAttachmentModel.ts +29 -0
  34. package/src/models/MeetingAttendeeModel.ts +21 -0
  35. package/src/models/MeetingChatModel.ts +63 -0
  36. package/src/models/MeetingRequestModel.ts +132 -0
  37. package/src/models/MeetingWorkflowModel.ts +38 -0
  38. package/src/models/MissionTravelApprovalModel.ts +101 -101
  39. package/src/models/MissionTravelAttachmentModel.ts +56 -56
  40. package/src/models/MissionTravelChatModel.ts +52 -52
  41. package/src/models/MissionTravelPersonModel.ts +105 -105
  42. package/src/models/MissionTravelWorkflowModel.ts +54 -54
  43. package/src/models/MoodleUsersModel.ts +25 -25
  44. package/src/models/RegisterCandidateRequestModel.ts +177 -177
  45. package/src/models/SectionModel.ts +35 -35
  46. package/src/models/ServicesNotificationConfigsModel.ts +55 -55
  47. package/src/models/StayAfterHoursRequestModel.ts +5 -4
  48. package/dist/models/MissionTravelClassConfigModel.d.ts +0 -10
  49. package/dist/models/MissionTravelClassConfigModel.js +0 -50
  50. package/dist/models/MissionTravelPerdiemModel.d.ts +0 -10
  51. package/dist/models/MissionTravelPerdiemModel.js +0 -54
  52. /package/src/models/{LeaveConfigGradesModel.Ts → LeaveConfigGradesModel.ts} +0 -0
@@ -1,54 +1,54 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum DocumentTranslationStatus {
5
- SUBMITTED = "Submitted",
6
- PENDING = "Pending",
7
- ASSIGNED = "Assigned",
8
- IN_PROGRESS = "In Progress",
9
- APPROVED = "Approved",
10
- REJECTED = "Rejected"
11
- }
12
-
13
- export enum DocumentClassificationType {
14
- NORMAL = "Normal",
15
- CONFIDENTIAL = "Confidential"
16
- }
17
-
18
- @Entity({ name: 'document_translation_requests' })
19
- export class DocumentTranslationRequests extends BaseModel {
20
-
21
- // Common columns
22
- @Column({ type: 'int', nullable: true })
23
- req_user_department_id: number | null;
24
-
25
- @Column({ type: 'int', nullable: true })
26
- req_user_section_id: number | null;
27
-
28
- @Column({ type: 'int', nullable: true })
29
- service_id: number | null;
30
-
31
- @Column({ type: 'int', nullable: true })
32
- sub_service_id: number | null;
33
-
34
- @Column({ type: 'int', nullable: false })
35
- user_id: number;
36
-
37
- // Document Translation specific columns
38
- @Column({ type: 'varchar', length: 255, nullable: false })
39
- document_type: string;
40
-
41
- @Column({ type: 'varchar', length: 500, nullable: false })
42
- document_name: string;
43
-
44
- @Column({ type: 'enum', enum: DocumentClassificationType, nullable: false })
45
- document_classification: DocumentClassificationType;
46
-
47
- @Column({ type: 'enum', enum: DocumentTranslationStatus, default: DocumentTranslationStatus.PENDING, nullable: false })
48
- status: DocumentTranslationStatus;
49
-
50
- @Column({ type: 'varchar', nullable: true })
51
- workflow_execution_id: string | null;
52
-
53
- }
54
-
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum DocumentTranslationStatus {
5
+ SUBMITTED = "Submitted",
6
+ PENDING = "Pending",
7
+ ASSIGNED = "Assigned",
8
+ IN_PROGRESS = "In Progress",
9
+ APPROVED = "Approved",
10
+ REJECTED = "Rejected"
11
+ }
12
+
13
+ export enum DocumentClassificationType {
14
+ NORMAL = "Normal",
15
+ CONFIDENTIAL = "Confidential"
16
+ }
17
+
18
+ @Entity({ name: 'document_translation_requests' })
19
+ export class DocumentTranslationRequests extends BaseModel {
20
+
21
+ // Common columns
22
+ @Column({ type: 'int', nullable: true })
23
+ req_user_department_id: number | null;
24
+
25
+ @Column({ type: 'int', nullable: true })
26
+ req_user_section_id: number | null;
27
+
28
+ @Column({ type: 'int', nullable: true })
29
+ service_id: number | null;
30
+
31
+ @Column({ type: 'int', nullable: true })
32
+ sub_service_id: number | null;
33
+
34
+ @Column({ type: 'int', nullable: false })
35
+ user_id: number;
36
+
37
+ // Document Translation specific columns
38
+ @Column({ type: 'varchar', length: 255, nullable: false })
39
+ document_type: string;
40
+
41
+ @Column({ type: 'varchar', length: 500, nullable: false })
42
+ document_name: string;
43
+
44
+ @Column({ type: 'enum', enum: DocumentClassificationType, nullable: false })
45
+ document_classification: DocumentClassificationType;
46
+
47
+ @Column({ type: 'enum', enum: DocumentTranslationStatus, default: DocumentTranslationStatus.PENDING, nullable: false })
48
+ status: DocumentTranslationStatus;
49
+
50
+ @Column({ type: 'varchar', nullable: true })
51
+ workflow_execution_id: string | null;
52
+
53
+ }
54
+
@@ -1,72 +1,72 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum enumFrequency {
5
- Monthly = 'Monthly',
6
- Yearly = 'Yearly',
7
- }
8
-
9
- //This model is used to store the Financial Grade declaration on the Admin Side
10
- @Entity({ name: 'leave_configuration' })
11
- export class LeaveConfiguration extends BaseModel {
12
-
13
- @Column({ type: 'varchar', nullable: true })
14
- category: string;
15
-
16
- @Column({ type: 'int', nullable: true })
17
- MandC_id: number;
18
-
19
- @Column({ type: 'int', nullable: true })
20
- leave_type_id: number;
21
-
22
- @Column({ type: 'varchar', nullable: true })
23
- frequency: enumFrequency;
24
-
25
- @Column({ type: 'varchar', nullable: true })
26
- region: string;
27
-
28
- @Column({ type: 'varchar', nullable: true })
29
- country: string;
30
-
31
- @Column({ type: 'varchar', nullable: true })
32
- location: string;
33
-
34
- @Column({ nullable: true, default: false })
35
- is_carryforward: boolean;
36
-
37
- @Column({ type: 'int', nullable: true, default: 0 })
38
- carryforward_limit: number;
39
-
40
- @Column({ type: 'date', nullable: true })
41
- from_date: Date;
42
-
43
- @Column({ type: 'date', nullable: true })
44
- to_date: Date;
45
-
46
- @Column({ type: 'varchar', nullable: true })
47
- reason: string;
48
-
49
- @Column({ type: 'int', nullable: true })
50
- emergency_balance_days: number | null;
51
-
52
- @Column({ type: 'date', nullable: true })
53
- last_credited: Date | null;
54
-
55
- constructor(category: string, MandC_id: number, leave_type_id: number, frequency: enumFrequency, region: string, country: string, location: string, is_carryforward: boolean, carryforward_limit: number, from_date: Date, to_date: Date, reason: string, emergency_balance_days?: number|null, last_credited?: Date|null) {
56
- super();
57
- this.category = category;
58
- this.MandC_id = MandC_id;
59
- this.leave_type_id = leave_type_id;
60
- this.frequency = frequency;
61
- this.region = region;
62
- this.country = country;
63
- this.location = location;
64
- this.is_carryforward = is_carryforward;
65
- this.carryforward_limit = carryforward_limit;
66
- this.from_date = from_date;
67
- this.to_date = to_date;
68
- this.reason = reason;
69
- this.emergency_balance_days = emergency_balance_days ?? null;
70
- this.last_credited = last_credited ?? null;
71
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum enumFrequency {
5
+ Monthly = 'Monthly',
6
+ Yearly = 'Yearly',
7
+ }
8
+
9
+ //This model is used to store the Financial Grade declaration on the Admin Side
10
+ @Entity({ name: 'leave_configuration' })
11
+ export class LeaveConfiguration extends BaseModel {
12
+
13
+ @Column({ type: 'varchar', nullable: true })
14
+ category: string;
15
+
16
+ @Column({ type: 'int', nullable: true })
17
+ MandC_id: number;
18
+
19
+ @Column({ type: 'int', nullable: true })
20
+ leave_type_id: number;
21
+
22
+ @Column({ type: 'varchar', nullable: true })
23
+ frequency: enumFrequency;
24
+
25
+ @Column({ type: 'varchar', nullable: true })
26
+ region: string;
27
+
28
+ @Column({ type: 'varchar', nullable: true })
29
+ country: string;
30
+
31
+ @Column({ type: 'varchar', nullable: true })
32
+ location: string;
33
+
34
+ @Column({ nullable: true, default: false })
35
+ is_carryforward: boolean;
36
+
37
+ @Column({ type: 'int', nullable: true, default: 0 })
38
+ carryforward_limit: number;
39
+
40
+ @Column({ type: 'date', nullable: true })
41
+ from_date: Date;
42
+
43
+ @Column({ type: 'date', nullable: true })
44
+ to_date: Date;
45
+
46
+ @Column({ type: 'varchar', nullable: true })
47
+ reason: string;
48
+
49
+ @Column({ type: 'int', nullable: true })
50
+ emergency_balance_days: number | null;
51
+
52
+ @Column({ type: 'date', nullable: true })
53
+ last_credited: Date | null;
54
+
55
+ constructor(category: string, MandC_id: number, leave_type_id: number, frequency: enumFrequency, region: string, country: string, location: string, is_carryforward: boolean, carryforward_limit: number, from_date: Date, to_date: Date, reason: string, emergency_balance_days?: number|null, last_credited?: Date|null) {
56
+ super();
57
+ this.category = category;
58
+ this.MandC_id = MandC_id;
59
+ this.leave_type_id = leave_type_id;
60
+ this.frequency = frequency;
61
+ this.region = region;
62
+ this.country = country;
63
+ this.location = location;
64
+ this.is_carryforward = is_carryforward;
65
+ this.carryforward_limit = carryforward_limit;
66
+ this.from_date = from_date;
67
+ this.to_date = to_date;
68
+ this.reason = reason;
69
+ this.emergency_balance_days = emergency_balance_days ?? null;
70
+ this.last_credited = last_credited ?? null;
71
+ }
72
72
  }
@@ -0,0 +1,56 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MeetingApprovalStatus {
5
+ PENDING = 'Pending',
6
+ IN_PROGRESS = 'In Progress',
7
+ APPROVED = 'Approved',
8
+ REJECTED = 'Rejected',
9
+ }
10
+
11
+ @Entity({ name: 'meeting_approvals' })
12
+ export class MeetingApprovalDetails extends BaseModel {
13
+ @Column({ type: 'integer', 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: 'integer', nullable: false })
23
+ level: number;
24
+
25
+ @Column({ type: 'integer', nullable: true })
26
+ approver_role_id: number;
27
+
28
+ @Column({ type: 'integer', nullable: true })
29
+ department_id: number | null;
30
+
31
+ @Column({ type: 'integer', nullable: true })
32
+ section_id: number | null;
33
+
34
+ @Column({ type: 'integer', nullable: true })
35
+ approver_user_id: number | null;
36
+
37
+ @Column({ type: 'integer', nullable: true })
38
+ delegate_user_id: number | null;
39
+
40
+ @Column({ type: 'integer', nullable: true })
41
+ approved_by: number | null;
42
+
43
+ @Column({ type: 'varchar', length: 500, nullable: true, default: '' })
44
+ comment: string;
45
+
46
+ @Column({
47
+ type: 'enum',
48
+ enum: MeetingApprovalStatus,
49
+ default: MeetingApprovalStatus.PENDING,
50
+ nullable: false,
51
+ })
52
+ approval_status: MeetingApprovalStatus;
53
+
54
+ @Column({ type: 'boolean', default: true, nullable: false })
55
+ is_allowed: boolean;
56
+ }
@@ -0,0 +1,29 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'meeting_attachments' })
5
+ export class MeetingRequestAttachment 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: 'varchar', length: 500, nullable: false })
16
+ file_url: string;
17
+
18
+ @Column({ type: 'varchar', length: 255, nullable: true })
19
+ file_name: string;
20
+
21
+ @Column({ type: 'varchar', length: 100, nullable: true })
22
+ file_type: string;
23
+
24
+ @Column({ type: 'bigint', nullable: true })
25
+ file_size: number | null;
26
+
27
+ @Column({ type: 'integer', nullable: true })
28
+ chat_id: number | null;
29
+ }
@@ -0,0 +1,21 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MeetingAttendeeStatus {
5
+ INVITED = 'Invited',
6
+ ACCEPTED = 'Accepted',
7
+ REJECTED = 'Rejected',
8
+ NO_SHOW = 'No-Show',
9
+ }
10
+
11
+ @Entity({ name: 'meeting_attendees' })
12
+ export class MeetingAttendees extends BaseModel {
13
+ @Column({ type: 'integer', nullable: false })
14
+ attendee_id: number;
15
+
16
+ @Column({ type: 'integer', nullable: false })
17
+ meeting_id: number;
18
+
19
+ @Column({ type: 'enum', enum: MeetingAttendeeStatus, default: MeetingAttendeeStatus.INVITED, nullable: false })
20
+ status: MeetingAttendeeStatus;
21
+ }
@@ -0,0 +1,63 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MeetingMessageType {
5
+ TEXT = 'text',
6
+ IMAGE = 'image',
7
+ VIDEO = 'video',
8
+ FILE = 'file',
9
+ LINK = 'link',
10
+ }
11
+
12
+ @Entity({ name: 'meeting_chats' })
13
+ export class MeetingRequestChat 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
+ user_id: number;
25
+
26
+ @Column({ type: 'integer', nullable: true })
27
+ role_id: number;
28
+
29
+ @Column({ type: 'text', nullable: false })
30
+ message: string;
31
+
32
+ @Column({
33
+ type: 'enum',
34
+ enum: MeetingMessageType,
35
+ default: MeetingMessageType.TEXT,
36
+ nullable: false,
37
+ })
38
+ messageType: MeetingMessageType;
39
+
40
+ @Column({ type: 'text', nullable: true })
41
+ status: string;
42
+
43
+ constructor(
44
+ request_id: number,
45
+ user_id: number,
46
+ role_id: number,
47
+ message: string,
48
+ service_id?: number,
49
+ sub_service_id?: number,
50
+ messageType?: MeetingMessageType,
51
+ status?: string
52
+ ) {
53
+ super();
54
+ this.request_id = request_id;
55
+ this.service_id = service_id ?? null;
56
+ this.sub_service_id = sub_service_id ?? null;
57
+ this.user_id = user_id;
58
+ this.role_id = role_id;
59
+ this.message = message;
60
+ this.messageType = messageType ?? MeetingMessageType.TEXT;
61
+ this.status = status ?? 'Pending';
62
+ }
63
+ }
@@ -0,0 +1,132 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MeetingRequestStatus {
5
+ PENDING = 'Pending',
6
+ ASSIGNED = 'Assigned',
7
+ IN_PROGRESS = 'In Progress',
8
+ APPROVED = 'Approved',
9
+ REJECTED = 'Rejected',
10
+ }
11
+
12
+ export enum RequestResourceSystem {
13
+ ORIGIN_MC = 'Origin M&C',
14
+ MINISTRY = 'Ministry',
15
+ }
16
+
17
+ export enum MeetingRequestType {
18
+ INTERNAL = 'Internal',
19
+ EXTERNAL = 'External',
20
+ OTHER_MINISTERS = 'Other Ministers',
21
+ }
22
+
23
+ export enum MeetingType {
24
+ PHYSICAL = 'Physical',
25
+ ONLINE = 'Online',
26
+ }
27
+
28
+ export enum OtherResourcesBooking {
29
+ PRINTERS = 'Printers',
30
+ DEVICES = 'Devices',
31
+ }
32
+
33
+ export enum YesNo {
34
+ YES = 'Yes',
35
+ NO = 'No',
36
+ }
37
+
38
+ export enum OnlineMeetingDetails {
39
+ PLATFORM = 'Platform',
40
+ MEETING_LINK = 'Meeting Link',
41
+ UID_PWD = 'UID/PWD',
42
+ }
43
+
44
+ export enum MeetingLocation {
45
+ EMBASSY = 'Embassy',
46
+ MINISTRY = 'Ministry',
47
+ EXTERNAL_VENUE = 'External Venue',
48
+ }
49
+
50
+ @Entity({ name: 'meeting_requests' })
51
+ export class MeetingRequests extends BaseModel {
52
+ @Column({ type: 'int', nullable: true })
53
+ req_user_department_id: number | null;
54
+
55
+ @Column({ type: 'int', nullable: true })
56
+ req_user_section_id: number | null;
57
+
58
+ @Column({ type: 'int', nullable: true })
59
+ service_id: number | null;
60
+
61
+ @Column({ type: 'int', nullable: true })
62
+ sub_service_id: number | null;
63
+
64
+ @Column({ type: 'int', nullable: false })
65
+ user_id: number;
66
+
67
+ @Column({ type: 'int', nullable: true })
68
+ department_id: number | null;
69
+
70
+ @Column({ type: 'int', nullable: true })
71
+ receiving_department_id: number | null;
72
+
73
+ @Column({ type: 'enum', enum: RequestResourceSystem, nullable: true })
74
+ request_resource_system: RequestResourceSystem | null;
75
+
76
+ @Column({ type: 'enum', enum: MeetingRequestType, nullable: true })
77
+ request_type: MeetingRequestType | null;
78
+
79
+ @Column({ type: 'enum', enum: MeetingType, nullable: true })
80
+ meeting_type: MeetingType | null;
81
+
82
+ @Column({ type: 'date', nullable: true })
83
+ meeting_date: string | null;
84
+
85
+ @Column({ type: 'time', nullable: true })
86
+ from_time: string | null;
87
+
88
+ @Column({ type: 'time', nullable: true })
89
+ to_time: string | null;
90
+
91
+ @Column({ type: 'int', nullable: true })
92
+ hall_id: number | null;
93
+
94
+ @Column({ type: 'enum', enum: OtherResourcesBooking, nullable: true })
95
+ other_resources_booking: OtherResourcesBooking | null;
96
+
97
+ @Column({ type: 'text', nullable: true })
98
+ comments: string | null;
99
+
100
+ @Column({ type: 'enum', enum: YesNo, nullable: true })
101
+ food_service_required: YesNo | null;
102
+
103
+ @Column({ type: 'varchar', length: 255, nullable: true })
104
+ organization_name: string | null;
105
+
106
+ @Column({ type: 'varchar', length: 255, nullable: true })
107
+ person_name: string | null;
108
+
109
+ @Column({ type: 'varchar', length: 50, nullable: true })
110
+ contact_number: string | null;
111
+
112
+ @Column({ type: 'enum', enum: YesNo, nullable: true })
113
+ protocal_support_required: YesNo | null;
114
+
115
+ @Column({ type: 'enum', enum: YesNo, nullable: true })
116
+ external_attendees_required_gate_pass: YesNo | null;
117
+
118
+ @Column({ type: 'enum', enum: OnlineMeetingDetails, nullable: true })
119
+ online_meeting_details: OnlineMeetingDetails | null;
120
+
121
+ @Column({ type: 'varchar', length: 500, nullable: true })
122
+ meeting_link: string | null;
123
+
124
+ @Column({ type: 'enum', enum: MeetingLocation, nullable: true })
125
+ meeting_location: MeetingLocation | null;
126
+
127
+ @Column({ type: 'enum', enum: MeetingRequestStatus, default: MeetingRequestStatus.PENDING, nullable: false })
128
+ status: MeetingRequestStatus;
129
+
130
+ @Column({ type: 'varchar', nullable: true })
131
+ workflow_execution_id: string | null;
132
+ }
@@ -0,0 +1,38 @@
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MeetingWorkFlowStatus {
5
+ COMPLETED = 'Completed',
6
+ NOT_YET_STARTED = 'Not Yet Started',
7
+ PENDING = 'Pending',
8
+ }
9
+
10
+ @Entity({ name: 'meeting_workflows' })
11
+ export class MeetingWorkFlow extends BaseModel {
12
+ @Column({ type: 'integer', nullable: false })
13
+ request_id: number;
14
+
15
+ @Column({ type: 'integer', nullable: true })
16
+ service_id: number | null;
17
+
18
+ @Column({ type: 'integer', nullable: true })
19
+ sub_service_id: number | null;
20
+
21
+ @Column({ type: 'varchar', length: 500, nullable: false })
22
+ content: string;
23
+
24
+ @Column({ type: 'enum', enum: MeetingWorkFlowStatus, default: MeetingWorkFlowStatus.NOT_YET_STARTED, nullable: false })
25
+ status: MeetingWorkFlowStatus;
26
+
27
+ @Column({ type: 'integer', nullable: true })
28
+ user_id: number | null;
29
+
30
+ @Column({ type: 'integer', nullable: true })
31
+ role_id: number | null;
32
+
33
+ @Column({ type: 'integer', nullable: true })
34
+ department_id: number | null;
35
+
36
+ @Column({ type: 'integer', nullable: true })
37
+ section_id: number | null;
38
+ }