@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
@@ -29,6 +29,9 @@ export class AppointmentRequestChat 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: AppointmentMessageType,
@@ -40,6 +43,9 @@ export class AppointmentRequestChat extends BaseModel {
40
43
  @Column({ type: 'text', nullable: true })
41
44
  status: string;
42
45
 
46
+ @Column({ type: 'varchar', length: 100, nullable: true })
47
+ status_ar: string | null;
48
+
43
49
  constructor(
44
50
  appointment_id: number,
45
51
  user_id: number,
@@ -21,9 +21,15 @@ export class AppointmentWorkFlow 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({ type: 'enum', enum: AppointmentWorkFlowStatus, default: AppointmentWorkFlowStatus.NOT_YET_STARTED, nullable: false })
25
28
  status: AppointmentWorkFlowStatus;
26
29
 
30
+ @Column({ type: 'varchar', length: 100, nullable: true })
31
+ status_ar: string | null;
32
+
27
33
  @Column({ type: 'integer', nullable: true })
28
34
  user_id: number | null;
29
35
 
@@ -30,6 +30,9 @@ export class AssistanceCitizensAbroadRequestChat extends BaseModel {
30
30
  @Column({ type: 'text', nullable: false })
31
31
  message: string;
32
32
 
33
+ @Column({ type: 'text', nullable: true })
34
+ message_ar: string | null;
35
+
33
36
  @Column({
34
37
  type: 'enum',
35
38
  enum: AssistanceCitizensAbroadMessageType,
@@ -41,6 +44,9 @@ export class AssistanceCitizensAbroadRequestChat extends BaseModel {
41
44
  @Column({ type: 'text', nullable: true })
42
45
  status: string;
43
46
 
47
+ @Column({ type: 'varchar', length: 100, nullable: true })
48
+ status_ar: string | null;
49
+
44
50
  constructor(
45
51
  request_id: number,
46
52
  user_id: number,
@@ -21,6 +21,9 @@ export class AssistanceCitizensAbroadWorkFlow 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: AssistanceCitizensAbroadWorkFlowStatus,
@@ -29,6 +29,9 @@ export class ChildrensEducationRequestChat 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: ChildrensEducationMessageType,
@@ -40,6 +43,9 @@ export class ChildrensEducationRequestChat extends BaseModel {
40
43
  @Column({ type: 'text', nullable: true })
41
44
  status: string;
42
45
 
46
+ @Column({ type: 'varchar', length: 100, nullable: true })
47
+ status_ar: string | null;
48
+
43
49
  constructor(
44
50
  request_id: number,
45
51
  user_id: number,
@@ -21,6 +21,9 @@ export class ChildrensEducationWorkFlow 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: ChildrensEducationWorkFlowStatus,
@@ -31,6 +31,9 @@ export class DiplomaticAcademyRequestChat extends BaseModel {
31
31
  @Column({ type: 'text', nullable: false })
32
32
  message: string;
33
33
 
34
+ @Column({ type: 'text', nullable: true })
35
+ message_ar: string | null;
36
+
34
37
  @Column({
35
38
  type: 'enum',
36
39
  enum: DiplomaticAcademyMessageType,
@@ -42,6 +45,9 @@ export class DiplomaticAcademyRequestChat extends BaseModel {
42
45
  @Column({ type: 'text', nullable: true })
43
46
  status: string;
44
47
 
48
+ @Column({ type: 'varchar', length: 100, nullable: true })
49
+ status_ar: string | null;
50
+
45
51
  constructor(
46
52
  request_id: number,
47
53
  user_id: number,
@@ -1,80 +1,80 @@
1
- import { Column, Entity } from "typeorm";
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum DiplomaticAcademyStatus {
5
- SUBMITTED = "Submitted",
6
- PENDING = "Pending",
7
- ASSIGNED = "Assigned",
8
- IN_PROGRESS = "In Progress",
9
- APPROVED = "Approved",
10
- REJECTED = "Rejected"
11
- }
12
-
13
- @Entity({ name: 'diplomatic_academy_requests' })
14
- export class DiplomaticAcademyRequests extends BaseModel {
15
-
16
- // Common columns
17
- @Column({ type: 'int', nullable: true })
18
- req_user_department_id: number | null;
19
-
20
- @Column({ type: 'int', nullable: true })
21
- req_user_section_id: number | null;
22
-
23
- @Column({ type: 'int', nullable: true })
24
- service_id: number | null;
25
-
26
- @Column({ type: 'int', nullable: true })
27
- sub_service_id: number | null;
28
-
29
- @Column({ type: 'int', nullable: false })
30
- user_id: number;
31
-
32
- // Diplomatic Academy specific columns
33
- @Column({ type: 'varchar', length: 500, nullable: false })
34
- course_name: string;
35
-
36
- @Column({ type: 'jsonb', nullable: true })
37
- cost_details: {
38
- material_price?: number;
39
- transportation?: number;
40
- accommodation?: number;
41
- allowances?: number;
42
- food?: number;
43
- present?: number;
44
- } | null;
45
-
46
- @Column({ type: 'int', nullable: false })
47
- estimated_participants: number;
48
-
49
- @Column({ type: 'date', nullable: false })
50
- timeline_date_from: Date;
51
-
52
- @Column({ type: 'date', nullable: false })
53
- timeline_date_to: Date;
54
-
55
- @Column({ type: 'time', nullable: true })
56
- timeline_time_from: string | null;
57
-
58
- @Column({ type: 'time', nullable: true })
59
- timeline_time_to: string | null;
60
-
61
- @Column({ type: 'jsonb', nullable: false })
62
- participants_details: Array<{
63
- full_name: string;
64
- passport: string;
65
- age: number;
66
- qualifications: string;
67
- experience: string;
68
- institution: string;
69
- }>;
70
-
71
- @Column({ type: 'enum', enum: DiplomaticAcademyStatus, default: DiplomaticAcademyStatus.PENDING, nullable: false })
72
- status: DiplomaticAcademyStatus;
73
-
74
- @Column({ type: 'int', nullable: true })
75
- course_id: number | null;
76
-
77
- @Column({ type: 'varchar', nullable: true })
78
- workflow_execution_id: string | null;
79
-
80
- }
1
+ import { Column, Entity } from "typeorm";
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum DiplomaticAcademyStatus {
5
+ SUBMITTED = "Submitted",
6
+ PENDING = "Pending",
7
+ ASSIGNED = "Assigned",
8
+ IN_PROGRESS = "In Progress",
9
+ APPROVED = "Approved",
10
+ REJECTED = "Rejected"
11
+ }
12
+
13
+ @Entity({ name: 'diplomatic_academy_requests' })
14
+ export class DiplomaticAcademyRequests extends BaseModel {
15
+
16
+ // Common columns
17
+ @Column({ type: 'int', nullable: true })
18
+ req_user_department_id: number | null;
19
+
20
+ @Column({ type: 'int', nullable: true })
21
+ req_user_section_id: number | null;
22
+
23
+ @Column({ type: 'int', nullable: true })
24
+ service_id: number | null;
25
+
26
+ @Column({ type: 'int', nullable: true })
27
+ sub_service_id: number | null;
28
+
29
+ @Column({ type: 'int', nullable: false })
30
+ user_id: number;
31
+
32
+ // Diplomatic Academy specific columns
33
+ @Column({ type: 'varchar', length: 500, nullable: false })
34
+ course_name: string;
35
+
36
+ @Column({ type: 'jsonb', nullable: true })
37
+ cost_details: {
38
+ material_price?: number;
39
+ transportation?: number;
40
+ accommodation?: number;
41
+ allowances?: number;
42
+ food?: number;
43
+ present?: number;
44
+ } | null;
45
+
46
+ @Column({ type: 'int', nullable: false })
47
+ estimated_participants: number;
48
+
49
+ @Column({ type: 'date', nullable: false })
50
+ timeline_date_from: Date;
51
+
52
+ @Column({ type: 'date', nullable: false })
53
+ timeline_date_to: Date;
54
+
55
+ @Column({ type: 'time', nullable: true })
56
+ timeline_time_from: string | null;
57
+
58
+ @Column({ type: 'time', nullable: true })
59
+ timeline_time_to: string | null;
60
+
61
+ @Column({ type: 'jsonb', nullable: false })
62
+ participants_details: Array<{
63
+ full_name: string;
64
+ passport: string;
65
+ age: number;
66
+ qualifications: string;
67
+ experience: string;
68
+ institution: string;
69
+ }>;
70
+
71
+ @Column({ type: 'enum', enum: DiplomaticAcademyStatus, default: DiplomaticAcademyStatus.PENDING, nullable: false })
72
+ status: DiplomaticAcademyStatus;
73
+
74
+ @Column({ type: 'int', nullable: true })
75
+ course_id: number | null;
76
+
77
+ @Column({ type: 'varchar', nullable: true })
78
+ workflow_execution_id: string | null;
79
+
80
+ }
@@ -21,9 +21,15 @@ export class DiplomaticAcademyWorkFlow 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({ type: 'enum', enum: DiplomaticAcademyWorkFlowStatus, default: DiplomaticAcademyWorkFlowStatus.NOT_YET_STARTED, nullable: false })
25
28
  status: DiplomaticAcademyWorkFlowStatus;
26
29
 
30
+ @Column({ type: 'varchar', length: 100, nullable: true })
31
+ status_ar: string | null;
32
+
27
33
  @Column({ type: 'integer', nullable: true })
28
34
  user_id: number | null;
29
35
 
@@ -18,6 +18,9 @@ export class DiplomaticChats extends BaseModel {
18
18
  @Column({ type: 'text' })
19
19
  content: string;
20
20
 
21
+ @Column({ type: 'text', nullable: true })
22
+ content_ar: string | null;
23
+
21
24
  @Column({ type: 'int' })
22
25
  sender_user_id: number;
23
26
 
@@ -27,6 +30,9 @@ export class DiplomaticChats extends BaseModel {
27
30
  @Column({ type: 'varchar', length: 255, nullable: true })
28
31
  status: string | null;
29
32
 
33
+ @Column({ type: 'varchar', length: 100, nullable: true })
34
+ status_ar: string | null;
35
+
30
36
  @Column({ type: 'varchar', length: 255, nullable: true })
31
37
  message_type: DiplomaticMessageType | null;
32
38
 
@@ -22,9 +22,15 @@ export class DiplomaticWorkFlow extends BaseModel {
22
22
  @Column({ type: 'varchar', length: 500, nullable: false })
23
23
  content: string;
24
24
 
25
+ @Column({ type: 'varchar', length: 500, nullable: true })
26
+ content_ar: string | null;
27
+
25
28
  @Column({ type: 'enum', enum: DiplomaticWorkFlowStatus, default: DiplomaticWorkFlowStatus.NOT_YET_STARTED })
26
29
  status: DiplomaticWorkFlowStatus;
27
30
 
31
+ @Column({ type: 'varchar', length: 100, nullable: true })
32
+ status_ar: string | null;
33
+
28
34
  @Column({ type: 'int', nullable: true })
29
35
  user_id: number | null;
30
36
 
@@ -31,6 +31,9 @@ export class DocumentTranslationRequestChat extends BaseModel {
31
31
  @Column({ type: 'text', nullable: false })
32
32
  message: string;
33
33
 
34
+ @Column({ type: 'text', nullable: true })
35
+ message_ar: string | null;
36
+
34
37
  @Column({
35
38
  type: 'enum',
36
39
  enum: DocumentTranslationMessageType,
@@ -42,6 +45,9 @@ export class DocumentTranslationRequestChat extends BaseModel {
42
45
  @Column({ type: 'text', nullable: true })
43
46
  status: string;
44
47
 
48
+ @Column({ type: 'varchar', length: 100, nullable: true })
49
+ status_ar: string | null;
50
+
45
51
  constructor(
46
52
  request_id: number,
47
53
  user_id: number,
@@ -21,9 +21,15 @@ export class DocumentTranslationWorkFlow 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({ type: 'enum', enum: DocumentTranslationWorkFlowStatus, default: DocumentTranslationWorkFlowStatus.NOT_YET_STARTED, nullable: false })
25
28
  status: DocumentTranslationWorkFlowStatus;
26
29
 
30
+ @Column({ type: 'varchar', length: 100, nullable: true })
31
+ status_ar: string | null;
32
+
27
33
  @Column({ type: 'integer', nullable: true })
28
34
  user_id: number | null;
29
35
 
@@ -1,40 +1,40 @@
1
- import { Column, Entity } from 'typeorm';
2
- import { BaseModel } from './BaseModel';
3
-
4
- @Entity({ name: 'documentation_files' })
5
- export class DocumentationFile extends BaseModel {
6
- @Column({ type: 'int', nullable: true })
7
- project_id: number | null;
8
-
9
- @Column({ type: 'int' })
10
- folder_id: number;
11
-
12
- @Column({ type: 'text', nullable: true })
13
- file_path: string;
14
-
15
- @Column({ type: 'varchar', length: 500, nullable: true })
16
- filename: string;
17
-
18
- @Column({ type: 'bigint', nullable: true })
19
- filesize: number;
20
-
21
- @Column({ type: 'varchar', length: 100, nullable: true })
22
- filetype: string;
23
-
24
- constructor(
25
- project_id?: number | null,
26
- folder_id?: number,
27
- file_path?: string,
28
- filename?: string,
29
- filesize?: number,
30
- filetype?: string
31
- ) {
32
- super();
33
- this.project_id = project_id ?? null;
34
- this.folder_id = folder_id ?? 0;
35
- this.file_path = file_path ?? '';
36
- this.filename = filename ?? '';
37
- this.filesize = filesize ?? 0;
38
- this.filetype = filetype ?? '';
39
- }
40
- }
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ @Entity({ name: 'documentation_files' })
5
+ export class DocumentationFile extends BaseModel {
6
+ @Column({ type: 'int', nullable: true })
7
+ project_id: number | null;
8
+
9
+ @Column({ type: 'int' })
10
+ folder_id: number;
11
+
12
+ @Column({ type: 'text', nullable: true })
13
+ file_path: string;
14
+
15
+ @Column({ type: 'varchar', length: 500, nullable: true })
16
+ filename: string;
17
+
18
+ @Column({ type: 'bigint', nullable: true })
19
+ filesize: number;
20
+
21
+ @Column({ type: 'varchar', length: 100, nullable: true })
22
+ filetype: string;
23
+
24
+ constructor(
25
+ project_id?: number | null,
26
+ folder_id?: number,
27
+ file_path?: string,
28
+ filename?: string,
29
+ filesize?: number,
30
+ filetype?: string
31
+ ) {
32
+ super();
33
+ this.project_id = project_id ?? null;
34
+ this.folder_id = folder_id ?? 0;
35
+ this.file_path = file_path ?? '';
36
+ this.filename = filename ?? '';
37
+ this.filesize = filesize ?? 0;
38
+ this.filetype = filetype ?? '';
39
+ }
40
+ }
@@ -31,6 +31,9 @@ export class EarlyCheckoutRequestChat extends BaseModel {
31
31
  @Column({ type: 'text', nullable: false })
32
32
  message: string;
33
33
 
34
+ @Column({ type: 'text', nullable: true })
35
+ message_ar: string | null;
36
+
34
37
  @Column({
35
38
  type: 'enum',
36
39
  enum: EarlyCheckoutMessageType,
@@ -42,6 +45,9 @@ export class EarlyCheckoutRequestChat extends BaseModel {
42
45
  @Column({ type: 'text', nullable: true })
43
46
  status: string;
44
47
 
48
+ @Column({ type: 'varchar', length: 100, nullable: true })
49
+ status_ar: string | null;
50
+
45
51
  constructor(
46
52
  request_id: number,
47
53
  user_id: number,
@@ -21,9 +21,15 @@ export class EarlyCheckoutWorkFlow 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({ type: 'enum', enum: EarlyCheckoutWorkFlowStatus, default: EarlyCheckoutWorkFlowStatus.NOT_YET_STARTED, nullable: false })
25
28
  status: EarlyCheckoutWorkFlowStatus;
26
29
 
30
+ @Column({ type: 'varchar', length: 100, nullable: true })
31
+ status_ar: string | null;
32
+
27
33
  @Column({ type: 'integer', nullable: true })
28
34
  user_id: number | null;
29
35
 
@@ -29,6 +29,9 @@ export class EmbassyEvaluationRequestChat 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: EmbassyEvaluationMessageType,
@@ -1,45 +1,45 @@
1
- import { Column, Entity } from 'typeorm';
2
- import { BaseModel } from './BaseModel';
3
-
4
- export enum EmbassyEvaluationCycleStatus {
5
- DRAFT = 'Draft',
6
- ACTIVE = 'Active',
7
- CLOSED = 'Closed',
8
- }
9
-
10
- /** Evaluation period window (month-day stored as MM-DD, year applied at runtime). */
11
- @Entity({ name: 'embassy_evaluation_cycles' })
12
- export class EmbassyEvaluationCycle extends BaseModel {
13
- @Column({ type: 'varchar', length: 255, nullable: false })
14
- cycle_name: string;
15
-
16
- /** Start of evaluation window, format MM-DD (e.g. 01-15). */
17
- @Column({ type: 'varchar', length: 10, nullable: false })
18
- start_date: string;
19
-
20
- /** End of evaluation window, format MM-DD. Submissions locked after this date in the active year. */
21
- @Column({ type: 'varchar', length: 10, nullable: false })
22
- end_date: string;
23
-
24
- /**
25
- * Last day submissions are allowed (MM-DD). Closing reminders use this date.
26
- * When null, `end_date` is used for submission and reminders.
27
- */
28
- @Column({ type: 'varchar', length: 10, nullable: true })
29
- last_evaluation_date: string | null;
30
-
31
- @Column({
32
- type: 'enum',
33
- enum: EmbassyEvaluationCycleStatus,
34
- enumName: 'embassy_eval_cycle_status_enum',
35
- default: EmbassyEvaluationCycleStatus.DRAFT,
36
- nullable: false,
37
- })
38
- status: EmbassyEvaluationCycleStatus;
39
-
40
- @Column({ type: 'int', nullable: true })
41
- service_id: number | null;
42
-
43
- @Column({ type: 'int', nullable: true })
44
- sub_service_id: number | null;
45
- }
1
+ import { Column, Entity } from 'typeorm';
2
+ import { BaseModel } from './BaseModel';
3
+
4
+ export enum EmbassyEvaluationCycleStatus {
5
+ DRAFT = 'Draft',
6
+ ACTIVE = 'Active',
7
+ CLOSED = 'Closed',
8
+ }
9
+
10
+ /** Evaluation period window (month-day stored as MM-DD, year applied at runtime). */
11
+ @Entity({ name: 'embassy_evaluation_cycles' })
12
+ export class EmbassyEvaluationCycle extends BaseModel {
13
+ @Column({ type: 'varchar', length: 255, nullable: false })
14
+ cycle_name: string;
15
+
16
+ /** Start of evaluation window, format MM-DD (e.g. 01-15). */
17
+ @Column({ type: 'varchar', length: 10, nullable: false })
18
+ start_date: string;
19
+
20
+ /** End of evaluation window, format MM-DD. Submissions locked after this date in the active year. */
21
+ @Column({ type: 'varchar', length: 10, nullable: false })
22
+ end_date: string;
23
+
24
+ /**
25
+ * Last day submissions are allowed (MM-DD). Closing reminders use this date.
26
+ * When null, `end_date` is used for submission and reminders.
27
+ */
28
+ @Column({ type: 'varchar', length: 10, nullable: true })
29
+ last_evaluation_date: string | null;
30
+
31
+ @Column({
32
+ type: 'enum',
33
+ enum: EmbassyEvaluationCycleStatus,
34
+ enumName: 'embassy_eval_cycle_status_enum',
35
+ default: EmbassyEvaluationCycleStatus.DRAFT,
36
+ nullable: false,
37
+ })
38
+ status: EmbassyEvaluationCycleStatus;
39
+
40
+ @Column({ type: 'int', nullable: true })
41
+ service_id: number | null;
42
+
43
+ @Column({ type: 'int', nullable: true })
44
+ sub_service_id: number | null;
45
+ }