@platform-modules/foreign-ministry 1.3.335 → 1.3.336

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 (361) hide show
  1. package/.env +6 -5
  2. package/dist/i18n/workflow-chat-i18n.d.ts +5 -0
  3. package/dist/i18n/workflow-chat-i18n.js +21 -0
  4. package/dist/i18n/workflow-chat-i18n.json +320 -0
  5. package/dist/i18n/workflow-chat-message.builder.d.ts +316 -0
  6. package/dist/i18n/workflow-chat-message.builder.js +891 -0
  7. package/dist/index.d.ts +1 -0
  8. package/dist/index.js +1 -0
  9. package/dist/models/AppointmentChatModel.d.ts +2 -0
  10. package/dist/models/AppointmentChatModel.js +8 -0
  11. package/dist/models/AppointmentWorkflowModel.d.ts +2 -0
  12. package/dist/models/AppointmentWorkflowModel.js +8 -0
  13. package/dist/models/AssistanceCitizensAbroadChatModel.d.ts +2 -0
  14. package/dist/models/AssistanceCitizensAbroadChatModel.js +8 -0
  15. package/dist/models/AssistanceCitizensAbroadWorkflowModel.d.ts +1 -0
  16. package/dist/models/AssistanceCitizensAbroadWorkflowModel.js +4 -0
  17. package/dist/models/ChildrensEducationChatModel.d.ts +2 -0
  18. package/dist/models/ChildrensEducationChatModel.js +8 -0
  19. package/dist/models/ChildrensEducationWorkflowModel.d.ts +1 -0
  20. package/dist/models/ChildrensEducationWorkflowModel.js +4 -0
  21. package/dist/models/DiplomaticAcademyChatModel.d.ts +2 -0
  22. package/dist/models/DiplomaticAcademyChatModel.js +8 -0
  23. package/dist/models/DiplomaticAcademyWorkflowModel.d.ts +2 -0
  24. package/dist/models/DiplomaticAcademyWorkflowModel.js +8 -0
  25. package/dist/models/DiplomaticChatsModel.d.ts +2 -0
  26. package/dist/models/DiplomaticChatsModel.js +8 -0
  27. package/dist/models/DiplomaticWorkFlowModel.d.ts +2 -0
  28. package/dist/models/DiplomaticWorkFlowModel.js +8 -0
  29. package/dist/models/DocumentTranslationChatModel.d.ts +2 -0
  30. package/dist/models/DocumentTranslationChatModel.js +8 -0
  31. package/dist/models/DocumentTranslationWorkflowModel.d.ts +2 -0
  32. package/dist/models/DocumentTranslationWorkflowModel.js +8 -0
  33. package/dist/models/EarlyCheckoutChatModel.d.ts +2 -0
  34. package/dist/models/EarlyCheckoutChatModel.js +8 -0
  35. package/dist/models/EarlyCheckoutWorkflowModel.d.ts +2 -0
  36. package/dist/models/EarlyCheckoutWorkflowModel.js +8 -0
  37. package/dist/models/EmbassyEvaluationChatModel.d.ts +1 -0
  38. package/dist/models/EmbassyEvaluationChatModel.js +4 -0
  39. package/dist/models/EmbassyEvaluationWorkflowModel.d.ts +1 -0
  40. package/dist/models/EmbassyEvaluationWorkflowModel.js +4 -0
  41. package/dist/models/EmployeeCardChatsModel.d.ts +2 -0
  42. package/dist/models/EmployeeCardChatsModel.js +8 -0
  43. package/dist/models/EmployeeCardWorkFlowModel.d.ts +2 -0
  44. package/dist/models/EmployeeCardWorkFlowModel.js +8 -0
  45. package/dist/models/EmployeeEvaluationChatModel.d.ts +1 -0
  46. package/dist/models/EmployeeEvaluationChatModel.js +4 -0
  47. package/dist/models/EmployeeEvaluationWorkflowModel.d.ts +1 -0
  48. package/dist/models/EmployeeEvaluationWorkflowModel.js +4 -0
  49. package/dist/models/EmployeeOfMonthNominationChatModel.d.ts +1 -0
  50. package/dist/models/EmployeeOfMonthNominationChatModel.js +4 -0
  51. package/dist/models/EmployeeOfMonthNominationWorkflowModel.d.ts +1 -0
  52. package/dist/models/EmployeeOfMonthNominationWorkflowModel.js +4 -0
  53. package/dist/models/EmployeeOfMonthSupportNominationChatModel.d.ts +1 -0
  54. package/dist/models/EmployeeOfMonthSupportNominationChatModel.js +4 -0
  55. package/dist/models/EmployeeOfMonthSupportNominationWorkflowModel.d.ts +1 -0
  56. package/dist/models/EmployeeOfMonthSupportNominationWorkflowModel.js +4 -0
  57. package/dist/models/FinancialChatsModel.d.ts +2 -0
  58. package/dist/models/FinancialChatsModel.js +8 -0
  59. package/dist/models/FinancialWorkFlowModel.d.ts +2 -0
  60. package/dist/models/FinancialWorkFlowModel.js +8 -0
  61. package/dist/models/FoodChatModel.d.ts +1 -0
  62. package/dist/models/FoodChatModel.js +4 -0
  63. package/dist/models/FoodWorkflowModel.d.ts +2 -0
  64. package/dist/models/FoodWorkflowModel.js +8 -0
  65. package/dist/models/GatePassChatsModel.d.ts +2 -0
  66. package/dist/models/GatePassChatsModel.js +8 -0
  67. package/dist/models/GatePassWorkFlowModel.d.ts +2 -0
  68. package/dist/models/GatePassWorkFlowModel.js +8 -0
  69. package/dist/models/GeneralServiceChatsModel.d.ts +2 -0
  70. package/dist/models/GeneralServiceChatsModel.js +8 -0
  71. package/dist/models/GeneralServiceWorkFlowModel.d.ts +2 -0
  72. package/dist/models/GeneralServiceWorkFlowModel.js +8 -0
  73. package/dist/models/HallChatModel.d.ts +1 -0
  74. package/dist/models/HallChatModel.js +4 -0
  75. package/dist/models/HallWorkflowModel.d.ts +2 -0
  76. package/dist/models/HallWorkflowModel.js +8 -0
  77. package/dist/models/HousingRentalAccommodationChatModel.d.ts +2 -0
  78. package/dist/models/HousingRentalAccommodationChatModel.js +8 -0
  79. package/dist/models/HousingRentalAccommodationWorkflowModel.d.ts +1 -0
  80. package/dist/models/HousingRentalAccommodationWorkflowModel.js +4 -0
  81. package/dist/models/HousingRentalVehicleChatModel.d.ts +2 -0
  82. package/dist/models/HousingRentalVehicleChatModel.js +8 -0
  83. package/dist/models/HousingRentalVehicleWorkflowModel.d.ts +1 -0
  84. package/dist/models/HousingRentalVehicleWorkflowModel.js +4 -0
  85. package/dist/models/InitiatorEmployeeNominationChatModel.d.ts +1 -0
  86. package/dist/models/InitiatorEmployeeNominationChatModel.js +4 -0
  87. package/dist/models/InitiatorEmployeeNominationWorkflowModel.d.ts +1 -0
  88. package/dist/models/InitiatorEmployeeNominationWorkflowModel.js +4 -0
  89. package/dist/models/InnovativeEmployeeNominationChatModel.d.ts +1 -0
  90. package/dist/models/InnovativeEmployeeNominationChatModel.js +4 -0
  91. package/dist/models/InnovativeEmployeeNominationWorkflowModel.d.ts +1 -0
  92. package/dist/models/InnovativeEmployeeNominationWorkflowModel.js +4 -0
  93. package/dist/models/IpeGrievanceChatModel.d.ts +1 -0
  94. package/dist/models/IpeGrievanceChatModel.js +4 -0
  95. package/dist/models/IpeGrievanceWorkflowModel.d.ts +1 -0
  96. package/dist/models/IpeGrievanceWorkflowModel.js +4 -0
  97. package/dist/models/LMSCourseExternalLecturerChatModel.d.ts +2 -0
  98. package/dist/models/LMSCourseExternalLecturerChatModel.js +8 -0
  99. package/dist/models/LMSCourseExternalLecturerWorkflowModel.d.ts +2 -0
  100. package/dist/models/LMSCourseExternalLecturerWorkflowModel.js +8 -0
  101. package/dist/models/LMSExternalCourseParticipationChatModel.d.ts +2 -0
  102. package/dist/models/LMSExternalCourseParticipationChatModel.js +8 -0
  103. package/dist/models/LMSExternalCourseParticipationWorkflowModel.d.ts +2 -0
  104. package/dist/models/LMSExternalCourseParticipationWorkflowModel.js +8 -0
  105. package/dist/models/LMSExternalEntityTrainedChatModel.d.ts +2 -0
  106. package/dist/models/LMSExternalEntityTrainedChatModel.js +8 -0
  107. package/dist/models/LMSExternalEntityTrainedWorkflowModel.d.ts +2 -0
  108. package/dist/models/LMSExternalEntityTrainedWorkflowModel.js +8 -0
  109. package/dist/models/LanguageCourseChatModel.d.ts +2 -0
  110. package/dist/models/LanguageCourseChatModel.js +8 -0
  111. package/dist/models/LanguageCourseWorkflowModel.d.ts +2 -0
  112. package/dist/models/LanguageCourseWorkflowModel.js +8 -0
  113. package/dist/models/LeaveChatModel.d.ts +2 -0
  114. package/dist/models/LeaveChatModel.js +8 -0
  115. package/dist/models/LeaveWorkFlowModel.d.ts +2 -0
  116. package/dist/models/LeaveWorkFlowModel.js +8 -0
  117. package/dist/models/MediaChatModel.d.ts +2 -0
  118. package/dist/models/MediaChatModel.js +8 -0
  119. package/dist/models/MediaWorkflowModel.d.ts +2 -0
  120. package/dist/models/MediaWorkflowModel.js +8 -0
  121. package/dist/models/MedicalExpensesChatModel.d.ts +2 -0
  122. package/dist/models/MedicalExpensesChatModel.js +8 -0
  123. package/dist/models/MedicalExpensesWorkflowModel.d.ts +1 -0
  124. package/dist/models/MedicalExpensesWorkflowModel.js +4 -0
  125. package/dist/models/MeetingChatModel.d.ts +2 -0
  126. package/dist/models/MeetingChatModel.js +8 -0
  127. package/dist/models/MeetingWorkflowModel.d.ts +2 -0
  128. package/dist/models/MeetingWorkflowModel.js +8 -0
  129. package/dist/models/MissionBankAccountChatModel.d.ts +2 -0
  130. package/dist/models/MissionBankAccountChatModel.js +8 -0
  131. package/dist/models/MissionBankAccountWorkflowModel.d.ts +2 -0
  132. package/dist/models/MissionBankAccountWorkflowModel.js +8 -0
  133. package/dist/models/MissionContractsChatModel.d.ts +2 -0
  134. package/dist/models/MissionContractsChatModel.js +8 -0
  135. package/dist/models/MissionContractsWorkflowModel.d.ts +1 -0
  136. package/dist/models/MissionContractsWorkflowModel.js +4 -0
  137. package/dist/models/MissionTravelChatModel.d.ts +1 -0
  138. package/dist/models/MissionTravelChatModel.js +4 -0
  139. package/dist/models/MissionTravelWorkflowModel.d.ts +2 -0
  140. package/dist/models/MissionTravelWorkflowModel.js +8 -0
  141. package/dist/models/NationalDayCelebrationsChatModel.d.ts +2 -0
  142. package/dist/models/NationalDayCelebrationsChatModel.js +8 -0
  143. package/dist/models/NationalDayCelebrationsWorkflowModel.d.ts +1 -0
  144. package/dist/models/NationalDayCelebrationsWorkflowModel.js +4 -0
  145. package/dist/models/RecruitmentDomesticWorkersChatModel.d.ts +2 -0
  146. package/dist/models/RecruitmentDomesticWorkersChatModel.js +8 -0
  147. package/dist/models/RecruitmentDomesticWorkersWorkflowModel.d.ts +1 -0
  148. package/dist/models/RecruitmentDomesticWorkersWorkflowModel.js +4 -0
  149. package/dist/models/RegisterCandidateChatModel.d.ts +2 -0
  150. package/dist/models/RegisterCandidateChatModel.js +8 -0
  151. package/dist/models/RegisterCandidateWorkflowModel.d.ts +2 -0
  152. package/dist/models/RegisterCandidateWorkflowModel.js +8 -0
  153. package/dist/models/RegisterVacancyChatModel.d.ts +2 -0
  154. package/dist/models/RegisterVacancyChatModel.js +8 -0
  155. package/dist/models/RegisterVacancyWorkflowModel.d.ts +2 -0
  156. package/dist/models/RegisterVacancyWorkflowModel.js +8 -0
  157. package/dist/models/RepatriationCitizensChatModel.d.ts +2 -0
  158. package/dist/models/RepatriationCitizensChatModel.js +8 -0
  159. package/dist/models/RepatriationCitizensWorkflowModel.d.ts +1 -0
  160. package/dist/models/RepatriationCitizensWorkflowModel.js +4 -0
  161. package/dist/models/RequestParcelChatModel.d.ts +2 -0
  162. package/dist/models/RequestParcelChatModel.js +8 -0
  163. package/dist/models/RequestParcelWorkflowModel.d.ts +2 -0
  164. package/dist/models/RequestParcelWorkflowModel.js +8 -0
  165. package/dist/models/RequestPassportChatModel.d.ts +2 -0
  166. package/dist/models/RequestPassportChatModel.js +8 -0
  167. package/dist/models/RequestPassportWorkflowModel.d.ts +2 -0
  168. package/dist/models/RequestPassportWorkflowModel.js +8 -0
  169. package/dist/models/ResignationTerminationChatModel.d.ts +2 -0
  170. package/dist/models/ResignationTerminationChatModel.js +8 -0
  171. package/dist/models/ResignationTerminationWorkflowModel.d.ts +2 -0
  172. package/dist/models/ResignationTerminationWorkflowModel.js +8 -0
  173. package/dist/models/RetiredCardChatsModel.d.ts +2 -0
  174. package/dist/models/RetiredCardChatsModel.js +8 -0
  175. package/dist/models/RetiredCardWorkFlowModel.d.ts +2 -0
  176. package/dist/models/RetiredCardWorkFlowModel.js +8 -0
  177. package/dist/models/SecurityChatsModel.d.ts +2 -0
  178. package/dist/models/SecurityChatsModel.js +8 -0
  179. package/dist/models/SlaApprovalsViewModel.js +47 -47
  180. package/dist/models/SlaMyRequestsViewModel.js +52 -52
  181. package/dist/models/StayAfterHoursChatModel.d.ts +2 -0
  182. package/dist/models/StayAfterHoursChatModel.js +8 -0
  183. package/dist/models/StayAfterHoursWorkflowModel.d.ts +2 -0
  184. package/dist/models/StayAfterHoursWorkflowModel.js +8 -0
  185. package/dist/models/TransferAllowanceChatModel.d.ts +2 -0
  186. package/dist/models/TransferAllowanceChatModel.js +8 -0
  187. package/dist/models/TransferAllowanceWorkflowModel.d.ts +1 -0
  188. package/dist/models/TransferAllowanceWorkflowModel.js +4 -0
  189. package/dist/models/TransferMissionChatModel.d.ts +2 -0
  190. package/dist/models/TransferMissionChatModel.js +8 -0
  191. package/dist/models/TransferMissionWorkflowModel.d.ts +2 -0
  192. package/dist/models/TransferMissionWorkflowModel.js +8 -0
  193. package/dist/models/TransferSalaryBankAccountChatModel.d.ts +2 -0
  194. package/dist/models/TransferSalaryBankAccountChatModel.js +8 -0
  195. package/dist/models/TransferSalaryBankAccountWorkflowModel.d.ts +1 -0
  196. package/dist/models/TransferSalaryBankAccountWorkflowModel.js +4 -0
  197. package/dist/models/UpdateAttendanceChatModel.d.ts +1 -0
  198. package/dist/models/UpdateAttendanceChatModel.js +4 -0
  199. package/dist/models/UpdateAttendanceWorkflowModel.d.ts +2 -0
  200. package/dist/models/UpdateAttendanceWorkflowModel.js +8 -0
  201. package/package.json +1 -1
  202. package/scripts/check-column-types.js +38 -38
  203. package/scripts/check-service-tables.js +42 -42
  204. package/scripts/sync-sla-reports-sql.js +95 -95
  205. package/sql/add_fm_workflow_chat_arabic_columns.sql +153 -0
  206. package/sql/sla-reports-sync.manifest.json +9 -8
  207. package/sql/sla_reports_admin_procedures.sql +283 -283
  208. package/sql/sla_reports_approvals_workbook.sql +383 -383
  209. package/sql/sla_reports_procedures.sql +874 -874
  210. package/sql/sla_requests_status_data_fix.sql +6 -0
  211. package/sql/sla_requests_status_to_varchar.sql +28 -28
  212. package/sql/vw_sla_approvals.sql +108 -108
  213. package/sql/vw_sla_my_requests.sql +55 -55
  214. package/src/data-source.ts +686 -686
  215. package/src/helpers/employee-evaluation-request.utils.ts +178 -178
  216. package/src/helpers/evaluation-eligibility.utils.ts +126 -126
  217. package/src/i18n/workflow-chat-i18n.json +320 -0
  218. package/src/i18n/workflow-chat-i18n.ts +5 -0
  219. package/src/i18n/workflow-chat-message.builder.ts +1405 -0
  220. package/src/index.ts +620 -618
  221. package/src/models/AppointmentChatModel.ts +6 -0
  222. package/src/models/AppointmentWorkflowModel.ts +6 -0
  223. package/src/models/AssistanceCitizensAbroadChatModel.ts +6 -0
  224. package/src/models/AssistanceCitizensAbroadWorkflowModel.ts +3 -0
  225. package/src/models/ChildrensEducationChatModel.ts +6 -0
  226. package/src/models/ChildrensEducationWorkflowModel.ts +3 -0
  227. package/src/models/DiplomaticAcademyChatModel.ts +6 -0
  228. package/src/models/DiplomaticAcademyRequestModel.ts +80 -80
  229. package/src/models/DiplomaticAcademyWorkflowModel.ts +6 -0
  230. package/src/models/DiplomaticChatsModel.ts +6 -0
  231. package/src/models/DiplomaticWorkFlowModel.ts +6 -0
  232. package/src/models/DocumentTranslationChatModel.ts +6 -0
  233. package/src/models/DocumentTranslationWorkflowModel.ts +6 -0
  234. package/src/models/DocumentationFileModel.ts +40 -40
  235. package/src/models/EarlyCheckoutChatModel.ts +6 -0
  236. package/src/models/EarlyCheckoutWorkflowModel.ts +6 -0
  237. package/src/models/EmbassyEvaluationChatModel.ts +3 -0
  238. package/src/models/EmbassyEvaluationCycleModel.ts +45 -45
  239. package/src/models/EmbassyEvaluationRequestModel.ts +59 -59
  240. package/src/models/EmbassyEvaluationWorkflowModel.ts +3 -0
  241. package/src/models/EmployeeCardChatsModel.ts +6 -0
  242. package/src/models/EmployeeCardWorkFlowModel.ts +8 -2
  243. package/src/models/EmployeeEvaluationAnswerModel.ts +26 -26
  244. package/src/models/EmployeeEvaluationChatModel.ts +3 -0
  245. package/src/models/EmployeeEvaluationWorkflowModel.ts +3 -0
  246. package/src/models/EmployeeOfMonthNominationChatModel.ts +3 -0
  247. package/src/models/EmployeeOfMonthNominationWorkflowModel.ts +3 -0
  248. package/src/models/EmployeeOfMonthSupportNominationChatModel.ts +3 -0
  249. package/src/models/EmployeeOfMonthSupportNominationWorkflowModel.ts +3 -0
  250. package/src/models/EvaluationEligibilitySettingModel.ts +51 -51
  251. package/src/models/EvaluationFormModel.ts +44 -44
  252. package/src/models/FinancialChatsModel.ts +6 -0
  253. package/src/models/FinancialWorkFlowModel.ts +6 -0
  254. package/src/models/FoodChatModel.ts +3 -0
  255. package/src/models/FoodWorkflowModel.ts +6 -0
  256. package/src/models/GatePassChatsModel.ts +6 -0
  257. package/src/models/GatePassWorkFlowModel.ts +8 -2
  258. package/src/models/GeneralServiceChatsModel.ts +6 -0
  259. package/src/models/GeneralServiceWorkFlowModel.ts +6 -0
  260. package/src/models/HallChatModel.ts +3 -0
  261. package/src/models/HallWorkflowModel.ts +6 -0
  262. package/src/models/HousingRentalAccommodationChatModel.ts +6 -0
  263. package/src/models/HousingRentalAccommodationWorkflowModel.ts +3 -0
  264. package/src/models/HousingRentalVehicleChatModel.ts +6 -0
  265. package/src/models/HousingRentalVehicleWorkflowModel.ts +3 -0
  266. package/src/models/InitiatorEmployeeNominationChatModel.ts +3 -0
  267. package/src/models/InitiatorEmployeeNominationWorkflowModel.ts +3 -0
  268. package/src/models/InnovativeEmployeeNominationChatModel.ts +3 -0
  269. package/src/models/InnovativeEmployeeNominationWorkflowModel.ts +3 -0
  270. package/src/models/IpeGrievanceChatModel.ts +3 -0
  271. package/src/models/IpeGrievanceWorkflowModel.ts +3 -0
  272. package/src/models/LMSCourseExternalLecturerChatModel.ts +6 -0
  273. package/src/models/LMSCourseExternalLecturerWorkflowModel.ts +6 -0
  274. package/src/models/LMSExternalCourseParticipationChatModel.ts +6 -0
  275. package/src/models/LMSExternalCourseParticipationWorkflowModel.ts +6 -0
  276. package/src/models/LMSExternalEntityTrainedChatModel.ts +6 -0
  277. package/src/models/LMSExternalEntityTrainedPersonModel.ts +45 -45
  278. package/src/models/LMSExternalEntityTrainedWorkflowModel.ts +6 -0
  279. package/src/models/LanguageCourseChatModel.ts +6 -0
  280. package/src/models/LanguageCourseRequestModel.ts +67 -67
  281. package/src/models/LanguageCourseWorkflowModel.ts +6 -0
  282. package/src/models/LeaveApprovalsModel.ts +66 -66
  283. package/src/models/LeaveChatModel.ts +7 -1
  284. package/src/models/LeaveConfigModel.ts +71 -71
  285. package/src/models/LeaveWorkFlowModel.ts +6 -0
  286. package/src/models/MediaChatModel.ts +6 -0
  287. package/src/models/MediaWorkflowModel.ts +6 -0
  288. package/src/models/MedicalExpensesChatModel.ts +6 -0
  289. package/src/models/MedicalExpensesWorkflowModel.ts +3 -0
  290. package/src/models/MeetingChatModel.ts +6 -0
  291. package/src/models/MeetingWorkflowModel.ts +6 -0
  292. package/src/models/MissionBankAccountChatModel.ts +6 -0
  293. package/src/models/MissionBankAccountWorkflowModel.ts +6 -0
  294. package/src/models/MissionContractsChatModel.ts +6 -0
  295. package/src/models/MissionContractsWorkflowModel.ts +3 -0
  296. package/src/models/MissionTravelApprovalModel.ts +101 -101
  297. package/src/models/MissionTravelAttachmentModel.ts +56 -56
  298. package/src/models/MissionTravelChatModel.ts +55 -52
  299. package/src/models/MissionTravelPersonModel.ts +105 -105
  300. package/src/models/MissionTravelWorkflowModel.ts +60 -54
  301. package/src/models/NationalDayCelebrationsChatModel.ts +6 -0
  302. package/src/models/NationalDayCelebrationsWorkflowModel.ts +3 -0
  303. package/src/models/ProjectContactsModel.ts +51 -51
  304. package/src/models/ProjectFaqModel.ts +36 -36
  305. package/src/models/ProjectInvoicesModel.ts +41 -41
  306. package/src/models/ProjectModel.ts +75 -75
  307. package/src/models/ProjectTasksModel.ts +75 -75
  308. package/src/models/RecruitmentDomesticWorkersChatModel.ts +6 -0
  309. package/src/models/RecruitmentDomesticWorkersWorkflowModel.ts +3 -0
  310. package/src/models/RegisterCandidateChatModel.ts +6 -0
  311. package/src/models/RegisterCandidateWorkflowModel.ts +6 -0
  312. package/src/models/RegisterVacancyChatModel.ts +6 -0
  313. package/src/models/RegisterVacancyWorkflowModel.ts +6 -0
  314. package/src/models/RepatriationCitizensChatModel.ts +6 -0
  315. package/src/models/RepatriationCitizensWorkflowModel.ts +3 -0
  316. package/src/models/RequestParcelChatModel.ts +6 -0
  317. package/src/models/RequestParcelWorkflowModel.ts +6 -0
  318. package/src/models/RequestPassportChatModel.ts +6 -0
  319. package/src/models/RequestPassportWorkflowModel.ts +6 -0
  320. package/src/models/ResignationTerminationChatModel.ts +6 -0
  321. package/src/models/ResignationTerminationWorkflowModel.ts +6 -0
  322. package/src/models/RetiredCardChatsModel.ts +6 -0
  323. package/src/models/RetiredCardWorkFlowModel.ts +8 -2
  324. package/src/models/SecurityChatsModel.ts +6 -0
  325. package/src/models/ServiceSlaApprovalModel.ts +63 -63
  326. package/src/models/ServicesNotificationConfigsModel.ts +55 -55
  327. package/src/models/SlaApprovalsViewModel.ts +135 -135
  328. package/src/models/SlaMyRequestsViewModel.ts +172 -172
  329. package/src/models/SlaRequestModel.ts +57 -57
  330. package/src/models/StayAfterHoursChatModel.ts +6 -0
  331. package/src/models/StayAfterHoursWorkflowModel.ts +6 -0
  332. package/src/models/TransferAllowanceChatModel.ts +6 -0
  333. package/src/models/TransferAllowanceWorkflowModel.ts +3 -0
  334. package/src/models/TransferMissionChatModel.ts +6 -0
  335. package/src/models/TransferMissionWorkflowModel.ts +6 -0
  336. package/src/models/TransferSalaryBankAccountChatModel.ts +6 -0
  337. package/src/models/TransferSalaryBankAccountWorkflowModel.ts +3 -0
  338. package/src/models/UpdateAttendanceChatModel.ts +3 -0
  339. package/src/models/UpdateAttendanceWorkflowModel.ts +6 -0
  340. package/src/sla-report-views.ts +3 -3
  341. package/tsconfig.json +1 -0
  342. package/dist/helpers/sla-request-status.helper.d.ts +0 -3
  343. package/dist/helpers/sla-request-status.helper.js +0 -36
  344. package/dist/models/EmbassyEvaluationDepartmentSettingModel.d.ts +0 -14
  345. package/dist/models/EmbassyEvaluationDepartmentSettingModel.js +0 -56
  346. package/dist/models/EvaluationMastersModel.d.ts +0 -16
  347. package/dist/models/EvaluationMastersModel.js +0 -67
  348. package/dist/models/EvaluationQuestionMasterModel.d.ts +0 -10
  349. package/dist/models/EvaluationQuestionMasterModel.js +0 -42
  350. package/dist/models/EvaluationSectionMasterModel.d.ts +0 -7
  351. package/dist/models/EvaluationSectionMasterModel.js +0 -36
  352. package/dist/models/EvaluationWorkflowModel.d.ts +0 -60
  353. package/dist/models/EvaluationWorkflowModel.js +0 -215
  354. package/dist/models/IneligibleForEvaluationModel.d.ts +0 -8
  355. package/dist/models/IneligibleForEvaluationModel.js +0 -44
  356. package/dist/models/MissionTravelClassConfigModel.d.ts +0 -10
  357. package/dist/models/MissionTravelClassConfigModel.js +0 -50
  358. package/dist/models/MissionTravelPerdiemModel.d.ts +0 -10
  359. package/dist/models/MissionTravelPerdiemModel.js +0 -54
  360. package/dist/models/UuidAuditModel.d.ts +0 -9
  361. package/dist/models/UuidAuditModel.js +0 -41
@@ -1,52 +1,55 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- @Entity({ name: 'mission_travel_chats' })
5
- export class MissionTravelRequestChat extends BaseModel {
6
-
7
- @Column({ type: 'integer', nullable: false })
8
- request_id: number;
9
-
10
- @Column({ type: 'integer', nullable: true })
11
- service_id: number | null;
12
-
13
- @Column({ type: 'integer', nullable: true })
14
- sub_service_id: number | null;
15
-
16
- @Column({ type: 'integer', nullable: false })
17
- user_id: number;
18
-
19
- @Column({ type: 'integer', nullable: true })
20
- role_id: number | null;
21
-
22
- @Column({ type: 'text', nullable: false })
23
- message: string;
24
-
25
- @Column({ type: 'text', nullable: true })
26
- status: string | null;
27
-
28
- @Column({ type: 'boolean', default: false })
29
- is_internal: boolean;
30
-
31
- constructor(
32
- request_id: number,
33
- user_id: number,
34
- message: string,
35
- is_internal?: boolean,
36
- service_id?: number | null,
37
- sub_service_id?: number | null,
38
- role_id?: number | null,
39
- status?: string | null
40
- ) {
41
- super();
42
- this.request_id = request_id;
43
- this.service_id = service_id || null;
44
- this.sub_service_id = sub_service_id || null;
45
- this.user_id = user_id;
46
- this.role_id = role_id || null;
47
- this.message = message;
48
- this.status = status || null;
49
- this.is_internal = is_internal || false;
50
- }
51
- }
52
-
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'mission_travel_chats' })
5
+ export class MissionTravelRequestChat extends BaseModel {
6
+
7
+ @Column({ type: 'integer', nullable: false })
8
+ request_id: number;
9
+
10
+ @Column({ type: 'integer', nullable: true })
11
+ service_id: number | null;
12
+
13
+ @Column({ type: 'integer', nullable: true })
14
+ sub_service_id: number | null;
15
+
16
+ @Column({ type: 'integer', nullable: false })
17
+ user_id: number;
18
+
19
+ @Column({ type: 'integer', nullable: true })
20
+ role_id: number | null;
21
+
22
+ @Column({ type: 'text', nullable: false })
23
+ message: string;
24
+
25
+ @Column({ type: 'text', nullable: true })
26
+ message_ar: string | null;
27
+
28
+ @Column({ type: 'text', nullable: true })
29
+ status: string | null;
30
+
31
+ @Column({ type: 'boolean', default: false })
32
+ is_internal: boolean;
33
+
34
+ constructor(
35
+ request_id: number,
36
+ user_id: number,
37
+ message: string,
38
+ is_internal?: boolean,
39
+ service_id?: number | null,
40
+ sub_service_id?: number | null,
41
+ role_id?: number | null,
42
+ status?: string | null
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.user_id = user_id;
49
+ this.role_id = role_id || null;
50
+ this.message = message;
51
+ this.status = status || null;
52
+ this.is_internal = is_internal || false;
53
+ }
54
+ }
55
+
@@ -1,105 +1,105 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum AllowanceRatio {
5
- RATIO_100 = "100",
6
- RATIO_75 = "75",
7
- RATIO_50 = "50"
8
- }
9
-
10
- @Entity({ name: 'mission_travel_persons' })
11
- export class MissionTravelPersons extends BaseModel {
12
-
13
- @Column({ type: 'int', nullable: false })
14
- request_id: number;
15
-
16
- @Column({ type: 'int', nullable: true })
17
- service_id: number | null;
18
-
19
- @Column({ type: 'int', nullable: true })
20
- sub_service_id: number | null;
21
-
22
- @Column({ type: 'varchar', length: 255, nullable: false })
23
- travel_person_name: string;
24
-
25
- @Column({ type: 'int', nullable: true })
26
- user_id: number | null; // If employee, link to user table
27
-
28
- @Column({ type: 'varchar', length: 255, nullable: true })
29
- country_name: string | null;
30
-
31
- @Column({ type: 'varchar', length: 10, nullable: true })
32
- allowance_ratio: AllowanceRatio | null; // 100, 75, or 50
33
-
34
- @Column({ type: 'date', nullable: true })
35
- travel_from_date: Date | null;
36
-
37
- @Column({ type: 'date', nullable: true })
38
- travel_to_date: Date | null;
39
-
40
- @Column({ type: 'varchar', nullable: true })
41
- travel_class: string | null;
42
-
43
- @Column({ type: 'int', nullable: true })
44
- number_of_days: number | null;
45
-
46
- @Column({ type: 'varchar', length: 255, nullable: true })
47
- hotel_name: string | null;
48
-
49
- @Column({ type: 'int', nullable: true })
50
- hotel_rating: number | null;
51
-
52
- @Column({ type: 'decimal', precision: 10, scale: 2, nullable: true })
53
- hotel_price: number | null;
54
-
55
- @Column({ type: 'varchar', length: 255, nullable: true })
56
- travel_agent_name: string | null;
57
-
58
- @Column({ type: 'decimal', precision: 10, scale: 2, nullable: true })
59
- allowance_amount: number | null; // Auto-calculated based on ratio & perdiem
60
-
61
- @Column({ type: 'int', nullable: true })
62
- grade: number | null; // Employee grade for perdiem calculation
63
-
64
- constructor(
65
- request_id: number,
66
- service_id: number | null,
67
- sub_service_id: number | null,
68
- travel_person_name: string,
69
- user_id: number | null,
70
- country_name: string | null,
71
- allowance_ratio: AllowanceRatio | null,
72
- travel_from_date: Date | null,
73
- travel_to_date: Date | null,
74
- travel_class: string | null,
75
- number_of_days: number | null,
76
- hotel_name: string | null,
77
- hotel_rating: number | null,
78
- hotel_price: number | null,
79
- travel_agent_name: string | null,
80
- allowance_amount: number | null,
81
- grade: number | null
82
- ) {
83
- super();
84
- this.request_id = request_id;
85
- this.service_id = service_id;
86
- this.sub_service_id = sub_service_id;
87
- this.travel_person_name = travel_person_name;
88
- this.user_id = user_id;
89
- this.country_name = country_name;
90
- this.allowance_ratio = allowance_ratio;
91
- this.travel_from_date = travel_from_date;
92
- this.travel_to_date = travel_to_date;
93
- this.travel_class = travel_class;
94
- this.number_of_days = number_of_days;
95
- this.hotel_name = hotel_name;
96
- this.hotel_rating = hotel_rating;
97
- this.hotel_price = hotel_price;
98
- this.travel_agent_name = travel_agent_name;
99
- this.allowance_amount = allowance_amount;
100
- this.grade = grade;
101
- }
102
- }
103
-
104
-
105
-
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum AllowanceRatio {
5
+ RATIO_100 = "100",
6
+ RATIO_75 = "75",
7
+ RATIO_50 = "50"
8
+ }
9
+
10
+ @Entity({ name: 'mission_travel_persons' })
11
+ export class MissionTravelPersons extends BaseModel {
12
+
13
+ @Column({ type: 'int', nullable: false })
14
+ request_id: number;
15
+
16
+ @Column({ type: 'int', nullable: true })
17
+ service_id: number | null;
18
+
19
+ @Column({ type: 'int', nullable: true })
20
+ sub_service_id: number | null;
21
+
22
+ @Column({ type: 'varchar', length: 255, nullable: false })
23
+ travel_person_name: string;
24
+
25
+ @Column({ type: 'int', nullable: true })
26
+ user_id: number | null; // If employee, link to user table
27
+
28
+ @Column({ type: 'varchar', length: 255, nullable: true })
29
+ country_name: string | null;
30
+
31
+ @Column({ type: 'varchar', length: 10, nullable: true })
32
+ allowance_ratio: AllowanceRatio | null; // 100, 75, or 50
33
+
34
+ @Column({ type: 'date', nullable: true })
35
+ travel_from_date: Date | null;
36
+
37
+ @Column({ type: 'date', nullable: true })
38
+ travel_to_date: Date | null;
39
+
40
+ @Column({ type: 'varchar', nullable: true })
41
+ travel_class: string | null;
42
+
43
+ @Column({ type: 'int', nullable: true })
44
+ number_of_days: number | null;
45
+
46
+ @Column({ type: 'varchar', length: 255, nullable: true })
47
+ hotel_name: string | null;
48
+
49
+ @Column({ type: 'int', nullable: true })
50
+ hotel_rating: number | null;
51
+
52
+ @Column({ type: 'decimal', precision: 10, scale: 2, nullable: true })
53
+ hotel_price: number | null;
54
+
55
+ @Column({ type: 'varchar', length: 255, nullable: true })
56
+ travel_agent_name: string | null;
57
+
58
+ @Column({ type: 'decimal', precision: 10, scale: 2, nullable: true })
59
+ allowance_amount: number | null; // Auto-calculated based on ratio & perdiem
60
+
61
+ @Column({ type: 'int', nullable: true })
62
+ grade: number | null; // Employee grade for perdiem calculation
63
+
64
+ constructor(
65
+ request_id: number,
66
+ service_id: number | null,
67
+ sub_service_id: number | null,
68
+ travel_person_name: string,
69
+ user_id: number | null,
70
+ country_name: string | null,
71
+ allowance_ratio: AllowanceRatio | null,
72
+ travel_from_date: Date | null,
73
+ travel_to_date: Date | null,
74
+ travel_class: string | null,
75
+ number_of_days: number | null,
76
+ hotel_name: string | null,
77
+ hotel_rating: number | null,
78
+ hotel_price: number | null,
79
+ travel_agent_name: string | null,
80
+ allowance_amount: number | null,
81
+ grade: number | null
82
+ ) {
83
+ super();
84
+ this.request_id = request_id;
85
+ this.service_id = service_id;
86
+ this.sub_service_id = sub_service_id;
87
+ this.travel_person_name = travel_person_name;
88
+ this.user_id = user_id;
89
+ this.country_name = country_name;
90
+ this.allowance_ratio = allowance_ratio;
91
+ this.travel_from_date = travel_from_date;
92
+ this.travel_to_date = travel_to_date;
93
+ this.travel_class = travel_class;
94
+ this.number_of_days = number_of_days;
95
+ this.hotel_name = hotel_name;
96
+ this.hotel_rating = hotel_rating;
97
+ this.hotel_price = hotel_price;
98
+ this.travel_agent_name = travel_agent_name;
99
+ this.allowance_amount = allowance_amount;
100
+ this.grade = grade;
101
+ }
102
+ }
103
+
104
+
105
+
@@ -1,55 +1,61 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum MissionTravelWorkFlowStatus {
5
- COMPLETED = "Completed",
6
- NOT_YET_STARTED = "Not Yet Started",
7
- PENDING = "Pending"
8
- }
9
-
10
- @Entity({ name: 'mission_travel_workflows' })
11
- export class MissionTravelWorkFlow extends BaseModel {
12
- @Column({ type: 'int', nullable: false })
13
- request_id: number;
14
-
15
- @Column({ type: 'int', nullable: true })
16
- service_id: number | null;
17
-
18
- @Column({ type: 'int', nullable: true })
19
- sub_service_id: number | null;
20
-
21
- @Column({ type: 'int', nullable: true })
22
- order: number | null;
23
-
24
- @Column({ type: 'varchar', length: 255, nullable: false })
25
- content: string;
26
-
27
- @Column({ type: 'enum', enum: MissionTravelWorkFlowStatus, default: MissionTravelWorkFlowStatus.NOT_YET_STARTED, nullable: false })
28
- status: MissionTravelWorkFlowStatus;
29
-
30
- @Column({ type: 'integer', nullable: true })
31
- user_id: number | null;
32
-
33
- @Column({ type: 'integer', nullable: true })
34
- role_id: number | null;
35
-
36
- @Column({ type: 'integer', nullable: true })
37
- department_id: number | null;
38
-
39
- @Column({ type: 'integer', nullable: true })
40
- section_id: number | null;
41
-
42
- constructor(request_id: number, content: string, status: MissionTravelWorkFlowStatus, order?: number, service_id?: number | null, sub_service_id?: number | null, user_id?: number | null, role_id?: number | null, department_id?: number | null, section_id?: number | null) {
43
- super();
44
- this.request_id = request_id;
45
- this.content = content;
46
- this.status = status;
47
- this.order = order || null;
48
- this.service_id = service_id ?? null;
49
- this.sub_service_id = sub_service_id ?? null;
50
- this.user_id = user_id || null;
51
- this.role_id = role_id || null;
52
- this.department_id = department_id || null;
53
- this.section_id = section_id || null;
54
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum MissionTravelWorkFlowStatus {
5
+ COMPLETED = "Completed",
6
+ NOT_YET_STARTED = "Not Yet Started",
7
+ PENDING = "Pending"
8
+ }
9
+
10
+ @Entity({ name: 'mission_travel_workflows' })
11
+ export class MissionTravelWorkFlow extends BaseModel {
12
+ @Column({ type: 'int', nullable: false })
13
+ request_id: number;
14
+
15
+ @Column({ type: 'int', nullable: true })
16
+ service_id: number | null;
17
+
18
+ @Column({ type: 'int', nullable: true })
19
+ sub_service_id: number | null;
20
+
21
+ @Column({ type: 'int', nullable: true })
22
+ order: number | null;
23
+
24
+ @Column({ type: 'varchar', length: 255, nullable: false })
25
+ content: string;
26
+
27
+ @Column({ type: 'varchar', length: 500, nullable: true })
28
+ content_ar: string | null;
29
+
30
+ @Column({ type: 'enum', enum: MissionTravelWorkFlowStatus, default: MissionTravelWorkFlowStatus.NOT_YET_STARTED, nullable: false })
31
+ status: MissionTravelWorkFlowStatus;
32
+
33
+ @Column({ type: 'varchar', length: 100, nullable: true })
34
+ status_ar: string | null;
35
+
36
+ @Column({ type: 'integer', nullable: true })
37
+ user_id: number | null;
38
+
39
+ @Column({ type: 'integer', nullable: true })
40
+ role_id: number | null;
41
+
42
+ @Column({ type: 'integer', nullable: true })
43
+ department_id: number | null;
44
+
45
+ @Column({ type: 'integer', nullable: true })
46
+ section_id: number | null;
47
+
48
+ constructor(request_id: number, content: string, status: MissionTravelWorkFlowStatus, order?: number, service_id?: number | null, sub_service_id?: number | null, user_id?: number | null, role_id?: number | null, department_id?: number | null, section_id?: number | null) {
49
+ super();
50
+ this.request_id = request_id;
51
+ this.content = content;
52
+ this.status = status;
53
+ this.order = order || null;
54
+ this.service_id = service_id ?? null;
55
+ this.sub_service_id = sub_service_id ?? null;
56
+ this.user_id = user_id || null;
57
+ this.role_id = role_id || null;
58
+ this.department_id = department_id || null;
59
+ this.section_id = section_id || null;
60
+ }
55
61
  }
@@ -29,6 +29,9 @@ export class NationalDayCelebrationsRequestChat extends BaseModel {
29
29
  @Column({ type: 'text', nullable: false })
30
30
  message: string;
31
31
 
32
+ @Column({ type: 'text', nullable: true })
33
+ message_ar: string | null;
34
+
32
35
  @Column({
33
36
  type: 'enum',
34
37
  enum: NationalDayCelebrationsMessageType,
@@ -39,4 +42,7 @@ export class NationalDayCelebrationsRequestChat extends BaseModel {
39
42
 
40
43
  @Column({ type: 'text', nullable: true })
41
44
  status: string;
45
+
46
+ @Column({ type: 'varchar', length: 100, nullable: true })
47
+ status_ar: string | null;
42
48
  }
@@ -21,6 +21,9 @@ export class NationalDayCelebrationsWorkFlow extends BaseModel {
21
21
  @Column({ type: 'varchar', length: 500, nullable: false })
22
22
  content: string;
23
23
 
24
+ @Column({ type: 'varchar', length: 500, nullable: true })
25
+ content_ar: string | null;
26
+
24
27
  @Column({
25
28
  type: 'enum',
26
29
  enum: NationalDayCelebrationsWorkFlowStatus,
@@ -1,51 +1,51 @@
1
- import { Column, Entity } from 'typeorm';
2
- import { BaseModel } from './BaseModel';
3
-
4
- @Entity({ name: 'project_contacts' })
5
- export class ProjectContacts extends BaseModel {
6
- @Column({ type: 'int' })
7
- project_id: number;
8
-
9
- @Column({ type: 'varchar', length: 50 })
10
- contact_type: string;
11
-
12
- @Column({ type: 'varchar', length: 50, nullable: true })
13
- phone_number: string;
14
-
15
- @Column({ type: 'varchar', length: 255, nullable: true })
16
- email_id: string;
17
-
18
- @Column({ type: 'varchar', length: 255, nullable: true })
19
- name: string;
20
-
21
- @Column({ type: 'varchar', length: 255, nullable: true })
22
- designation: string;
23
-
24
- @Column({ type: 'varchar', length: 500, nullable: true })
25
- organisation_name: string | null;
26
-
27
- /** Optional FK to departments.id */
28
- @Column({ type: 'int', nullable: true })
29
- department_id: number | null;
30
-
31
- constructor(
32
- project_id?: number,
33
- contact_type?: string,
34
- phone_number?: string,
35
- email_id?: string,
36
- name?: string,
37
- designation?: string,
38
- organisation_name?: string | null,
39
- department_id?: number | null
40
- ) {
41
- super();
42
- this.project_id = project_id ?? 0;
43
- this.contact_type = contact_type ?? '';
44
- this.phone_number = phone_number ?? '';
45
- this.email_id = email_id ?? '';
46
- this.name = name ?? '';
47
- this.designation = designation ?? '';
48
- this.organisation_name = organisation_name ?? null;
49
- this.department_id = department_id ?? null;
50
- }
51
- }
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'project_contacts' })
5
+ export class ProjectContacts extends BaseModel {
6
+ @Column({ type: 'int' })
7
+ project_id: number;
8
+
9
+ @Column({ type: 'varchar', length: 50 })
10
+ contact_type: string;
11
+
12
+ @Column({ type: 'varchar', length: 50, nullable: true })
13
+ phone_number: string;
14
+
15
+ @Column({ type: 'varchar', length: 255, nullable: true })
16
+ email_id: string;
17
+
18
+ @Column({ type: 'varchar', length: 255, nullable: true })
19
+ name: string;
20
+
21
+ @Column({ type: 'varchar', length: 255, nullable: true })
22
+ designation: string;
23
+
24
+ @Column({ type: 'varchar', length: 500, nullable: true })
25
+ organisation_name: string | null;
26
+
27
+ /** Optional FK to departments.id */
28
+ @Column({ type: 'int', nullable: true })
29
+ department_id: number | null;
30
+
31
+ constructor(
32
+ project_id?: number,
33
+ contact_type?: string,
34
+ phone_number?: string,
35
+ email_id?: string,
36
+ name?: string,
37
+ designation?: string,
38
+ organisation_name?: string | null,
39
+ department_id?: number | null
40
+ ) {
41
+ super();
42
+ this.project_id = project_id ?? 0;
43
+ this.contact_type = contact_type ?? '';
44
+ this.phone_number = phone_number ?? '';
45
+ this.email_id = email_id ?? '';
46
+ this.name = name ?? '';
47
+ this.designation = designation ?? '';
48
+ this.organisation_name = organisation_name ?? null;
49
+ this.department_id = department_id ?? null;
50
+ }
51
+ }
@@ -1,36 +1,36 @@
1
- import { Column, Entity } from 'typeorm';
2
- import { BaseModel } from './BaseModel';
3
-
4
- @Entity({ name: 'project_faqs' })
5
- export class ProjectFaqs extends BaseModel {
6
- @Column({ type: 'boolean', default: false })
7
- is_popular: boolean;
8
-
9
- @Column({ type: 'text' })
10
- question: string;
11
-
12
- /** Null = global / general FAQ not tied to a project */
13
- @Column({ type: 'int', nullable: true })
14
- project_id: number | null;
15
-
16
- @Column({ type: 'int', nullable: true })
17
- department_id: number;
18
-
19
- @Column({ type: 'text', nullable: true })
20
- answer: string;
21
-
22
- constructor(
23
- question?: string,
24
- project_id?: number | null,
25
- department_id?: number,
26
- answer?: string,
27
- is_popular?: boolean
28
- ) {
29
- super();
30
- this.question = question ?? '';
31
- this.project_id = project_id ?? null;
32
- this.department_id = department_id ?? 0;
33
- this.answer = answer ?? '';
34
- this.is_popular = is_popular ?? false;
35
- }
36
- }
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'project_faqs' })
5
+ export class ProjectFaqs extends BaseModel {
6
+ @Column({ type: 'boolean', default: false })
7
+ is_popular: boolean;
8
+
9
+ @Column({ type: 'text' })
10
+ question: string;
11
+
12
+ /** Null = global / general FAQ not tied to a project */
13
+ @Column({ type: 'int', nullable: true })
14
+ project_id: number | null;
15
+
16
+ @Column({ type: 'int', nullable: true })
17
+ department_id: number;
18
+
19
+ @Column({ type: 'text', nullable: true })
20
+ answer: string;
21
+
22
+ constructor(
23
+ question?: string,
24
+ project_id?: number | null,
25
+ department_id?: number,
26
+ answer?: string,
27
+ is_popular?: boolean
28
+ ) {
29
+ super();
30
+ this.question = question ?? '';
31
+ this.project_id = project_id ?? null;
32
+ this.department_id = department_id ?? 0;
33
+ this.answer = answer ?? '';
34
+ this.is_popular = is_popular ?? false;
35
+ }
36
+ }