rez_core 3.1.139 → 3.1.142

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 (383) 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/integration/examples/usage.example.js +9 -9
  22. package/dist/module/integration/service/integration.service.js +1 -1
  23. package/dist/module/integration/service/wrapper.service.d.ts +1 -6
  24. package/dist/module/integration/service/wrapper.service.js +28 -31
  25. package/dist/module/integration/service/wrapper.service.js.map +1 -1
  26. package/dist/module/listmaster/service/list-master-item.service.js +2 -2
  27. package/dist/module/listmaster/service/list-master.service.js +2 -2
  28. package/dist/module/mapper/service/field-mapper.service.js +4 -4
  29. package/dist/module/mapper/service/mapper.service.js +2 -2
  30. package/dist/module/meta/service/entity-dynamic.service.js +18 -18
  31. package/dist/module/meta/service/entity-list.service.js +3 -3
  32. package/dist/module/meta/service/entity-master.service.js +3 -3
  33. package/dist/module/meta/service/entity-relation.service.js +11 -11
  34. package/dist/module/meta/service/entity-service-impl.service.js +3 -3
  35. package/dist/module/meta/service/resolver.service.js +3 -3
  36. package/dist/module/module/repository/menu.repository.js +12 -12
  37. package/dist/module/notification/service/notification.service.js +12 -12
  38. package/dist/module/user/controller/login.controller.js +18 -18
  39. package/dist/module/user/service/role.service.js +4 -4
  40. package/dist/module/user/service/user-session.service.js +2 -2
  41. package/dist/module/workflow/repository/action.repository.js +16 -16
  42. package/dist/module/workflow/repository/comm-template.repository.js +10 -8
  43. package/dist/module/workflow/repository/comm-template.repository.js.map +1 -1
  44. package/dist/module/workflow/repository/form-master.repository.js +2 -2
  45. package/dist/module/workflow/repository/stage-group.repository.js +23 -23
  46. package/dist/module/workflow/repository/stage-movement.repository.js +11 -11
  47. package/dist/module/workflow/repository/stage.repository.js +8 -8
  48. package/dist/module/workflow/service/action-template-mapping.service.js +10 -10
  49. package/dist/module/workflow/service/action.service.js +7 -7
  50. package/dist/module/workflow/service/entity-modification.service.js +6 -6
  51. package/dist/module/workflow/service/stage-group.service.js +5 -5
  52. package/dist/module/workflow/service/stage.service.js +2 -2
  53. package/dist/module/workflow/service/task.service.js +33 -33
  54. package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
  55. package/dist/module/workflow/service/workflow-meta.service.js +50 -50
  56. package/dist/module/workflow/service/workflow.service.js +2 -2
  57. package/dist/tsconfig.build.tsbuildinfo +1 -1
  58. package/dist/utils/service/reflection-helper.service.js +2 -2
  59. package/docs/modules/event-driven-integration-design.md +91 -91
  60. package/docs/modules/integration.md +250 -250
  61. package/eslint.config.mjs +34 -34
  62. package/nest-cli.json +14 -14
  63. package/package.json +118 -118
  64. package/server.log +850 -0
  65. package/src/app.controller.ts +12 -12
  66. package/src/app.module.ts +49 -49
  67. package/src/app.service.ts +8 -8
  68. package/src/config/config.module.ts +18 -18
  69. package/src/config/database.config.ts +23 -23
  70. package/src/constant/global.constant.ts +67 -67
  71. package/src/core.module.ts +81 -81
  72. package/src/decorators/roles.decorator.ts +7 -7
  73. package/src/dtos/response.dto.ts +6 -6
  74. package/src/dtos/response.ts +5 -5
  75. package/src/index.ts +1 -1
  76. package/src/module/auth/auth.module.ts +49 -49
  77. package/src/module/auth/controller/auth.controller.ts +28 -28
  78. package/src/module/auth/guards/google-auth.guard.ts +9 -9
  79. package/src/module/auth/guards/jwt.guard.ts +22 -22
  80. package/src/module/auth/guards/role.guard.ts +68 -68
  81. package/src/module/auth/services/auth.service.ts +50 -50
  82. package/src/module/auth/services/jwt.service.ts +11 -11
  83. package/src/module/auth/strategies/google.strategy.ts +54 -54
  84. package/src/module/auth/strategies/jwt.strategy.ts +58 -58
  85. package/src/module/auth/strategies/local.strategy.ts +13 -13
  86. package/src/module/dashboard/controller/dashboard.controller.ts +36 -36
  87. package/src/module/dashboard/dashboard.module.ts +21 -21
  88. package/src/module/dashboard/entity/dashboard_page_data.entity.ts +27 -27
  89. package/src/module/dashboard/entity/widget_master.entity.ts +18 -18
  90. package/src/module/dashboard/repository/dashboard.repository.ts +42 -42
  91. package/src/module/dashboard/service/dashboard.service.ts +73 -73
  92. package/src/module/dev/dev.module.ts +12 -12
  93. package/src/module/dev/service/dev.service.ts +7 -7
  94. package/src/module/enterprise/controller/organization.controller.ts +36 -36
  95. package/src/module/enterprise/enterprise.module.ts +30 -30
  96. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  97. package/src/module/enterprise/entity/organization-app-mapping.entity.ts +13 -13
  98. package/src/module/enterprise/entity/organization.entity.ts +92 -92
  99. package/src/module/enterprise/repository/enterprise.repository.ts +31 -31
  100. package/src/module/enterprise/repository/organization.repository.ts +26 -26
  101. package/src/module/enterprise/repository/school.repository.ts +282 -282
  102. package/src/module/enterprise/service/brand.service.ts +5 -5
  103. package/src/module/enterprise/service/enterprise.service.ts +16 -16
  104. package/src/module/enterprise/service/organization-app-mapping.service.ts +4 -4
  105. package/src/module/enterprise/service/organization.service.ts +145 -145
  106. package/src/module/filter/controller/filter.controller.ts +84 -84
  107. package/src/module/filter/dto/filter-request.dto.ts +38 -38
  108. package/src/module/filter/entity/saved-filter-detail.entity.ts +41 -41
  109. package/src/module/filter/entity/saved-filter-master.entity.ts +23 -23
  110. package/src/module/filter/filter.module.ts +31 -31
  111. package/src/module/filter/repository/saved-filter.repository.ts +168 -168
  112. package/src/module/filter/service/filter-evaluator.service.ts +86 -86
  113. package/src/module/filter/service/filter.service.ts +841 -841
  114. package/src/module/filter/service/saved-filter.service.ts +170 -170
  115. package/src/module/ics/controller/ics.controller.ts +21 -21
  116. package/src/module/ics/dto/ics.dto.ts +55 -55
  117. package/src/module/ics/ics.module.ts +13 -13
  118. package/src/module/ics/service/ics.service.ts +60 -60
  119. package/src/module/integration/controller/calender-event.controller.ts +31 -31
  120. package/src/module/integration/controller/integration.controller.ts +662 -662
  121. package/src/module/integration/controller/wrapper.controller.ts +39 -39
  122. package/src/module/integration/dto/create-config.dto.ts +526 -526
  123. package/src/module/integration/entity/integration-config.entity.ts +112 -112
  124. package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
  125. package/src/module/integration/entity/integration-source.entity.ts +17 -17
  126. package/src/module/integration/entity/user-integration.entity.ts +70 -70
  127. package/src/module/integration/examples/usage.example.ts +338 -338
  128. package/src/module/integration/factories/base.factory.ts +7 -7
  129. package/src/module/integration/factories/email.factory.ts +49 -49
  130. package/src/module/integration/factories/integration.factory.ts +121 -121
  131. package/src/module/integration/factories/sms.factory.ts +51 -51
  132. package/src/module/integration/factories/telephone.factory.ts +41 -41
  133. package/src/module/integration/factories/whatsapp.factory.ts +56 -56
  134. package/src/module/integration/integration.module.ts +110 -110
  135. package/src/module/integration/service/calendar-event.service.ts +118 -118
  136. package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
  137. package/src/module/integration/service/integration-queue.service.ts +229 -229
  138. package/src/module/integration/service/integration.service.ts +2558 -2558
  139. package/src/module/integration/service/oauth.service.ts +224 -224
  140. package/src/module/integration/service/wrapper.service.ts +512 -515
  141. package/src/module/integration/strategies/email/gmail-api.strategy.ts +288 -288
  142. package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
  143. package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
  144. package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +262 -262
  145. package/src/module/integration/strategies/integration.strategy.ts +97 -97
  146. package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
  147. package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
  148. package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
  149. package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -238
  150. package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -210
  151. package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
  152. package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +372 -372
  153. package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
  154. package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
  155. package/src/module/layout/controller/layout.controller.ts +47 -47
  156. package/src/module/layout/entity/header-items.entity.ts +28 -28
  157. package/src/module/layout/entity/header-section.entity.ts +19 -19
  158. package/src/module/layout/layout.module.ts +21 -21
  159. package/src/module/layout/repository/header-items.repository.ts +18 -18
  160. package/src/module/layout/repository/header-section.repository.ts +22 -22
  161. package/src/module/layout/service/header-section.service.ts +25 -25
  162. package/src/module/layout_preference/controller/layout_preference.controller.ts +47 -47
  163. package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
  164. package/src/module/layout_preference/layout_preference.module.ts +18 -18
  165. package/src/module/layout_preference/repository/layout_preference.repository.ts +30 -30
  166. package/src/module/layout_preference/service/layout_preference.service.ts +172 -172
  167. package/src/module/lead/controller/lead.controller.ts +30 -30
  168. package/src/module/lead/lead.module.ts +14 -14
  169. package/src/module/lead/repository/lead.repository.ts +41 -41
  170. package/src/module/lead/service/lead.service.ts +54 -54
  171. package/src/module/listmaster/controller/list-master.controller.ts +143 -143
  172. package/src/module/listmaster/entity/list-master-items.entity.ts +41 -41
  173. package/src/module/listmaster/entity/list-master.entity.ts +32 -32
  174. package/src/module/listmaster/listmaster.module.ts +30 -30
  175. package/src/module/listmaster/repository/list-master-items.repository.ts +169 -169
  176. package/src/module/listmaster/repository/list-master.repository.ts +46 -46
  177. package/src/module/listmaster/service/list-master-item.service.ts +292 -292
  178. package/src/module/listmaster/service/list-master.service.ts +360 -360
  179. package/src/module/mapper/controller/field-mapper.controller.ts +69 -69
  180. package/src/module/mapper/controller/mapper.controller.ts +14 -14
  181. package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
  182. package/src/module/mapper/entity/field-lovs.entity.ts +20 -20
  183. package/src/module/mapper/entity/field-mapper.entity.ts +37 -37
  184. package/src/module/mapper/entity/mapper.entity.ts +17 -17
  185. package/src/module/mapper/mapper.module.ts +34 -34
  186. package/src/module/mapper/repository/field-lovs.repository.ts +35 -35
  187. package/src/module/mapper/repository/field-mapper.repository.ts +42 -42
  188. package/src/module/mapper/repository/mapper.repository.ts +15 -15
  189. package/src/module/mapper/service/field-mapper.service.ts +223 -223
  190. package/src/module/mapper/service/mapper.service.ts +72 -72
  191. package/src/module/master/controller/master.controller.ts +74 -74
  192. package/src/module/master/service/master.service.ts +486 -486
  193. package/src/module/meta/controller/app-master.controller.ts +38 -38
  194. package/src/module/meta/controller/attribute-master.controller.ts +66 -66
  195. package/src/module/meta/controller/entity-dynamic.controller.ts +125 -125
  196. package/src/module/meta/controller/entity-master.controller.ts +28 -28
  197. package/src/module/meta/controller/entity-relation.controller.ts +36 -36
  198. package/src/module/meta/controller/entity.controller.ts +385 -385
  199. package/src/module/meta/controller/media.controller.ts +82 -82
  200. package/src/module/meta/controller/meta.controller.ts +96 -96
  201. package/src/module/meta/controller/view-master.controller.ts +86 -86
  202. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  203. package/src/module/meta/dto/entity-tab.dto.ts +4 -4
  204. package/src/module/meta/dto/entity-table.dto.ts +9 -9
  205. package/src/module/meta/entity/app-master.entity.ts +34 -34
  206. package/src/module/meta/entity/attribute-master.entity.ts +87 -87
  207. package/src/module/meta/entity/base-entity.entity.ts +75 -75
  208. package/src/module/meta/entity/entity-master.entity.ts +78 -78
  209. package/src/module/meta/entity/entity-relation-data.entity.ts +29 -29
  210. package/src/module/meta/entity/entity-relation.entity.ts +23 -23
  211. package/src/module/meta/entity/entity-table-column.entity.ts +61 -61
  212. package/src/module/meta/entity/entity-table.entity.ts +50 -50
  213. package/src/module/meta/entity/media-data.entity.ts +32 -32
  214. package/src/module/meta/entity/preference.entity.ts +62 -62
  215. package/src/module/meta/entity/view-master.entity.ts +41 -41
  216. package/src/module/meta/entity.module.ts +156 -156
  217. package/src/module/meta/repository/app-master.repository.ts +20 -20
  218. package/src/module/meta/repository/attribute-master.repository.ts +110 -110
  219. package/src/module/meta/repository/entity-master.repository.ts +66 -66
  220. package/src/module/meta/repository/entity-table-column.repository.ts +39 -39
  221. package/src/module/meta/repository/entity-table.repository.ts +53 -53
  222. package/src/module/meta/repository/media-data.repository.ts +50 -50
  223. package/src/module/meta/repository/preference.repository.ts +20 -20
  224. package/src/module/meta/repository/user-app-mapping.repository.ts +28 -28
  225. package/src/module/meta/repository/view-master.repository.ts +42 -42
  226. package/src/module/meta/service/app-master.service.ts +37 -37
  227. package/src/module/meta/service/attribute-master.service.ts +117 -117
  228. package/src/module/meta/service/common.service.ts +9 -9
  229. package/src/module/meta/service/entity-dynamic.service.ts +762 -762
  230. package/src/module/meta/service/entity-list.service.ts +205 -205
  231. package/src/module/meta/service/entity-master.service.ts +164 -164
  232. package/src/module/meta/service/entity-realation-data.service.ts +9 -9
  233. package/src/module/meta/service/entity-relation.service.ts +69 -69
  234. package/src/module/meta/service/entity-service-impl.service.ts +524 -524
  235. package/src/module/meta/service/entity-table-column.service.ts +39 -39
  236. package/src/module/meta/service/entity-table.service.ts +150 -150
  237. package/src/module/meta/service/entity-validation.service.ts +185 -185
  238. package/src/module/meta/service/entity.service.ts +67 -67
  239. package/src/module/meta/service/field-group.service.ts +103 -103
  240. package/src/module/meta/service/media-data.service.ts +140 -140
  241. package/src/module/meta/service/populate-meta.service.ts +174 -174
  242. package/src/module/meta/service/preference.service.ts +16 -16
  243. package/src/module/meta/service/resolver.service.ts +271 -271
  244. package/src/module/meta/service/section-master.service.ts +104 -104
  245. package/src/module/meta/service/update-form-json.service.ts +22 -22
  246. package/src/module/meta/service/user-app-mapping.service.ts +17 -17
  247. package/src/module/meta/service/view-master.service.ts +111 -111
  248. package/src/module/module/controller/menu.controller.ts +15 -15
  249. package/src/module/module/controller/module-access.controller.ts +132 -132
  250. package/src/module/module/entity/menu.entity.ts +43 -43
  251. package/src/module/module/entity/module-access.entity.ts +25 -25
  252. package/src/module/module/entity/module-action.entity.ts +17 -17
  253. package/src/module/module/entity/module.entity.ts +52 -52
  254. package/src/module/module/module.module.ts +42 -42
  255. package/src/module/module/repository/menu.repository.ts +184 -184
  256. package/src/module/module/repository/module-access.repository.ts +327 -327
  257. package/src/module/module/service/menu.service.ts +82 -82
  258. package/src/module/module/service/module-access.service.ts +209 -209
  259. package/src/module/notification/controller/notification.controller.ts +58 -58
  260. package/src/module/notification/controller/otp.controller.ts +117 -117
  261. package/src/module/notification/entity/notification.entity.ts +23 -23
  262. package/src/module/notification/entity/otp.entity.ts +28 -28
  263. package/src/module/notification/firebase-admin.config.ts +22 -22
  264. package/src/module/notification/notification.module.ts +69 -69
  265. package/src/module/notification/repository/otp.repository.ts +27 -27
  266. package/src/module/notification/service/email.service.ts +127 -127
  267. package/src/module/notification/service/notification.service.ts +138 -138
  268. package/src/module/notification/service/otp.service.ts +121 -121
  269. package/src/module/third-party-module/entity/third-party-api-registry.entity.ts +52 -52
  270. package/src/module/third-party-module/repository/third-party-api-registry.repository.ts +20 -20
  271. package/src/module/third-party-module/service/api-registry.service.ts +13 -13
  272. package/src/module/third-party-module/third-party.module.ts +12 -12
  273. package/src/module/user/controller/login.controller.ts +197 -197
  274. package/src/module/user/controller/user.controller.ts +40 -40
  275. package/src/module/user/dto/create-user.dto.ts +62 -62
  276. package/src/module/user/dto/update-user.dto.ts +4 -4
  277. package/src/module/user/entity/role.entity.ts +33 -33
  278. package/src/module/user/entity/user-role-mapping.entity.ts +38 -38
  279. package/src/module/user/entity/user-session.entity.ts +61 -61
  280. package/src/module/user/entity/user.entity.ts +68 -68
  281. package/src/module/user/repository/role.repository.ts +96 -96
  282. package/src/module/user/repository/user-role-mapping.repository.ts +126 -126
  283. package/src/module/user/repository/user.repository.ts +50 -50
  284. package/src/module/user/repository/userSession.repository.ts +33 -33
  285. package/src/module/user/service/login.service.ts +280 -280
  286. package/src/module/user/service/role.service.ts +189 -189
  287. package/src/module/user/service/user-role-mapping.service.ts +98 -98
  288. package/src/module/user/service/user-session.service.ts +168 -168
  289. package/src/module/user/service/user.service.ts +353 -353
  290. package/src/module/user/user.module.ts +65 -65
  291. package/src/module/workflow/controller/action-category.controller.ts +54 -54
  292. package/src/module/workflow/controller/action-resource-mapping.controller.ts +23 -23
  293. package/src/module/workflow/controller/action-template-mapping.controller.ts +35 -35
  294. package/src/module/workflow/controller/action.controller.ts +95 -95
  295. package/src/module/workflow/controller/activity-log.controller.ts +55 -55
  296. package/src/module/workflow/controller/comm-template.controller.ts +34 -34
  297. package/src/module/workflow/controller/entity-modification.controller.ts +35 -35
  298. package/src/module/workflow/controller/form-master.controller.ts +43 -43
  299. package/src/module/workflow/controller/stage-group.controller.ts +48 -48
  300. package/src/module/workflow/controller/stage.controller.ts +50 -50
  301. package/src/module/workflow/controller/task.controller.ts +77 -77
  302. package/src/module/workflow/controller/workflow-list-master.controller.ts +44 -44
  303. package/src/module/workflow/controller/workflow-meta.controller.ts +80 -80
  304. package/src/module/workflow/controller/workflow.controller.ts +67 -67
  305. package/src/module/workflow/entity/action-category.entity.ts +38 -38
  306. package/src/module/workflow/entity/action-data.entity.ts +55 -55
  307. package/src/module/workflow/entity/action-resources-mapping.entity.ts +29 -29
  308. package/src/module/workflow/entity/action-template-mapping.entity.ts +17 -17
  309. package/src/module/workflow/entity/action.entity.ts +50 -50
  310. package/src/module/workflow/entity/activity-log.entity.ts +43 -43
  311. package/src/module/workflow/entity/comm-template.entity.ts +43 -43
  312. package/src/module/workflow/entity/entity-modification.entity.ts +38 -38
  313. package/src/module/workflow/entity/form-master.entity.ts +27 -27
  314. package/src/module/workflow/entity/form.entity.ts +25 -25
  315. package/src/module/workflow/entity/stage-action-mapping.entity.ts +17 -17
  316. package/src/module/workflow/entity/stage-group.entity.ts +23 -23
  317. package/src/module/workflow/entity/stage-movement-data.entity.ts +38 -38
  318. package/src/module/workflow/entity/stage.entity.ts +20 -20
  319. package/src/module/workflow/entity/task-data.entity.ts +88 -88
  320. package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
  321. package/src/module/workflow/entity/workflow-data.entity.ts +11 -11
  322. package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
  323. package/src/module/workflow/entity/workflow.entity.ts +20 -20
  324. package/src/module/workflow/repository/action-category.repository.ts +79 -79
  325. package/src/module/workflow/repository/action-data.repository.ts +219 -219
  326. package/src/module/workflow/repository/action.repository.ts +277 -277
  327. package/src/module/workflow/repository/activity-log.repository.ts +121 -121
  328. package/src/module/workflow/repository/comm-template.repository.ts +142 -142
  329. package/src/module/workflow/repository/form-master.repository.ts +61 -61
  330. package/src/module/workflow/repository/stage-group.repository.ts +176 -176
  331. package/src/module/workflow/repository/stage-movement.repository.ts +227 -227
  332. package/src/module/workflow/repository/stage.repository.ts +172 -172
  333. package/src/module/workflow/repository/task.repository.ts +113 -113
  334. package/src/module/workflow/repository/workflow.repository.ts +42 -42
  335. package/src/module/workflow/service/action-category.service.ts +33 -33
  336. package/src/module/workflow/service/action-data.service.ts +62 -62
  337. package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
  338. package/src/module/workflow/service/action-template-mapping.service.ts +55 -55
  339. package/src/module/workflow/service/action.service.ts +247 -247
  340. package/src/module/workflow/service/activity-log.service.ts +107 -107
  341. package/src/module/workflow/service/comm-template.service.ts +121 -121
  342. package/src/module/workflow/service/entity-modification.service.ts +67 -67
  343. package/src/module/workflow/service/form-master.service.ts +35 -35
  344. package/src/module/workflow/service/populate-workflow.service.ts +303 -303
  345. package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
  346. package/src/module/workflow/service/stage-group.service.ts +300 -300
  347. package/src/module/workflow/service/stage.service.ts +199 -199
  348. package/src/module/workflow/service/task.service.ts +504 -504
  349. package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
  350. package/src/module/workflow/service/workflow-meta.service.ts +581 -581
  351. package/src/module/workflow/service/workflow.service.ts +205 -205
  352. package/src/module/workflow/workflow.module.ts +176 -176
  353. package/src/module/workflow-automation/controller/workflow-automation.controller.ts +21 -21
  354. package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
  355. package/src/module/workflow-automation/entity/workflow-automation.entity.ts +35 -35
  356. package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
  357. package/src/module/workflow-automation/interface/action.interface.ts +5 -5
  358. package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
  359. package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +214 -214
  360. package/src/module/workflow-automation/service/workflow-automation.service.ts +345 -345
  361. package/src/module/workflow-automation/workflow-automation.module.ts +34 -34
  362. package/src/resources/dev.properties.yaml +30 -30
  363. package/src/resources/local.properties.yaml +23 -23
  364. package/src/resources/properties.module.ts +12 -12
  365. package/src/resources/properties.yaml.ts +11 -11
  366. package/src/resources/uat.properties.yaml +15 -15
  367. package/src/utils/dto/excel-data.dto.ts +14 -14
  368. package/src/utils/dto/excelsheet-data.dto.ts +5 -5
  369. package/src/utils/service/base64util.service.ts +18 -18
  370. package/src/utils/service/clockIDGenUtil.service.ts +21 -21
  371. package/src/utils/service/codeGenerator.service.ts +22 -22
  372. package/src/utils/service/dateUtil.service.ts +17 -17
  373. package/src/utils/service/encryptUtil.service.ts +97 -97
  374. package/src/utils/service/excel-helper.service.ts +72 -72
  375. package/src/utils/service/excelUtil.service.ts +15 -15
  376. package/src/utils/service/file-util.service.ts +11 -11
  377. package/src/utils/service/json-util.service.ts +23 -23
  378. package/src/utils/service/loggingUtil.service.ts +34 -34
  379. package/src/utils/service/reflection-helper.service.ts +62 -62
  380. package/src/utils/service/wbsCodeGen.service.ts +8 -8
  381. package/src/utils/utils.module.ts +25 -25
  382. package/tsconfig.build.json +4 -4
  383. package/tsconfig.json +24 -24
@@ -24,10 +24,10 @@ let ActionRepository = class ActionRepository {
24
24
  }
25
25
  async getReasonCode(loggedInUser) {
26
26
  const { organization_id } = loggedInUser;
27
- const result = await this.dataSource.query(`
28
- SELECT name, type
29
- FROM cr_list_master
30
- WHERE organization_id = ? AND source = 'master'
27
+ const result = await this.dataSource.query(`
28
+ SELECT name, type
29
+ FROM cr_list_master
30
+ WHERE organization_id = ? AND source = 'master'
31
31
  `, [organization_id]);
32
32
  const formatted = result.map((item) => ({
33
33
  label: item.name,
@@ -40,10 +40,10 @@ let ActionRepository = class ActionRepository {
40
40
  if (!list_type) {
41
41
  throw new common_1.BadRequestException('list_type is required');
42
42
  }
43
- const result = await this.dataSource.query(`
44
- SELECT name, id
45
- FROM cr_list_master_items
46
- WHERE listtype = ? AND organization_id = ?
43
+ const result = await this.dataSource.query(`
44
+ SELECT name, id
45
+ FROM cr_list_master_items
46
+ WHERE listtype = ? AND organization_id = ?
47
47
  `, [list_type, organization_id]);
48
48
  return result.map((row) => ({
49
49
  label: row.name,
@@ -52,19 +52,19 @@ let ActionRepository = class ActionRepository {
52
52
  }
53
53
  async getActions(loggedInUser, stage_id) {
54
54
  const { organization_id } = loggedInUser;
55
- const stageActions = await this.dataSource.query(`
56
- SELECT id, action_id
57
- FROM cr_wf_stage_action_mapping
58
- WHERE stage_id = ?
55
+ const stageActions = await this.dataSource.query(`
56
+ SELECT id, action_id
57
+ FROM cr_wf_stage_action_mapping
58
+ WHERE stage_id = ?
59
59
  `, [stage_id]);
60
60
  if (!stageActions?.length)
61
61
  return [];
62
62
  const actionIds = stageActions.map((sa) => sa.action_id);
63
63
  const mappingIds = stageActions.map((sa) => sa.id);
64
- const templateMappings = await this.dataSource.query(`
65
- SELECT stg_act_mapping_id, template_code
66
- FROM cr_wf_action_template_mapping
67
- WHERE stg_act_mapping_id IN (${mappingIds.map(() => '?').join(',')})
64
+ const templateMappings = await this.dataSource.query(`
65
+ SELECT stg_act_mapping_id, template_code
66
+ FROM cr_wf_action_template_mapping
67
+ WHERE stg_act_mapping_id IN (${mappingIds.map(() => '?').join(',')})
68
68
  `, mappingIds);
69
69
  const templateCodes = templateMappings.map((tm) => tm.template_code);
70
70
  const templateCodeToName = {};
@@ -27,24 +27,26 @@ let CommTemplateRepository = class CommTemplateRepository {
27
27
  this.dataSource = dataSource;
28
28
  }
29
29
  async getAllCommTemplate(entity_type, action_id, loggedInUser) {
30
- const { organization_id } = loggedInUser;
30
+ const { organization_id, level_id, level_type } = loggedInUser;
31
31
  let is_template;
32
32
  if (action_id) {
33
- const [actionResult] = await this.dataSource.query(`SELECT is_template
34
- FROM cr_wf_action
35
- WHERE id = ? AND organization_id = ?
33
+ const [actionResult] = await this.dataSource.query(`SELECT is_template
34
+ FROM cr_wf_action
35
+ WHERE id = ? AND organization_id = ?
36
36
  LIMIT 1`, [action_id, organization_id]);
37
37
  if (!actionResult) {
38
38
  throw new Error('Invalid action_id');
39
39
  }
40
40
  is_template = actionResult.is_template;
41
- await this.dataSource.query(`UPDATE cr_wf_comm_template
42
- SET is_template = ?
43
- WHERE mapped_entity_type = ?
44
- AND organization_id = ?`, [is_template, entity_type, organization_id]);
41
+ await this.dataSource.query(`UPDATE cr_wf_comm_template
42
+ SET is_template = ?
43
+ WHERE mapped_entity_type = ?
44
+ AND organization_id = ? AND level_id = ? AND level_type=?`, [is_template, entity_type, organization_id, level_id, level_type]);
45
45
  }
46
46
  const whereCondition = {
47
47
  organization_id,
48
+ level_id,
49
+ level_type,
48
50
  };
49
51
  if (typeof is_template !== 'undefined') {
50
52
  whereCondition.is_template = is_template;
@@ -1 +1 @@
1
- {"version":3,"file":"comm-template.repository.js","sourceRoot":"","sources":["../../../../src/module/workflow/repository/comm-template.repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comm-template.repository.js","sourceRoot":"","sources":["../../../../src/module/workflow/repository/comm-template.repository.ts"],"names":[],"mappings":"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"}
@@ -25,8 +25,8 @@ let FormMasterRepository = class FormMasterRepository {
25
25
  this.formRepo = formRepo;
26
26
  }
27
27
  async getForms(organization_id, source_entity_type) {
28
- const forms = await this.dataSource.query(`SELECT fm.id as fm_id, fm.name as fm_form_name
29
- FROM cr_view_master fm
28
+ const forms = await this.dataSource.query(`SELECT fm.id as fm_id, fm.name as fm_form_name
29
+ FROM cr_view_master fm
30
30
  WHERE fm.organization_id = ? AND fm.mapped_entity_type = ?`, [organization_id, source_entity_type]);
31
31
  const formatted = forms.map((form) => ({
32
32
  label: form.fm_form_name,
@@ -67,33 +67,33 @@ let StageGroupRepository = class StageGroupRepository {
67
67
  if (!stageGroups.length)
68
68
  return [];
69
69
  const stageGroupIds = stageGroups.map((sg) => sg.id);
70
- const stagesRaw = await this.dataSource.query(`
71
- SELECT
72
- cr_wf_stage.*
73
- FROM cr_wf_stage
74
- WHERE cr_wf_stage.stage_group_id IN (${stageGroupIds.map(() => '?').join(',')})
75
- AND cr_wf_stage.organization_id = ?
76
- ORDER BY cr_wf_stage.sequence ASC
70
+ const stagesRaw = await this.dataSource.query(`
71
+ SELECT
72
+ cr_wf_stage.*
73
+ FROM cr_wf_stage
74
+ WHERE cr_wf_stage.stage_group_id IN (${stageGroupIds.map(() => '?').join(',')})
75
+ AND cr_wf_stage.organization_id = ?
76
+ ORDER BY cr_wf_stage.sequence ASC
77
77
  `, [...stageGroupIds, loggedInUser.organization_id]);
78
78
  const stageIds = stagesRaw.map((s) => s.id);
79
- const taskCounts = await this.dataSource.query(`
80
- SELECT stage_id, COUNT(*) AS task_count
81
- FROM cr_wf_task_data
82
- WHERE stage_id IN (${stageIds.map(() => '?').join(',')}) AND is_system=0 AND mapped_entity_id = ?
83
- GROUP BY stage_id
79
+ const taskCounts = await this.dataSource.query(`
80
+ SELECT stage_id, COUNT(*) AS task_count
81
+ FROM cr_wf_task_data
82
+ WHERE stage_id IN (${stageIds.map(() => '?').join(',')}) AND is_system=0 AND mapped_entity_id = ?
83
+ GROUP BY stage_id
84
84
  `, [...stageIds, lead_id]);
85
- const meetingCounts = await this.dataSource.query(`
86
- SELECT stage_id, COUNT(*) AS meeting_count
87
- FROM crm_lead_meeting
88
- WHERE stage_id IN (${stageIds.map(() => '?').join(',')}) AND mapped_entity_id = ?
89
- GROUP BY stage_id
85
+ const meetingCounts = await this.dataSource.query(`
86
+ SELECT stage_id, COUNT(*) AS meeting_count
87
+ FROM crm_lead_meeting
88
+ WHERE stage_id IN (${stageIds.map(() => '?').join(',')}) AND mapped_entity_id = ?
89
+ GROUP BY stage_id
90
90
  `, [...stageIds, lead_id]);
91
- const sendCommCounts = await this.dataSource.query(`
92
- SELECT stage_id, COUNT(*) AS send_comm_count
93
- FROM crm_lead_communication
94
- WHERE stage_id IN (${stageIds.map(() => '?').join(',')}) AND mapped_entity_id = ?
95
- AND type IN ('SEND', 'LOG')
96
- GROUP BY stage_id
91
+ const sendCommCounts = await this.dataSource.query(`
92
+ SELECT stage_id, COUNT(*) AS send_comm_count
93
+ FROM crm_lead_communication
94
+ WHERE stage_id IN (${stageIds.map(() => '?').join(',')}) AND mapped_entity_id = ?
95
+ AND type IN ('SEND', 'LOG')
96
+ GROUP BY stage_id
97
97
  `, [...stageIds, lead_id]);
98
98
  const taskCountMap = new Map(taskCounts.map((row) => [Number(row.stage_id), Number(row.task_count)]));
99
99
  const meetingCountMap = new Map(meetingCounts.map((row) => [
@@ -107,17 +107,17 @@ let StageMovementRepository = class StageMovementRepository {
107
107
  return nextStageGroupFirstStage || null;
108
108
  }
109
109
  async getAllActionByStageId(stageId) {
110
- const result = await this.dataSource.query(`
111
- SELECT
112
- a.*,
113
- m.stage_id,
114
- ac.code AS action_category_code,
115
- arm.form_id
116
- FROM cr_wf_action a
117
- LEFT JOIN cr_wf_stage_action_mapping m ON a.id = m.action_id
118
- LEFT JOIN cr_wf_action_category ac ON a.action_category = ac.id
119
- LEFT JOIN cr_wf_action_resources_mapping arm ON m.id = arm.stg_act_mapping_id
120
- WHERE m.stage_id = ?
110
+ const result = await this.dataSource.query(`
111
+ SELECT
112
+ a.*,
113
+ m.stage_id,
114
+ ac.code AS action_category_code,
115
+ arm.form_id
116
+ FROM cr_wf_action a
117
+ LEFT JOIN cr_wf_stage_action_mapping m ON a.id = m.action_id
118
+ LEFT JOIN cr_wf_action_category ac ON a.action_category = ac.id
119
+ LEFT JOIN cr_wf_action_resources_mapping arm ON m.id = arm.stg_act_mapping_id
120
+ WHERE m.stage_id = ?
121
121
  `, [stageId]);
122
122
  return result;
123
123
  }
@@ -62,14 +62,14 @@ let StageRepository = class StageRepository {
62
62
  if (!stageGroup) {
63
63
  return [];
64
64
  }
65
- const rows = await this.dataSource.query(`
66
- SELECT
67
- g.id as stage_group_id, g.name as stage_group_name, g.workflow_id,
68
- s.*
69
- FROM cr_wf_stage_group g
70
- INNER JOIN cr_wf_stage s ON s.stage_group_id = g.id
71
- WHERE g.workflow_id = ? AND g.organization_id = ? AND g.id = ?
72
- ORDER BY g.id, s.id
65
+ const rows = await this.dataSource.query(`
66
+ SELECT
67
+ g.id as stage_group_id, g.name as stage_group_name, g.workflow_id,
68
+ s.*
69
+ FROM cr_wf_stage_group g
70
+ INNER JOIN cr_wf_stage s ON s.stage_group_id = g.id
71
+ WHERE g.workflow_id = ? AND g.organization_id = ? AND g.id = ?
72
+ ORDER BY g.id, s.id
73
73
  `, [stageGroup.workflow_id, organization_id, stage_group_id]);
74
74
  if (!rows || rows.length === 0) {
75
75
  return [];
@@ -19,16 +19,16 @@ let ActionTemplateMappingService = class ActionTemplateMappingService extends en
19
19
  this.dataSource = dataSource;
20
20
  }
21
21
  async getTemplateByMode(stage_id, action_id, mode, loggedInUser) {
22
- const stageAction = await this.dataSource.query(`
23
- SELECT id FROM cr_wf_stage_action_mapping
24
- WHERE stage_id = ? AND action_id = ?
22
+ const stageAction = await this.dataSource.query(`
23
+ SELECT id FROM cr_wf_stage_action_mapping
24
+ WHERE stage_id = ? AND action_id = ?
25
25
  `, [stage_id, action_id]);
26
26
  if (!stageAction?.length)
27
27
  return [];
28
28
  const stgActMappingId = stageAction[0].id;
29
- const templates = await this.dataSource.query(`
30
- SELECT template_code FROM cr_wf_action_resources_mapping
31
- WHERE stg_act_mapping_id = ?
29
+ const templates = await this.dataSource.query(`
30
+ SELECT template_code FROM cr_wf_action_resources_mapping
31
+ WHERE stg_act_mapping_id = ?
32
32
  `, [stgActMappingId]);
33
33
  const listMasterItemData = await this.dataSource.query(`SELECT code FROM cr_list_master_items WHERE id = ?`, [mode]);
34
34
  if (!listMasterItemData?.length)
@@ -36,10 +36,10 @@ let ActionTemplateMappingService = class ActionTemplateMappingService extends en
36
36
  const templateCodes = templates.map((t) => t.template_code);
37
37
  if (!templateCodes.length)
38
38
  return [];
39
- const commTemplates = await this.dataSource.query(`
40
- SELECT id, name
41
- FROM cr_wf_comm_template
42
- WHERE code IN (?) AND mode = ? AND organization_id = ?
39
+ const commTemplates = await this.dataSource.query(`
40
+ SELECT id, name
41
+ FROM cr_wf_comm_template
42
+ WHERE code IN (?) AND mode = ? AND organization_id = ?
43
43
  `, [templateCodes, listMasterItemData[0].code, loggedInUser.organization_id]);
44
44
  return commTemplates;
45
45
  }
@@ -25,12 +25,12 @@ let ActionService = class ActionService extends entity_service_impl_service_1.En
25
25
  if (!actionData) {
26
26
  return null;
27
27
  }
28
- const result = await this.dataSource.query(`SELECT template_code, form_id
29
- FROM cr_wf_action_resources_mapping
30
- WHERE stg_act_mapping_id IN (
31
- SELECT id
32
- FROM cr_wf_stage_action_mapping
33
- WHERE action_id = ? AND entity_type = 'WFSA'
28
+ const result = await this.dataSource.query(`SELECT template_code, form_id
29
+ FROM cr_wf_action_resources_mapping
30
+ WHERE stg_act_mapping_id IN (
31
+ SELECT id
32
+ FROM cr_wf_stage_action_mapping
33
+ WHERE action_id = ? AND entity_type = 'WFSA'
34
34
  )`, [actionData.id]);
35
35
  const templates = result
36
36
  .filter((t) => t.template_code !== null)
@@ -122,7 +122,7 @@ let ActionService = class ActionService extends entity_service_impl_service_1.En
122
122
  return action;
123
123
  }
124
124
  async deleteEntity(entityType, id, loggedInUser) {
125
- await this.dataSource.query(`DELETE FROM cr_wf_action_template_mapping WHERE stg_act_mapping_id IN (SELECT
125
+ await this.dataSource.query(`DELETE FROM cr_wf_action_template_mapping WHERE stg_act_mapping_id IN (SELECT
126
126
  id FROM cr_wf_stage_action_mapping WHERE action_id = ? AND entity_type = 'WFSA')`, [id]);
127
127
  await this.dataSource.query(`DELETE FROM cr_wf_stage_action_mapping WHERE action_id = ? AND entity_type ='WFSA'`, [id]);
128
128
  const deleteAction = await super.deleteEntity(entityType, id, loggedInUser);
@@ -24,17 +24,17 @@ let EntityModificationService = class EntityModificationService extends entity_s
24
24
  if (!mapped_entity_type || !mapped_entity_id || !attribute_key) {
25
25
  throw new common_1.BadRequestException('Missing required modification data: mapped_entity_type, mapped_entity_id, or attribute_key');
26
26
  }
27
- const [entityMeta] = await this.dataSource.query(`
28
- SELECT db_table_name
29
- FROM cr_entity_master
30
- WHERE mapped_entity_type = ? AND organization_id = ?
27
+ const [entityMeta] = await this.dataSource.query(`
28
+ SELECT db_table_name
29
+ FROM cr_entity_master
30
+ WHERE mapped_entity_type = ? AND organization_id = ?
31
31
  `, [mapped_entity_type, organization_id]);
32
32
  if (!entityMeta || !entityMeta.db_table_name) {
33
33
  throw new common_1.NotFoundException('Entity metadata not found in cr_entity_master');
34
34
  }
35
35
  const tableName = entityMeta.db_table_name;
36
- const [entityRow] = await this.dataSource.query(`
37
- SELECT * FROM ${tableName} WHERE id = ?
36
+ const [entityRow] = await this.dataSource.query(`
37
+ SELECT * FROM ${tableName} WHERE id = ?
38
38
  `, [mapped_entity_id]);
39
39
  if (!entityRow) {
40
40
  throw new common_1.NotFoundException(`No record found in ${tableName} with ID ${mapped_entity_id}`);
@@ -35,8 +35,8 @@ let StageGroupService = class StageGroupService extends entity_service_impl_serv
35
35
  }
36
36
  async getAllStageGroup(workflow_id, organization_id) {
37
37
  const allStageGroup = await this.stageGroupRepository.getAllStageGroup(workflow_id, organization_id);
38
- const statusListMaster = await this.dataSource.query(`SELECT id, name
39
- FROM cr_list_master_items
38
+ const statusListMaster = await this.dataSource.query(`SELECT id, name
39
+ FROM cr_list_master_items
40
40
  WHERE listtype = 'STS' AND organization_id = ?`, [organization_id]);
41
41
  const statusMap = new Map(statusListMaster.map((s) => [String(s.id), s.name]));
42
42
  for (const stage of allStageGroup) {
@@ -142,9 +142,9 @@ let StageGroupService = class StageGroupService extends entity_service_impl_serv
142
142
  return stageGroupAndStageHierarchy;
143
143
  }
144
144
  async getUserNameAndProfilePic(userId, loggedInUser) {
145
- const user = await this.dataSource.query(`SELECT eth_user_profile.name AS created_by_name,
146
- eth_user_profile.profile_image AS profile_image
147
- FROM eth_user_profile
145
+ const user = await this.dataSource.query(`SELECT eth_user_profile.name AS created_by_name,
146
+ eth_user_profile.profile_image AS profile_image
147
+ FROM eth_user_profile
148
148
  WHERE eth_user_profile.id = ?;`, [userId]);
149
149
  if (user.length === 0)
150
150
  return null;
@@ -35,8 +35,8 @@ let StageService = StageService_1 = class StageService extends entity_service_im
35
35
  async getAllStage(payload, organization_id, show_previous) {
36
36
  if (!show_previous) {
37
37
  const allStages = await this.stageRepository.getAllStage(payload.stage_group_id, organization_id);
38
- const statusListMaster = await this.dataSource.query(`SELECT id, name
39
- FROM cr_list_master_items
38
+ const statusListMaster = await this.dataSource.query(`SELECT id, name
39
+ FROM cr_list_master_items
40
40
  WHERE listtype = 'STS' AND organization_id = ?`, [organization_id]);
41
41
  const statusMap = new Map(statusListMaster.map((s) => [String(s.id), s.name]));
42
42
  for (const stage of allStages) {
@@ -35,10 +35,10 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
35
35
  async execute(payload) {
36
36
  const { entity, user, config } = payload;
37
37
  let toValue = null;
38
- const stageRow = await this.dataSource.query(`SELECT stage_id
39
- FROM cr_wf_stage_movement_data
40
- WHERE mapped_entity_id = ?
41
- AND is_current = 'Y'
38
+ const stageRow = await this.dataSource.query(`SELECT stage_id
39
+ FROM cr_wf_stage_movement_data
40
+ WHERE mapped_entity_id = ?
41
+ AND is_current = 'Y'
42
42
  LIMIT 1`, [entity.id]);
43
43
  const stageId = stageRow.length > 0 ? stageRow[0].stage_id : null;
44
44
  if (!stageId) {
@@ -93,13 +93,13 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
93
93
  return createdEntity;
94
94
  }
95
95
  async updateEntity(entityData, loggedInUser, appcode) {
96
- const taskStatusQuery = `
97
- SELECT name
98
- FROM cr_list_master_items
99
- WHERE id = ?
100
- AND organization_id = ?
101
- AND listtype = 'TKST'
102
- LIMIT 1;
96
+ const taskStatusQuery = `
97
+ SELECT name
98
+ FROM cr_list_master_items
99
+ WHERE id = ?
100
+ AND organization_id = ?
101
+ AND listtype = 'TKST'
102
+ LIMIT 1;
103
103
  `;
104
104
  const statusRows = await this.dataSource.query(taskStatusQuery, [
105
105
  entityData.status,
@@ -187,33 +187,33 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
187
187
  whereClauses.push(`t.is_done = ?`);
188
188
  params.push(0);
189
189
  }
190
- const sql = `
191
- SELECT
192
- t.*,
193
- sg.name AS stage_group_name,
194
- s.name AS stage_name,
195
- a.name AS action_name,
196
- u.name AS created_by_name,
197
- u2.name AS task_owner_name,
198
- u2.profile_image AS task_owner_profile
199
- FROM cr_wf_task_data t
200
- LEFT JOIN cr_wf_stage s ON t.stage_id = s.id
201
- LEFT JOIN cr_wf_stage_group sg ON s.stage_group_id = sg.id
202
- LEFT JOIN cr_wf_action a ON t.action_id = a.id
203
- LEFT JOIN cr_user u ON t.created_by = u.id
204
- LEFT JOIN eth_user_profile u2 ON t.task_owner = u2.parent_id
205
- WHERE ${whereClauses.join(' AND ')}
206
- ORDER BY t.created_date DESC
190
+ const sql = `
191
+ SELECT
192
+ t.*,
193
+ sg.name AS stage_group_name,
194
+ s.name AS stage_name,
195
+ a.name AS action_name,
196
+ u.name AS created_by_name,
197
+ u2.name AS task_owner_name,
198
+ u2.profile_image AS task_owner_profile
199
+ FROM cr_wf_task_data t
200
+ LEFT JOIN cr_wf_stage s ON t.stage_id = s.id
201
+ LEFT JOIN cr_wf_stage_group sg ON s.stage_group_id = sg.id
202
+ LEFT JOIN cr_wf_action a ON t.action_id = a.id
203
+ LEFT JOIN cr_user u ON t.created_by = u.id
204
+ LEFT JOIN eth_user_profile u2 ON t.task_owner = u2.parent_id
205
+ WHERE ${whereClauses.join(' AND ')}
206
+ ORDER BY t.created_date DESC
207
207
  `;
208
208
  const taskData = await this.dataSource.query(sql, params);
209
209
  if (taskData.length === 0) {
210
210
  return [];
211
211
  }
212
- const taskStatusQuery = `
213
- SELECT id, name
214
- FROM cr_list_master_items
215
- WHERE organization_id = ?
216
- AND listtype = 'TKST'
212
+ const taskStatusQuery = `
213
+ SELECT id, name
214
+ FROM cr_list_master_items
215
+ WHERE organization_id = ?
216
+ AND listtype = 'TKST'
217
217
  `;
218
218
  const taskAllStatus = await this.dataSource.query(taskStatusQuery, [
219
219
  loggedInUser.organization_id,
@@ -19,16 +19,16 @@ let WorkflowListMasterService = class WorkflowListMasterService extends entity_s
19
19
  this.dataSource = dataSource;
20
20
  }
21
21
  async getActionCategoryListByStageId(stageId) {
22
- const results = await this.dataSource.query(`
23
- SELECT
24
- ac.name AS name,
25
- ac.logo AS logo,
26
- ac.modalName AS modalName,
27
- a.action_requirement AS actionRequirement
28
- FROM cr_wf_stage_action_mapping sam
29
- JOIN cr_wf_action a ON sam.action_id = a.id
30
- JOIN cr_wf_action_category ac ON a.action_category = ac.id
31
- WHERE sam.stage_id = ?
22
+ const results = await this.dataSource.query(`
23
+ SELECT
24
+ ac.name AS name,
25
+ ac.logo AS logo,
26
+ ac.modalName AS modalName,
27
+ a.action_requirement AS actionRequirement
28
+ FROM cr_wf_stage_action_mapping sam
29
+ JOIN cr_wf_action a ON sam.action_id = a.id
30
+ JOIN cr_wf_action_category ac ON a.action_category = ac.id
31
+ WHERE sam.stage_id = ?
32
32
  `, [stageId]);
33
33
  return results.map((item) => ({
34
34
  name: item.name,
@@ -44,11 +44,11 @@ let WorkflowListMasterService = class WorkflowListMasterService extends entity_s
44
44
  }
45
45
  async getModes(loggedInUser) {
46
46
  const { organization_id } = loggedInUser;
47
- const modes = await this.dataSource.query(`
48
- SELECT id, name
49
- FROM cr_list_master_items
50
- WHERE listtype = 'MOD'
51
- AND organization_id = ?
47
+ const modes = await this.dataSource.query(`
48
+ SELECT id, name
49
+ FROM cr_list_master_items
50
+ WHERE listtype = 'MOD'
51
+ AND organization_id = ?
52
52
  `, [organization_id]);
53
53
  return modes;
54
54
  }
@@ -211,9 +211,9 @@ let WorkflowMetaService = class WorkflowMetaService extends entity_service_impl_
211
211
  action_id: entityData.action_id,
212
212
  }, loggedInUser);
213
213
  const leadData = await this.getEntityData('LEAD', lead_id, loggedInUser);
214
- const unassignedListMasterItemData = await this.dataSource.query(`SELECT name, id
215
- FROM cr_list_master_items
216
- WHERE listtype = "LEST" AND organization_id = ?
214
+ const unassignedListMasterItemData = await this.dataSource.query(`SELECT name, id
215
+ FROM cr_list_master_items
216
+ WHERE listtype = "LEST" AND organization_id = ?
217
217
  AND value IN (?, ?)`, [loggedInUser.organization_id, 'unassigned', 'active']);
218
218
  const unassignedId = unassignedListMasterItemData.find((item) => item.name.toLowerCase() === 'unassigned')?.id;
219
219
  const activeId = unassignedListMasterItemData.find((item) => item.name.toLowerCase() === 'active')?.id;
@@ -225,24 +225,24 @@ let WorkflowMetaService = class WorkflowMetaService extends entity_service_impl_
225
225
  status: leadData?.lead_status,
226
226
  lead_status: leadData?.lead_status,
227
227
  }, loggedInUser);
228
- await this.dataSource.query(`UPDATE cr_wf_action_data SET user_id =?
229
- WHERE mapped_entity_id=?
230
- AND mapped_entity_type = ?
231
- AND stage_id = ?
232
- AND (is_current = 'Y' OR is_current IS NULL)
228
+ await this.dataSource.query(`UPDATE cr_wf_action_data SET user_id =?
229
+ WHERE mapped_entity_id=?
230
+ AND mapped_entity_type = ?
231
+ AND stage_id = ?
232
+ AND (is_current = 'Y' OR is_current IS NULL)
233
233
  `, [lead_owner, lead_id, entity_type, stage_id]);
234
- await this.dataSource.query(`UPDATE crm_lead_meeting SET user_id=?
235
- WHERE stage_id = ?
236
- AND mapped_entity_id = ?
237
- AND mapped_entity_type = "LEAD"
238
- AND (status='scheduled' OR status='rescheduled')
234
+ await this.dataSource.query(`UPDATE crm_lead_meeting SET user_id=?
235
+ WHERE stage_id = ?
236
+ AND mapped_entity_id = ?
237
+ AND mapped_entity_type = "LEAD"
238
+ AND (status='scheduled' OR status='rescheduled')
239
239
  `, [lead_owner, stage_id, lead_id]);
240
- const taskRows = await this.dataSource.query(`SELECT id,status FROM cr_wf_task_data
241
- WHERE mapped_entity_id = ?
242
- AND mapped_entity_type = ?
240
+ const taskRows = await this.dataSource.query(`SELECT id,status FROM cr_wf_task_data
241
+ WHERE mapped_entity_id = ?
242
+ AND mapped_entity_type = ?
243
243
  AND stage_id = ?`, [lead_id, entity_type, stage_id]);
244
244
  for (const task of taskRows) {
245
- const statusRows = await this.dataSource.query(`SELECT value FROM cr_list_master_items
245
+ const statusRows = await this.dataSource.query(`SELECT value FROM cr_list_master_items
246
246
  WHERE id = ? AND organization_id = ?`, [task.status, loggedInUser.organization_id]);
247
247
  const statusName = statusRows[0]?.value?.toLowerCase() || '';
248
248
  if (['todo', 'in_progress'].includes(statusName) ||
@@ -272,49 +272,49 @@ let WorkflowMetaService = class WorkflowMetaService extends entity_service_impl_
272
272
  }
273
273
  async assignLead(loggedInUser, mapped_entity_id, mapped_entity_type, stage_id, actions) {
274
274
  const { organization_id, level_id, level_type } = loggedInUser;
275
- const owners = await this.dataSource.query(`
276
- SELECT DISTINCT u.id
277
- FROM cr_user u
278
- JOIN cr_user_role_mapping urm ON u.id = urm.user_id
279
- JOIN cr_role r ON urm.role_id = r.id
280
- JOIN cr_module_access ma ON ma.role_code = r.code
281
- WHERE urm.organization_id = ?
282
- AND urm.level_id = ?
283
- AND urm.level_type = ?
284
- AND urm.appcode = 'CRM'
285
- AND ma.appcode = 'CRM'
286
- AND ma.module_code = 'lead_crm_sch'
287
- AND ma.access_flag = 1
288
- AND ma.action_type = 'LEAD_OWNER'
289
- ORDER BY u.id ASC
275
+ const owners = await this.dataSource.query(`
276
+ SELECT DISTINCT u.id
277
+ FROM cr_user u
278
+ JOIN cr_user_role_mapping urm ON u.id = urm.user_id
279
+ JOIN cr_role r ON urm.role_id = r.id
280
+ JOIN cr_module_access ma ON ma.role_code = r.code
281
+ WHERE urm.organization_id = ?
282
+ AND urm.level_id = ?
283
+ AND urm.level_type = ?
284
+ AND urm.appcode = 'CRM'
285
+ AND ma.appcode = 'CRM'
286
+ AND ma.module_code = 'lead_crm_sch'
287
+ AND ma.access_flag = 1
288
+ AND ma.action_type = 'LEAD_OWNER'
289
+ ORDER BY u.id ASC
290
290
  `, [organization_id, Number(level_id), level_type]);
291
291
  if (!owners?.length)
292
292
  throw new Error('No eligible users found');
293
293
  const userIds = owners.map((o) => Number(o.id));
294
294
  const placeholders = userIds.map(() => '?').join(',');
295
- const lastRow = await this.dataSource.query(`
296
- SELECT lead_owner
297
- FROM crm_lead
298
- WHERE organization_id = ?
299
- AND level_id = ?
300
- AND level_type = ?
301
- AND lead_owner IN (${placeholders})
302
- ORDER BY created_date DESC
303
- LIMIT 1
295
+ const lastRow = await this.dataSource.query(`
296
+ SELECT lead_owner
297
+ FROM crm_lead
298
+ WHERE organization_id = ?
299
+ AND level_id = ?
300
+ AND level_type = ?
301
+ AND lead_owner IN (${placeholders})
302
+ ORDER BY created_date DESC
303
+ LIMIT 1
304
304
  `, [organization_id, Number(level_id), level_type, ...userIds]);
305
305
  const lastAssigned = lastRow.length ? Number(lastRow[0].lead_owner) : null;
306
306
  const lastIdx = lastAssigned != null ? userIds.indexOf(lastAssigned) : -1;
307
307
  const nextIdx = (lastIdx + 1) % userIds.length;
308
308
  const nextUser = userIds[nextIdx];
309
- await this.dataSource.query(`
310
- UPDATE crm_lead
311
- SET lead_owner = ?
312
- WHERE organization_id = ?
313
- AND level_id = ?
314
- AND level_type = ?
315
- AND lead_owner IS NULL
316
- ORDER BY created_date ASC
317
- LIMIT 1
309
+ await this.dataSource.query(`
310
+ UPDATE crm_lead
311
+ SET lead_owner = ?
312
+ WHERE organization_id = ?
313
+ AND level_id = ?
314
+ AND level_type = ?
315
+ AND lead_owner IS NULL
316
+ ORDER BY created_date ASC
317
+ LIMIT 1
318
318
  `, [nextUser, organization_id, Number(level_id), level_type]);
319
319
  console.log(`Assigning lead to user ID: ${nextUser}`);
320
320
  const firstAction = actions[0];
@@ -72,8 +72,8 @@ let WorkflowService = class WorkflowService extends entity_service_impl_service_
72
72
  currentId: workflowId,
73
73
  })
74
74
  .execute();
75
- await this.dataSource.query(`UPDATE cr_workflow_level_mapping
76
- SET workflow_id = ?
75
+ await this.dataSource.query(`UPDATE cr_workflow_level_mapping
76
+ SET workflow_id = ?
77
77
  WHERE mapped_level_id = ? AND mapped_level_type = ?`, [workflowId, level_id, level_type]);
78
78
  }
79
79
  return super.updateEntity(entityData, loggedInUser);