@platform-modules/foreign-ministry 1.3.350 → 1.3.355

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.
package/src/index.ts CHANGED
@@ -98,6 +98,7 @@ export * from './models/UpdateAttendanceWorkflowModel';
98
98
  export * from './models/SlaRequestModel';
99
99
  export * from './models/ServiceSlaApprovalModel';
100
100
  export * from './models/SlaConfigModel';
101
+ export * from './models/ChatbotQnsAnsMappingModel';
101
102
  export * from './models/GeneralServiceRequestsModel';
102
103
  export * from './models/GeneralServiceApprovalsModel';
103
104
  export * from './models/GeneralServiceWorkFlowModel';
@@ -0,0 +1,21 @@
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from "./BaseModel";
3
+
4
+ @Entity({ name: "chatbot_qns_ans_mapping" })
5
+ export class ChatbotQnsAnsMapping extends BaseModel {
6
+ @Column({ type: "int", nullable: false })
7
+ service_id: number;
8
+
9
+ @Column({ type: "int", nullable: false })
10
+ sub_service_id: number;
11
+
12
+ @Column({ type: "jsonb", nullable: false })
13
+ question: Record<string, unknown> | unknown[];
14
+
15
+ @Column({ type: "jsonb", nullable: false })
16
+ answer: Record<string, unknown> | unknown[];
17
+
18
+ constructor() {
19
+ super();
20
+ }
21
+ }
@@ -29,7 +29,14 @@ SELECT
29
29
  sa.updated_at AS updated_at
30
30
  FROM sla_approval sa
31
31
  INNER JOIN sla_requests sr
32
- ON sr.request_id = sa.request_id AND COALESCE(sr.is_deleted, false) = false
32
+ ON sr.id = (
33
+ SELECT MIN(sr2.id)
34
+ FROM sla_requests sr2
35
+ WHERE sr2.request_id = sa.request_id
36
+ AND COALESCE(sr2.is_deleted, false) = false
37
+ AND (sa.service_id IS NULL OR sr2.service_id = sa.service_id)
38
+ AND (sa.sub_service_id IS NULL OR sr2.sub_service_id = sa.sub_service_id)
39
+ )
33
40
  LEFT JOIN fm_services svc
34
41
  ON svc.id = sa.service_id AND COALESCE(svc.is_deleted, false) = false
35
42
  LEFT JOIN fm_sub_services subsvc
@@ -63,8 +63,13 @@ SELECT
63
63
  - 'is_deleted'
64
64
  - 'sla_request'
65
65
  - 'sla_request_id'
66
- ) AS request_fields
66
+ ) AS request_fields,
67
+ TRIM(COALESCE(dept.department_arabic_name, ''))::TEXT AS req_user_department_arabicname,
68
+ TRIM(COALESCE(sec.section_arabic_name, ''))::TEXT AS req_user_section_arabicname,
69
+ TRIM(COALESCE(req_user.employee_arabic_name, ''))::TEXT AS req_user_arabicname
67
70
  FROM sla_requests sr
71
+ LEFT JOIN users req_user
72
+ ON req_user.id = sr.user_id AND COALESCE(req_user.is_deleted, false) = false
68
73
  LEFT JOIN users creator
69
74
  ON sr.created_by ~ '^[0-9]+$'
70
75
  AND creator.id = sr.created_by::integer
@@ -132,6 +137,15 @@ export class SlaMyRequestsView {
132
137
  /** Remaining `request_obj` keys after excluding workflow/common duplicates. */
133
138
  @ViewColumn()
134
139
  request_fields: Record<string, unknown>;
140
+
141
+ @ViewColumn()
142
+ req_user_department_arabicname: string;
143
+
144
+ @ViewColumn()
145
+ req_user_section_arabicname: string;
146
+
147
+ @ViewColumn()
148
+ req_user_arabicname: string;
135
149
  }
136
150
 
137
151
  /** Flatten view row: fixed columns plus each entry in `request_fields`. */
@@ -152,6 +166,9 @@ export function flattenSlaMyRequestsViewRow(
152
166
  status,
153
167
  request_id,
154
168
  request_fields,
169
+ req_user_department_arabicname,
170
+ req_user_section_arabicname,
171
+ req_user_arabicname,
155
172
  } = row;
156
173
 
157
174
  return {
@@ -167,6 +184,9 @@ export function flattenSlaMyRequestsViewRow(
167
184
  sub_service_name,
168
185
  status,
169
186
  request_id,
187
+ req_user_department_arabicname,
188
+ req_user_section_arabicname,
189
+ req_user_arabicname,
170
190
  ...(request_fields ?? {}),
171
191
  };
172
192
  }