rez_core 5.0.86 → 5.0.87

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 (438) hide show
  1. package/.claude/settings.local.json +26 -0
  2. package/.idea/250218_nodejs_core.iml +8 -11
  3. package/.idea/codeStyles/Project.xml +58 -58
  4. package/.idea/codeStyles/codeStyleConfig.xml +4 -4
  5. package/.idea/copilot.data.migration.agent.xml +6 -0
  6. package/.idea/copilot.data.migration.ask.xml +6 -0
  7. package/.idea/copilot.data.migration.ask2agent.xml +6 -0
  8. package/.idea/copilot.data.migration.edit.xml +6 -0
  9. package/.idea/inspectionProfiles/Project_Default.xml +1 -1
  10. package/.idea/misc.xml +6 -0
  11. package/.idea/modules.xml +7 -7
  12. package/.idea/prettier.xml +5 -5
  13. package/.idea/vcs.xml +5 -5
  14. package/.prettierrc +3 -3
  15. package/README.md +99 -99
  16. package/dist/module/auth/guards/role.guard.js +3 -3
  17. package/dist/module/enterprise/repository/school.repository.d.ts +3 -3
  18. package/dist/module/enterprise/repository/school.repository.js +56 -70
  19. package/dist/module/enterprise/repository/school.repository.js.map +1 -1
  20. package/dist/module/filter/service/filter.service.js +20 -20
  21. package/dist/module/integration/examples/usage.example.js +9 -9
  22. package/dist/module/mapper/service/field-mapper.service.d.ts +1 -3
  23. package/dist/module/mapper/service/field-mapper.service.js +10 -10
  24. package/dist/module/mapper/service/field-mapper.service.js.map +1 -1
  25. package/dist/module/meta/controller/meta.controller.d.ts +4 -1
  26. package/dist/module/meta/repository/attribute-master.repository.js +8 -8
  27. package/dist/module/meta/repository/entity-attribute-update.repository.d.ts +5 -3
  28. package/dist/module/meta/repository/entity-attribute-update.repository.js +19 -13
  29. package/dist/module/meta/repository/entity-attribute-update.repository.js.map +1 -1
  30. package/dist/module/meta/repository/entity-master.repository.d.ts +8 -4
  31. package/dist/module/meta/repository/entity-master.repository.js +17 -14
  32. package/dist/module/meta/repository/entity-master.repository.js.map +1 -1
  33. package/dist/module/meta/service/entity-dynamic.service.js +21 -21
  34. package/dist/module/meta/service/entity-dynamic.service.js.map +1 -1
  35. package/dist/module/meta/service/entity-list.service.js +3 -3
  36. package/dist/module/meta/service/entity-master.service.d.ts +4 -1
  37. package/dist/module/meta/service/entity-relation.service.js +9 -9
  38. package/dist/module/meta/service/entity-service-impl.service.js +3 -3
  39. package/dist/module/meta/service/media-data.service.js +6 -6
  40. package/dist/module/meta/service/resolver.service.d.ts +5 -3
  41. package/dist/module/meta/service/resolver.service.js +40 -49
  42. package/dist/module/meta/service/resolver.service.js.map +1 -1
  43. package/dist/module/module/repository/menu.repository.js +5 -5
  44. package/dist/module/module/repository/menu.repository.js.map +1 -1
  45. package/dist/module/notification/service/notification.service.js +10 -10
  46. package/dist/module/user/controller/login.controller.js +18 -18
  47. package/dist/module/user/service/user-session.service.d.ts +8 -5
  48. package/dist/module/user/service/user-session.service.js +45 -24
  49. package/dist/module/user/service/user-session.service.js.map +1 -1
  50. package/dist/module/workflow/controller/action-template-mapping.controller.d.ts +1 -1
  51. package/dist/module/workflow/repository/action.repository.js +12 -12
  52. package/dist/module/workflow/repository/comm-template.repository.js +3 -3
  53. package/dist/module/workflow/repository/form-master.repository.js +2 -2
  54. package/dist/module/workflow/repository/stage-group.repository.js +20 -20
  55. package/dist/module/workflow/repository/stage.repository.js +8 -8
  56. package/dist/module/workflow/repository/stage.repository.js.map +1 -1
  57. package/dist/module/workflow/service/action-template-mapping.service.d.ts +3 -4
  58. package/dist/module/workflow/service/action-template-mapping.service.js +43 -33
  59. package/dist/module/workflow/service/action-template-mapping.service.js.map +1 -1
  60. package/dist/module/workflow/service/action.service.js +7 -7
  61. package/dist/module/workflow/service/entity-modification.service.js +2 -2
  62. package/dist/module/workflow/service/populate-workflow.service.js.map +1 -1
  63. package/dist/module/workflow/service/stage-group.service.js +2 -2
  64. package/dist/module/workflow/service/stage.service.js +2 -2
  65. package/dist/module/workflow/service/task.service.js +18 -18
  66. package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
  67. package/dist/module/workflow/service/workflow-meta.service.js +26 -26
  68. package/dist/module/workflow/service/workflow-meta.service.js.map +1 -1
  69. package/dist/module/workflow-automation/service/schedule-handler.service.js +9 -9
  70. package/dist/module/workflow-automation/service/workflow-automation-engine.service.js.map +1 -1
  71. package/dist/module/workflow-schedule/processors/schedule.processor.js +4 -4
  72. package/dist/module/workflow-schedule/service/workflow-schedule.service.js +9 -9
  73. package/dist/tsconfig.build.tsbuildinfo +1 -1
  74. package/dist/utils/service/reflection-helper.service.js +2 -2
  75. package/docs/modules/event-driven-integration-design.md +91 -91
  76. package/docs/modules/integration.md +250 -250
  77. package/eslint.config.mjs +34 -34
  78. package/nest-cli.json +14 -14
  79. package/package.json +125 -125
  80. package/server.log +850 -0
  81. package/src/app.controller.ts +12 -12
  82. package/src/app.module.ts +66 -66
  83. package/src/app.service.ts +8 -8
  84. package/src/config/bull.config.ts +69 -69
  85. package/src/config/config.module.ts +17 -17
  86. package/src/config/database.config.ts +48 -48
  87. package/src/constant/global.constant.ts +67 -67
  88. package/src/core.module.ts +91 -91
  89. package/src/decorators/roles.decorator.ts +7 -7
  90. package/src/dtos/response.dto.ts +6 -6
  91. package/src/dtos/response.ts +5 -5
  92. package/src/index.ts +1 -1
  93. package/src/module/auth/auth.module.ts +49 -49
  94. package/src/module/auth/controller/auth.controller.ts +28 -28
  95. package/src/module/auth/guards/google-auth.guard.ts +9 -9
  96. package/src/module/auth/guards/jwt.guard.ts +22 -22
  97. package/src/module/auth/guards/role.guard.ts +68 -68
  98. package/src/module/auth/services/auth.service.ts +56 -56
  99. package/src/module/auth/services/jwt.service.ts +11 -11
  100. package/src/module/auth/strategies/google.strategy.ts +54 -54
  101. package/src/module/auth/strategies/jwt.strategy.ts +58 -58
  102. package/src/module/auth/strategies/local.strategy.ts +13 -13
  103. package/src/module/dashboard/controller/dashboard.controller.ts +36 -36
  104. package/src/module/dashboard/dashboard.module.ts +21 -21
  105. package/src/module/dashboard/entity/dashboard_page_data.entity.ts +27 -27
  106. package/src/module/dashboard/entity/widget_master.entity.ts +18 -18
  107. package/src/module/dashboard/repository/dashboard.repository.ts +51 -51
  108. package/src/module/dashboard/service/dashboard.service.ts +73 -73
  109. package/src/module/enterprise/controller/organization.controller.ts +36 -36
  110. package/src/module/enterprise/enterprise.module.ts +30 -30
  111. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  112. package/src/module/enterprise/entity/organization-app-mapping.entity.ts +13 -13
  113. package/src/module/enterprise/entity/organization.entity.ts +92 -92
  114. package/src/module/enterprise/repository/enterprise.repository.ts +31 -31
  115. package/src/module/enterprise/repository/organization.repository.ts +26 -26
  116. package/src/module/enterprise/repository/school.repository.ts +272 -278
  117. package/src/module/enterprise/service/brand.service.ts +5 -5
  118. package/src/module/enterprise/service/enterprise.service.ts +16 -16
  119. package/src/module/enterprise/service/organization-app-mapping.service.ts +4 -4
  120. package/src/module/enterprise/service/organization.service.ts +145 -145
  121. package/src/module/entity_json/controller/entity_json.controller.ts +47 -47
  122. package/src/module/entity_json/entity/entityJson.entity.ts +39 -39
  123. package/src/module/entity_json/entity_json.module.ts +18 -18
  124. package/src/module/entity_json/service/entityJson.repository.ts +37 -37
  125. package/src/module/entity_json/service/entity_json.service.ts +234 -234
  126. package/src/module/filter/controller/filter.controller.ts +84 -84
  127. package/src/module/filter/dto/filter-request.dto.ts +38 -38
  128. package/src/module/filter/entity/saved-filter-detail.entity.ts +41 -41
  129. package/src/module/filter/entity/saved-filter-master.entity.ts +23 -23
  130. package/src/module/filter/filter.module.ts +33 -33
  131. package/src/module/filter/repository/saved-filter.repository.ts +168 -168
  132. package/src/module/filter/repository/saved.filter-detail.repository.ts +19 -19
  133. package/src/module/filter/service/filter-evaluator.service.ts +82 -82
  134. package/src/module/filter/service/filter.service.ts +1304 -1304
  135. package/src/module/filter/service/saved-filter.service.ts +170 -170
  136. package/src/module/ics/controller/ics.controller.ts +21 -21
  137. package/src/module/ics/dto/ics.dto.ts +55 -55
  138. package/src/module/ics/ics.module.ts +13 -13
  139. package/src/module/ics/service/ics.service.ts +57 -57
  140. package/src/module/integration/controller/calender-event.controller.ts +31 -31
  141. package/src/module/integration/controller/integration.controller.ts +662 -662
  142. package/src/module/integration/controller/wrapper.controller.ts +37 -37
  143. package/src/module/integration/dto/create-config.dto.ts +526 -526
  144. package/src/module/integration/entity/integration-config.entity.ts +112 -112
  145. package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
  146. package/src/module/integration/entity/integration-source.entity.ts +17 -17
  147. package/src/module/integration/entity/user-integration.entity.ts +71 -71
  148. package/src/module/integration/examples/usage.example.ts +338 -338
  149. package/src/module/integration/factories/base.factory.ts +7 -7
  150. package/src/module/integration/factories/email.factory.ts +49 -49
  151. package/src/module/integration/factories/integration.factory.ts +121 -121
  152. package/src/module/integration/factories/sms.factory.ts +51 -51
  153. package/src/module/integration/factories/telephone.factory.ts +41 -41
  154. package/src/module/integration/factories/whatsapp.factory.ts +56 -56
  155. package/src/module/integration/integration.module.ts +110 -110
  156. package/src/module/integration/service/calendar-event.service.ts +118 -118
  157. package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
  158. package/src/module/integration/service/integration-queue.service.ts +229 -229
  159. package/src/module/integration/service/integration.service.ts +2634 -2634
  160. package/src/module/integration/service/oauth.service.ts +224 -224
  161. package/src/module/integration/service/wrapper.service.ts +716 -716
  162. package/src/module/integration/strategies/email/gmail-api.strategy.ts +280 -280
  163. package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
  164. package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
  165. package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +260 -260
  166. package/src/module/integration/strategies/integration.strategy.ts +97 -97
  167. package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
  168. package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
  169. package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
  170. package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -238
  171. package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -210
  172. package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
  173. package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +372 -372
  174. package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
  175. package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
  176. package/src/module/layout/controller/layout.controller.ts +47 -47
  177. package/src/module/layout/entity/header-items.entity.ts +28 -28
  178. package/src/module/layout/entity/header-section.entity.ts +19 -19
  179. package/src/module/layout/layout.module.ts +21 -21
  180. package/src/module/layout/repository/header-items.repository.ts +18 -18
  181. package/src/module/layout/repository/header-section.repository.ts +22 -22
  182. package/src/module/layout/service/header-section.service.ts +25 -25
  183. package/src/module/layout_preference/controller/layout_preference.controller.ts +73 -73
  184. package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
  185. package/src/module/layout_preference/layout_preference.module.ts +22 -22
  186. package/src/module/layout_preference/repository/layout_preference.repository.ts +65 -65
  187. package/src/module/layout_preference/service/layout_preference.service.ts +191 -191
  188. package/src/module/lead/controller/lead.controller.ts +30 -30
  189. package/src/module/lead/lead.module.ts +14 -14
  190. package/src/module/lead/repository/lead.repository.ts +41 -41
  191. package/src/module/lead/service/lead.service.ts +54 -54
  192. package/src/module/linked_attributes/controller/linked_attributes.controller.ts +37 -37
  193. package/src/module/linked_attributes/entity/linked_attribute.entity.ts +51 -51
  194. package/src/module/linked_attributes/linked_attributes.module.ts +16 -16
  195. package/src/module/linked_attributes/repository/linked_attribute.repository.ts +12 -12
  196. package/src/module/linked_attributes/service/linked_attributes.service.ts +75 -75
  197. package/src/module/listmaster/controller/list-master.controller.ts +230 -230
  198. package/src/module/listmaster/entity/list-master-items.entity.ts +43 -43
  199. package/src/module/listmaster/entity/list-master.entity.ts +33 -33
  200. package/src/module/listmaster/listmaster.module.ts +46 -46
  201. package/src/module/listmaster/repository/list-master-items.repository.ts +173 -173
  202. package/src/module/listmaster/repository/list-master.repository.ts +56 -56
  203. package/src/module/listmaster/service/list-master-engine.ts +19 -19
  204. package/src/module/listmaster/service/list-master-extension.interface.ts +4 -4
  205. package/src/module/listmaster/service/list-master-item.service.ts +281 -281
  206. package/src/module/listmaster/service/list-master-registry.ts +15 -15
  207. package/src/module/listmaster/service/list-master.service.ts +535 -535
  208. package/src/module/mapper/controller/field-mapper.controller.ts +76 -76
  209. package/src/module/mapper/controller/mapper.controller.ts +20 -20
  210. package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
  211. package/src/module/mapper/entity/field-lovs.entity.ts +19 -19
  212. package/src/module/mapper/entity/field-mapper.entity.ts +53 -53
  213. package/src/module/mapper/entity/mapper.entity.ts +16 -16
  214. package/src/module/mapper/mapper.module.ts +35 -35
  215. package/src/module/mapper/repository/field-lovs.repository.ts +35 -35
  216. package/src/module/mapper/repository/field-mapper.repository.ts +42 -42
  217. package/src/module/mapper/repository/mapper.repository.ts +32 -32
  218. package/src/module/mapper/service/field-mapper.service.ts +269 -271
  219. package/src/module/mapper/service/mapper.service.ts +81 -81
  220. package/src/module/master/controller/master.controller.ts +74 -74
  221. package/src/module/master/service/master.service.ts +483 -483
  222. package/src/module/meta/controller/app-master.controller.ts +38 -38
  223. package/src/module/meta/controller/attribute-master.controller.ts +84 -84
  224. package/src/module/meta/controller/entity-dynamic.controller.ts +125 -125
  225. package/src/module/meta/controller/entity-master.controller.ts +41 -41
  226. package/src/module/meta/controller/entity-relation.controller.ts +36 -36
  227. package/src/module/meta/controller/entity.controller.ts +392 -392
  228. package/src/module/meta/controller/entity.public.controller.ts +75 -75
  229. package/src/module/meta/controller/media.controller.ts +107 -107
  230. package/src/module/meta/controller/meta.controller.ts +96 -96
  231. package/src/module/meta/controller/view-master.controller.ts +86 -86
  232. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  233. package/src/module/meta/dto/entity-tab.dto.ts +4 -4
  234. package/src/module/meta/dto/entity-table.dto.ts +9 -9
  235. package/src/module/meta/entity/app-master.entity.ts +34 -34
  236. package/src/module/meta/entity/attribute-master.entity.ts +92 -92
  237. package/src/module/meta/entity/base-entity.entity.ts +75 -75
  238. package/src/module/meta/entity/entity-master.entity.ts +85 -85
  239. package/src/module/meta/entity/entity-relation-data.entity.ts +29 -29
  240. package/src/module/meta/entity/entity-relation.entity.ts +23 -23
  241. package/src/module/meta/entity/entity-table-column.entity.ts +61 -61
  242. package/src/module/meta/entity/entity-table.entity.ts +50 -50
  243. package/src/module/meta/entity/media-data.entity.ts +32 -32
  244. package/src/module/meta/entity/preference.entity.ts +62 -62
  245. package/src/module/meta/entity/view-master.entity.ts +41 -41
  246. package/src/module/meta/entity.module.ts +166 -166
  247. package/src/module/meta/repository/app-master.repository.ts +20 -20
  248. package/src/module/meta/repository/attribute-master.repository.ts +156 -156
  249. package/src/module/meta/repository/entity-attribute-update.repository.ts +48 -44
  250. package/src/module/meta/repository/entity-master.repository.ts +109 -111
  251. package/src/module/meta/repository/entity-table-column.repository.ts +39 -39
  252. package/src/module/meta/repository/entity-table.repository.ts +53 -53
  253. package/src/module/meta/repository/media-data.repository.ts +50 -50
  254. package/src/module/meta/repository/preference.repository.ts +20 -20
  255. package/src/module/meta/repository/user-app-mapping.repository.ts +28 -28
  256. package/src/module/meta/repository/view-master.repository.ts +42 -42
  257. package/src/module/meta/service/app-master.service.ts +37 -37
  258. package/src/module/meta/service/attribute-master.service.ts +130 -130
  259. package/src/module/meta/service/common.service.ts +9 -9
  260. package/src/module/meta/service/entity-attribute-update.service.ts +28 -28
  261. package/src/module/meta/service/entity-dynamic.service.ts +810 -846
  262. package/src/module/meta/service/entity-list.service.ts +205 -205
  263. package/src/module/meta/service/entity-master.service.ts +171 -171
  264. package/src/module/meta/service/entity-realation-data.service.ts +9 -9
  265. package/src/module/meta/service/entity-relation.service.ts +87 -87
  266. package/src/module/meta/service/entity-service-impl.service.ts +525 -525
  267. package/src/module/meta/service/entity-table-column.service.ts +39 -39
  268. package/src/module/meta/service/entity-table.service.ts +150 -150
  269. package/src/module/meta/service/entity-validation.service.ts +187 -187
  270. package/src/module/meta/service/entity.service.ts +67 -67
  271. package/src/module/meta/service/field-group.service.ts +103 -103
  272. package/src/module/meta/service/media-data.service.ts +510 -510
  273. package/src/module/meta/service/populate-meta.service.ts +222 -222
  274. package/src/module/meta/service/preference.service.ts +16 -16
  275. package/src/module/meta/service/resolver.service.ts +292 -316
  276. package/src/module/meta/service/section-master.service.ts +104 -104
  277. package/src/module/meta/service/update-form-json.service.ts +22 -22
  278. package/src/module/meta/service/user-app-mapping.service.ts +17 -17
  279. package/src/module/meta/service/view-master.service.ts +127 -127
  280. package/src/module/microservice-client/microservice-clients.module.ts +13 -13
  281. package/src/module/microservice-client/service/microservice-client-factory.ts +37 -37
  282. package/src/module/microservice-client/service/microservice-clients.ts +4 -4
  283. package/src/module/module/controller/menu.controller.ts +15 -15
  284. package/src/module/module/controller/module-access.controller.ts +134 -134
  285. package/src/module/module/entity/menu.entity.ts +43 -43
  286. package/src/module/module/entity/module-access.entity.ts +25 -25
  287. package/src/module/module/entity/module-action.entity.ts +17 -17
  288. package/src/module/module/entity/module.entity.ts +52 -52
  289. package/src/module/module/module.module.ts +42 -42
  290. package/src/module/module/repository/menu.repository.ts +184 -184
  291. package/src/module/module/repository/module-access.repository.ts +344 -344
  292. package/src/module/module/service/menu.service.ts +82 -82
  293. package/src/module/module/service/module-access.service.ts +195 -195
  294. package/src/module/notification/controller/notification.controller.ts +58 -58
  295. package/src/module/notification/controller/otp.controller.ts +117 -117
  296. package/src/module/notification/entity/notification.entity.ts +26 -26
  297. package/src/module/notification/entity/otp.entity.ts +28 -28
  298. package/src/module/notification/firebase-admin.config.ts +22 -22
  299. package/src/module/notification/notification.module.ts +69 -69
  300. package/src/module/notification/repository/otp.repository.ts +27 -27
  301. package/src/module/notification/service/email.service.ts +127 -127
  302. package/src/module/notification/service/notification.service.ts +160 -160
  303. package/src/module/notification/service/otp.service.ts +133 -133
  304. package/src/module/third-party-module/entity/third-party-api-registry.entity.ts +52 -52
  305. package/src/module/third-party-module/repository/third-party-api-registry.repository.ts +20 -20
  306. package/src/module/third-party-module/service/api-registry.service.ts +13 -13
  307. package/src/module/third-party-module/third-party.module.ts +12 -12
  308. package/src/module/user/controller/login.controller.ts +198 -198
  309. package/src/module/user/controller/user.controller.ts +40 -40
  310. package/src/module/user/dto/create-user.dto.ts +62 -62
  311. package/src/module/user/dto/update-user.dto.ts +4 -4
  312. package/src/module/user/entity/role.entity.ts +33 -33
  313. package/src/module/user/entity/user-role-mapping.entity.ts +38 -38
  314. package/src/module/user/entity/user-session.entity.ts +73 -73
  315. package/src/module/user/entity/user.entity.ts +59 -59
  316. package/src/module/user/repository/role.repository.ts +96 -96
  317. package/src/module/user/repository/user-role-mapping.repository.ts +126 -126
  318. package/src/module/user/repository/user.repository.ts +50 -50
  319. package/src/module/user/repository/userSession.repository.ts +33 -33
  320. package/src/module/user/service/login.service.ts +326 -326
  321. package/src/module/user/service/role.service.ts +197 -197
  322. package/src/module/user/service/user-role-mapping.service.ts +98 -98
  323. package/src/module/user/service/user-session.service.ts +177 -168
  324. package/src/module/user/service/user.service.ts +368 -368
  325. package/src/module/user/user.module.ts +65 -65
  326. package/src/module/workflow/controller/action-category.controller.ts +54 -54
  327. package/src/module/workflow/controller/action-resource-mapping.controller.ts +23 -23
  328. package/src/module/workflow/controller/action-template-mapping.controller.ts +35 -35
  329. package/src/module/workflow/controller/action.controller.ts +111 -111
  330. package/src/module/workflow/controller/activity-log.controller.ts +55 -55
  331. package/src/module/workflow/controller/comm-template.controller.ts +43 -43
  332. package/src/module/workflow/controller/entity-modification.controller.ts +35 -35
  333. package/src/module/workflow/controller/form-master.controller.ts +43 -43
  334. package/src/module/workflow/controller/stage-group.controller.ts +48 -48
  335. package/src/module/workflow/controller/stage.controller.ts +50 -50
  336. package/src/module/workflow/controller/task.controller.ts +77 -77
  337. package/src/module/workflow/controller/workflow-list-master.controller.ts +44 -44
  338. package/src/module/workflow/controller/workflow-meta.controller.ts +80 -80
  339. package/src/module/workflow/controller/workflow.controller.ts +67 -67
  340. package/src/module/workflow/entity/action-category.entity.ts +38 -38
  341. package/src/module/workflow/entity/action-data.entity.ts +55 -55
  342. package/src/module/workflow/entity/action-resources-mapping.entity.ts +29 -29
  343. package/src/module/workflow/entity/action-template-mapping.entity.ts +17 -17
  344. package/src/module/workflow/entity/action.entity.ts +53 -53
  345. package/src/module/workflow/entity/activity-log.entity.ts +43 -43
  346. package/src/module/workflow/entity/comm-template.entity.ts +43 -43
  347. package/src/module/workflow/entity/entity-modification.entity.ts +38 -38
  348. package/src/module/workflow/entity/form.entity.ts +25 -25
  349. package/src/module/workflow/entity/stage-action-mapping.entity.ts +17 -17
  350. package/src/module/workflow/entity/stage-group.entity.ts +23 -23
  351. package/src/module/workflow/entity/stage-movement-data.entity.ts +38 -38
  352. package/src/module/workflow/entity/stage.entity.ts +20 -20
  353. package/src/module/workflow/entity/task-data.entity.ts +88 -88
  354. package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
  355. package/src/module/workflow/entity/workflow-data.entity.ts +11 -11
  356. package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
  357. package/src/module/workflow/entity/workflow.entity.ts +20 -20
  358. package/src/module/workflow/repository/action-category.repository.ts +79 -79
  359. package/src/module/workflow/repository/action-data.repository.ts +339 -339
  360. package/src/module/workflow/repository/action.repository.ts +341 -341
  361. package/src/module/workflow/repository/activity-log.repository.ts +148 -148
  362. package/src/module/workflow/repository/comm-template.repository.ts +151 -151
  363. package/src/module/workflow/repository/form-master.repository.ts +59 -59
  364. package/src/module/workflow/repository/stage-group.repository.ts +197 -197
  365. package/src/module/workflow/repository/stage-movement.repository.ts +253 -253
  366. package/src/module/workflow/repository/stage.repository.ts +160 -172
  367. package/src/module/workflow/repository/task.repository.ts +151 -151
  368. package/src/module/workflow/repository/workflow.repository.ts +42 -42
  369. package/src/module/workflow/service/action-category.service.ts +33 -33
  370. package/src/module/workflow/service/action-data.service.ts +62 -62
  371. package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
  372. package/src/module/workflow/service/action-template-mapping.service.ts +131 -131
  373. package/src/module/workflow/service/action.service.ts +279 -279
  374. package/src/module/workflow/service/activity-log.service.ts +107 -107
  375. package/src/module/workflow/service/comm-template.service.ts +180 -180
  376. package/src/module/workflow/service/entity-modification.service.ts +61 -61
  377. package/src/module/workflow/service/form-master.service.ts +35 -35
  378. package/src/module/workflow/service/populate-workflow.service.ts +320 -333
  379. package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
  380. package/src/module/workflow/service/stage-group.service.ts +342 -342
  381. package/src/module/workflow/service/stage.service.ts +199 -199
  382. package/src/module/workflow/service/task.service.ts +549 -549
  383. package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
  384. package/src/module/workflow/service/workflow-meta.service.ts +635 -653
  385. package/src/module/workflow/service/workflow.service.ts +209 -209
  386. package/src/module/workflow/workflow.module.ts +180 -180
  387. package/src/module/workflow-automation/SCHEDULING_GUIDE.md +145 -145
  388. package/src/module/workflow-automation/controller/workflow-automation.controller.ts +43 -43
  389. package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
  390. package/src/module/workflow-automation/entity/workflow-automation.entity.ts +40 -40
  391. package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
  392. package/src/module/workflow-automation/interface/action.interface.ts +5 -5
  393. package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
  394. package/src/module/workflow-automation/service/schedule-handler.service.ts +168 -168
  395. package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +219 -224
  396. package/src/module/workflow-automation/service/workflow-automation.service.ts +515 -515
  397. package/src/module/workflow-automation/workflow-automation.module.ts +54 -54
  398. package/src/module/workflow-schedule/INSTALLATION.md +244 -244
  399. package/src/module/workflow-schedule/MULTI_PROJECT_GUIDE.md +196 -196
  400. package/src/module/workflow-schedule/README.md +422 -422
  401. package/src/module/workflow-schedule/constants/schedule.constants.ts +48 -48
  402. package/src/module/workflow-schedule/controller/workflow-schedule.controller.ts +255 -255
  403. package/src/module/workflow-schedule/docs/CLAUDE_CODE_GUIDE.md +510 -510
  404. package/src/module/workflow-schedule/docs/CLAUDE_CODE_PROMPT.md +362 -362
  405. package/src/module/workflow-schedule/docs/RUN_CLAUDE_CODE.sh +68 -68
  406. package/src/module/workflow-schedule/dto/create-schedule.dto.ts +147 -147
  407. package/src/module/workflow-schedule/dto/get-execution-logs.dto.ts +119 -119
  408. package/src/module/workflow-schedule/dto/update-schedule.dto.ts +96 -96
  409. package/src/module/workflow-schedule/entities/scheduled-workflow.entity.ts +148 -148
  410. package/src/module/workflow-schedule/entities/workflow-execution-log.entity.ts +154 -154
  411. package/src/module/workflow-schedule/interfaces/schedule-job-data.interface.ts +53 -53
  412. package/src/module/workflow-schedule/interfaces/workflow-schedule-options.interface.ts +12 -12
  413. package/src/module/workflow-schedule/processors/schedule.processor.ts +584 -584
  414. package/src/module/workflow-schedule/service/workflow-schedule.service.ts +600 -600
  415. package/src/module/workflow-schedule/workflow-schedule.module.ts +67 -67
  416. package/src/resources/dev.properties.yaml +31 -31
  417. package/src/resources/local.properties.yaml +27 -27
  418. package/src/resources/properties.module.ts +12 -12
  419. package/src/resources/properties.yaml.ts +11 -11
  420. package/src/resources/uat.properties.yaml +31 -31
  421. package/src/table.config.ts +133 -133
  422. package/src/utils/dto/excel-data.dto.ts +14 -14
  423. package/src/utils/dto/excelsheet-data.dto.ts +5 -5
  424. package/src/utils/service/base64util.service.ts +18 -18
  425. package/src/utils/service/clockIDGenUtil.service.ts +21 -21
  426. package/src/utils/service/codeGenerator.service.ts +22 -22
  427. package/src/utils/service/dateUtil.service.ts +17 -17
  428. package/src/utils/service/encryptUtil.service.ts +97 -97
  429. package/src/utils/service/excel-helper.service.ts +72 -72
  430. package/src/utils/service/excelUtil.service.ts +15 -15
  431. package/src/utils/service/file-util.service.ts +11 -11
  432. package/src/utils/service/json-util.service.ts +23 -23
  433. package/src/utils/service/loggingUtil.service.ts +88 -88
  434. package/src/utils/service/reflection-helper.service.ts +62 -62
  435. package/src/utils/service/wbsCodeGen.service.ts +8 -8
  436. package/src/utils/utils.module.ts +27 -27
  437. package/tsconfig.build.json +4 -4
  438. package/tsconfig.json +24 -24
@@ -1,279 +1,279 @@
1
- import { BadRequestException, Injectable } from '@nestjs/common';
2
- import { BaseEntity } from 'src/module/meta/entity/base-entity.entity';
3
- import { EntityServiceImpl } from 'src/module/meta/service/entity-service-impl.service';
4
- import { UserData } from 'src/module/user/entity/user.entity';
5
- import { DataSource, EntityManager, Repository } from 'typeorm';
6
- import { ActionRepository } from '../repository/action.repository';
7
- import { ActionEntity } from '../entity/action.entity';
8
-
9
- @Injectable()
10
- export class ActionService extends EntityServiceImpl {
11
- constructor(
12
- private readonly dataSource: DataSource,
13
- private readonly actionRepository: ActionRepository,
14
- ) {
15
- super();
16
- }
17
-
18
- async getEntityData(
19
- entityType: string,
20
- id: number,
21
- loggedInUser,
22
- ): Promise<any> {
23
- const actionData = await super.getEntityData(entityType, id, loggedInUser);
24
-
25
- if (!actionData) {
26
- return null;
27
- }
28
-
29
- const result = await this.dataSource.query(
30
- `SELECT template_code, form_id
31
- FROM frm_wf_action_resources_mapping
32
- WHERE stg_act_mapping_id IN (
33
- SELECT id
34
- FROM frm_wf_stage_action_mapping
35
- WHERE action_id = $1 AND entity_type = 'WFSA'
36
- )`,
37
- [actionData.id],
38
- );
39
-
40
- const templates = result
41
- .filter((t) => t.template_code !== null)
42
- .map((t) => t.template_code);
43
-
44
- const form = result.find((f) => f.form_id !== null);
45
-
46
- return {
47
- ...actionData,
48
- template: templates,
49
- form: form?.form_id ?? null,
50
- };
51
- }
52
-
53
- async createEntity(
54
- entityData: BaseEntity,
55
- loggedInUser: UserData | null,
56
- manager?: EntityManager | null,
57
- appcode?: string,
58
- ): Promise<any> {
59
- const actionData = entityData as any;
60
-
61
- // 🔧 Remove 'template' array before inserting main action
62
- const { template, ...actionWithoutTemplates } = actionData;
63
-
64
- // Step 1: Create main action entity
65
- const action = await super.createEntity(actionWithoutTemplates, loggedInUser);
66
-
67
- // Step 2: Create stage mapping
68
- const stageActionMapping = {
69
- action_id: action.id,
70
- stage_id: actionData.stage_id,
71
-
72
- entity_type: 'WFSA',
73
- } as any;
74
-
75
- if (entityData?.organization_id) {
76
- stageActionMapping.organization_id = entityData.organization_id;
77
- }
78
-
79
- const stageActionMappingData = await super.createEntity(
80
- stageActionMapping,
81
- loggedInUser,
82
- );
83
-
84
- // Step 3: Template mapping (existing)
85
- if (Array.isArray(actionData.template) && actionData.template.length > 0) {
86
- for (const templateCode of actionData.template) {
87
- // ➕ Step 4: Resource mapping for template
88
- const resourceMapping = {
89
- stg_act_mapping_id: stageActionMappingData.id,
90
- template_code: templateCode,
91
- type: 'template',
92
- entity_type: 'WFAR',
93
- } as any;
94
-
95
- if (entityData?.organization_id) {
96
- resourceMapping.organization_id = entityData.organization_id;
97
- }
98
-
99
- await super.createEntity(resourceMapping, loggedInUser);
100
- }
101
- }
102
-
103
- await this.dataSource.query(
104
- `DELETE FROM frm_wf_action_resources_mapping WHERE stg_act_mapping_id = $1 AND type = 'form'`,
105
- [stageActionMappingData.id],
106
- );
107
-
108
- if (actionData.form) {
109
- const resourceMapping = {
110
- stg_act_mapping_id: stageActionMappingData.id,
111
- organization_id: entityData.organization_id,
112
- level_id: entityData.level_id,
113
- form_id: actionData.form,
114
- type: 'form',
115
- entity_type: 'WFAR',
116
- } as any;
117
-
118
- await super.createEntity(resourceMapping, loggedInUser);
119
- }
120
-
121
- return actionData;
122
- }
123
-
124
- async updateEntity(
125
- entityData: BaseEntity,
126
- loggedInUser: UserData,
127
- ): Promise<any> {
128
- // Extract template from entityData, keep the rest for ActionEntity
129
- const { template, stage_id, form, ...actionData } =
130
- entityData as ActionEntity & {
131
- template?: number[];
132
- stage_id?: string;
133
- form?: number;
134
- };
135
-
136
- // Pass only actionData (without template) to super.updateEntity
137
- const action = await super.updateEntity({ ...actionData }, loggedInUser);
138
-
139
- if (!action) {
140
- throw new Error('Action not found or could not be updated');
141
- }
142
-
143
- const stageMapID = await this.dataSource.query(
144
- `SELECT id FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type = 'WFSA'`,
145
- [action.id],
146
- );
147
-
148
- let stageActionMappingData;
149
-
150
- if (stageMapID.length > 0) {
151
- // Update existing mapping
152
- const stageActionMapping = {
153
- id: stageMapID[0].id,
154
- action_id: action.id,
155
- stage_id,
156
- entity_type: 'WFSA',
157
- } as any;
158
-
159
- stageActionMappingData = await super.updateEntity(
160
- stageActionMapping,
161
- loggedInUser,
162
- );
163
- } else {
164
- // Create new mapping
165
- const newStageMapping = {
166
- action_id: action.id,
167
- stage_id,
168
- entity_type: 'WFSA',
169
- organization_id: entityData.organization_id,
170
- } as any;
171
-
172
- stageActionMappingData = await super.createEntity(
173
- newStageMapping,
174
- loggedInUser,
175
- );
176
- }
177
-
178
- // delete existing template mappings for this action
179
- await this.dataSource.query(
180
- `DELETE FROM frm_wf_action_resources_mapping WHERE stg_act_mapping_id = $1 AND type = 'template'`,
181
- [stageActionMappingData.id],
182
- );
183
-
184
- // Handle template mapping (using the extracted template)
185
- if (Array.isArray(template) && template.length > 0) {
186
- for (let i = 0; i < template.length; i++) {
187
- const templateCode = template[i];
188
-
189
- // Create Action-Template Mapping
190
- const resourceMapping = {
191
- stg_act_mapping_id: stageActionMappingData.id,
192
- template_code: templateCode,
193
- type: 'template',
194
- entity_type: 'WFAR',
195
- } as any;
196
-
197
- const res = await super.createEntity(resourceMapping, loggedInUser);
198
- console.log(res);
199
- }
200
- }
201
-
202
- await this.dataSource.query(
203
- `DELETE FROM frm_wf_action_resources_mapping WHERE stg_act_mapping_id = $1 AND type = 'form'`,
204
- [stageActionMappingData.id],
205
- );
206
-
207
- if (form) {
208
- const resourceMapping = {
209
- stg_act_mapping_id: stageActionMappingData.id,
210
- form_id: form,
211
- type: 'form',
212
- entity_type: 'WFAR',
213
- } as any;
214
-
215
- await super.createEntity(resourceMapping, loggedInUser);
216
- }
217
- return action; // Return the action entity instead of actionData
218
- }
219
-
220
- async deleteEntity(
221
- entityType: string,
222
- id: number,
223
- loggedInUser: UserData,
224
- ): Promise<any> {
225
- await this.dataSource.query(
226
- `DELETE FROM frm_wf_action_template_mapping WHERE stg_act_mapping_id IN (SELECT
227
- id FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type = 'WFSA')`,
228
- [id],
229
- );
230
-
231
- await this.dataSource.query(
232
- `DELETE FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type ='WFSA'`,
233
- [id],
234
- );
235
-
236
- const deleteAction = await super.deleteEntity(entityType, id, loggedInUser);
237
-
238
- return deleteAction;
239
- }
240
-
241
- async getReasonCode(loggedInUser: UserData): Promise<any> {
242
- return this.actionRepository.getReasonCode(loggedInUser);
243
- }
244
-
245
- async defaultReasonCode(list_type: string, loggedInUser: UserData) {
246
- return this.actionRepository.defaultReasonCode(list_type, loggedInUser);
247
- }
248
-
249
- async getActions(loggedInUser: UserData, stage_id: number) {
250
- return this.actionRepository.getActions(loggedInUser, stage_id);
251
- }
252
-
253
- async getDependentActions(
254
- loggedInUser: UserData,
255
- stage_id: number,
256
- action_id: number | undefined,
257
- ) {
258
- return this.actionRepository.getDependentActions(
259
- loggedInUser,
260
- stage_id,
261
- action_id,
262
- );
263
- }
264
-
265
- async getAction(
266
- loggedInUser: UserData,
267
- stage_id: number,
268
- mapped_entity_id: number,
269
- mapped_entity_type: string,
270
- ) {
271
- const { organization_id } = loggedInUser;
272
- return this.actionRepository.getAction(
273
- organization_id,
274
- stage_id,
275
- mapped_entity_id,
276
- mapped_entity_type,
277
- );
278
- }
279
- }
1
+ import { BadRequestException, Injectable } from '@nestjs/common';
2
+ import { BaseEntity } from 'src/module/meta/entity/base-entity.entity';
3
+ import { EntityServiceImpl } from 'src/module/meta/service/entity-service-impl.service';
4
+ import { UserData } from 'src/module/user/entity/user.entity';
5
+ import { DataSource, EntityManager, Repository } from 'typeorm';
6
+ import { ActionRepository } from '../repository/action.repository';
7
+ import { ActionEntity } from '../entity/action.entity';
8
+
9
+ @Injectable()
10
+ export class ActionService extends EntityServiceImpl {
11
+ constructor(
12
+ private readonly dataSource: DataSource,
13
+ private readonly actionRepository: ActionRepository,
14
+ ) {
15
+ super();
16
+ }
17
+
18
+ async getEntityData(
19
+ entityType: string,
20
+ id: number,
21
+ loggedInUser,
22
+ ): Promise<any> {
23
+ const actionData = await super.getEntityData(entityType, id, loggedInUser);
24
+
25
+ if (!actionData) {
26
+ return null;
27
+ }
28
+
29
+ const result = await this.dataSource.query(
30
+ `SELECT template_code, form_id
31
+ FROM frm_wf_action_resources_mapping
32
+ WHERE stg_act_mapping_id IN (
33
+ SELECT id
34
+ FROM frm_wf_stage_action_mapping
35
+ WHERE action_id = $1 AND entity_type = 'WFSA'
36
+ )`,
37
+ [actionData.id],
38
+ );
39
+
40
+ const templates = result
41
+ .filter((t) => t.template_code !== null)
42
+ .map((t) => t.template_code);
43
+
44
+ const form = result.find((f) => f.form_id !== null);
45
+
46
+ return {
47
+ ...actionData,
48
+ template: templates,
49
+ form: form?.form_id ?? null,
50
+ };
51
+ }
52
+
53
+ async createEntity(
54
+ entityData: BaseEntity,
55
+ loggedInUser: UserData | null,
56
+ manager?: EntityManager | null,
57
+ appcode?: string,
58
+ ): Promise<any> {
59
+ const actionData = entityData as any;
60
+
61
+ // 🔧 Remove 'template' array before inserting main action
62
+ const { template, ...actionWithoutTemplates } = actionData;
63
+
64
+ // Step 1: Create main action entity
65
+ const action = await super.createEntity(actionWithoutTemplates, loggedInUser);
66
+
67
+ // Step 2: Create stage mapping
68
+ const stageActionMapping = {
69
+ action_id: action.id,
70
+ stage_id: actionData.stage_id,
71
+
72
+ entity_type: 'WFSA',
73
+ } as any;
74
+
75
+ if (entityData?.organization_id) {
76
+ stageActionMapping.organization_id = entityData.organization_id;
77
+ }
78
+
79
+ const stageActionMappingData = await super.createEntity(
80
+ stageActionMapping,
81
+ loggedInUser,
82
+ );
83
+
84
+ // Step 3: Template mapping (existing)
85
+ if (Array.isArray(actionData.template) && actionData.template.length > 0) {
86
+ for (const templateCode of actionData.template) {
87
+ // ➕ Step 4: Resource mapping for template
88
+ const resourceMapping = {
89
+ stg_act_mapping_id: stageActionMappingData.id,
90
+ template_code: templateCode,
91
+ type: 'template',
92
+ entity_type: 'WFAR',
93
+ } as any;
94
+
95
+ if (entityData?.organization_id) {
96
+ resourceMapping.organization_id = entityData.organization_id;
97
+ }
98
+
99
+ await super.createEntity(resourceMapping, loggedInUser);
100
+ }
101
+ }
102
+
103
+ await this.dataSource.query(
104
+ `DELETE FROM frm_wf_action_resources_mapping WHERE stg_act_mapping_id = $1 AND type = 'form'`,
105
+ [stageActionMappingData.id],
106
+ );
107
+
108
+ if (actionData.form) {
109
+ const resourceMapping = {
110
+ stg_act_mapping_id: stageActionMappingData.id,
111
+ organization_id: entityData.organization_id,
112
+ level_id: entityData.level_id,
113
+ form_id: actionData.form,
114
+ type: 'form',
115
+ entity_type: 'WFAR',
116
+ } as any;
117
+
118
+ await super.createEntity(resourceMapping, loggedInUser);
119
+ }
120
+
121
+ return actionData;
122
+ }
123
+
124
+ async updateEntity(
125
+ entityData: BaseEntity,
126
+ loggedInUser: UserData,
127
+ ): Promise<any> {
128
+ // Extract template from entityData, keep the rest for ActionEntity
129
+ const { template, stage_id, form, ...actionData } =
130
+ entityData as ActionEntity & {
131
+ template?: number[];
132
+ stage_id?: string;
133
+ form?: number;
134
+ };
135
+
136
+ // Pass only actionData (without template) to super.updateEntity
137
+ const action = await super.updateEntity({ ...actionData }, loggedInUser);
138
+
139
+ if (!action) {
140
+ throw new Error('Action not found or could not be updated');
141
+ }
142
+
143
+ const stageMapID = await this.dataSource.query(
144
+ `SELECT id FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type = 'WFSA'`,
145
+ [action.id],
146
+ );
147
+
148
+ let stageActionMappingData;
149
+
150
+ if (stageMapID.length > 0) {
151
+ // Update existing mapping
152
+ const stageActionMapping = {
153
+ id: stageMapID[0].id,
154
+ action_id: action.id,
155
+ stage_id,
156
+ entity_type: 'WFSA',
157
+ } as any;
158
+
159
+ stageActionMappingData = await super.updateEntity(
160
+ stageActionMapping,
161
+ loggedInUser,
162
+ );
163
+ } else {
164
+ // Create new mapping
165
+ const newStageMapping = {
166
+ action_id: action.id,
167
+ stage_id,
168
+ entity_type: 'WFSA',
169
+ organization_id: entityData.organization_id,
170
+ } as any;
171
+
172
+ stageActionMappingData = await super.createEntity(
173
+ newStageMapping,
174
+ loggedInUser,
175
+ );
176
+ }
177
+
178
+ // delete existing template mappings for this action
179
+ await this.dataSource.query(
180
+ `DELETE FROM frm_wf_action_resources_mapping WHERE stg_act_mapping_id = $1 AND type = 'template'`,
181
+ [stageActionMappingData.id],
182
+ );
183
+
184
+ // Handle template mapping (using the extracted template)
185
+ if (Array.isArray(template) && template.length > 0) {
186
+ for (let i = 0; i < template.length; i++) {
187
+ const templateCode = template[i];
188
+
189
+ // Create Action-Template Mapping
190
+ const resourceMapping = {
191
+ stg_act_mapping_id: stageActionMappingData.id,
192
+ template_code: templateCode,
193
+ type: 'template',
194
+ entity_type: 'WFAR',
195
+ } as any;
196
+
197
+ const res = await super.createEntity(resourceMapping, loggedInUser);
198
+ console.log(res);
199
+ }
200
+ }
201
+
202
+ await this.dataSource.query(
203
+ `DELETE FROM frm_wf_action_resources_mapping WHERE stg_act_mapping_id = $1 AND type = 'form'`,
204
+ [stageActionMappingData.id],
205
+ );
206
+
207
+ if (form) {
208
+ const resourceMapping = {
209
+ stg_act_mapping_id: stageActionMappingData.id,
210
+ form_id: form,
211
+ type: 'form',
212
+ entity_type: 'WFAR',
213
+ } as any;
214
+
215
+ await super.createEntity(resourceMapping, loggedInUser);
216
+ }
217
+ return action; // Return the action entity instead of actionData
218
+ }
219
+
220
+ async deleteEntity(
221
+ entityType: string,
222
+ id: number,
223
+ loggedInUser: UserData,
224
+ ): Promise<any> {
225
+ await this.dataSource.query(
226
+ `DELETE FROM frm_wf_action_template_mapping WHERE stg_act_mapping_id IN (SELECT
227
+ id FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type = 'WFSA')`,
228
+ [id],
229
+ );
230
+
231
+ await this.dataSource.query(
232
+ `DELETE FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type ='WFSA'`,
233
+ [id],
234
+ );
235
+
236
+ const deleteAction = await super.deleteEntity(entityType, id, loggedInUser);
237
+
238
+ return deleteAction;
239
+ }
240
+
241
+ async getReasonCode(loggedInUser: UserData): Promise<any> {
242
+ return this.actionRepository.getReasonCode(loggedInUser);
243
+ }
244
+
245
+ async defaultReasonCode(list_type: string, loggedInUser: UserData) {
246
+ return this.actionRepository.defaultReasonCode(list_type, loggedInUser);
247
+ }
248
+
249
+ async getActions(loggedInUser: UserData, stage_id: number) {
250
+ return this.actionRepository.getActions(loggedInUser, stage_id);
251
+ }
252
+
253
+ async getDependentActions(
254
+ loggedInUser: UserData,
255
+ stage_id: number,
256
+ action_id: number | undefined,
257
+ ) {
258
+ return this.actionRepository.getDependentActions(
259
+ loggedInUser,
260
+ stage_id,
261
+ action_id,
262
+ );
263
+ }
264
+
265
+ async getAction(
266
+ loggedInUser: UserData,
267
+ stage_id: number,
268
+ mapped_entity_id: number,
269
+ mapped_entity_type: string,
270
+ ) {
271
+ const { organization_id } = loggedInUser;
272
+ return this.actionRepository.getAction(
273
+ organization_id,
274
+ stage_id,
275
+ mapped_entity_id,
276
+ mapped_entity_type,
277
+ );
278
+ }
279
+ }