rez_core 3.1.155 → 3.1.157

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