rez_core 3.1.110 → 3.1.112

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/integration/examples/usage.example.js +9 -9
  22. package/dist/module/integration/service/integration.service.js +7 -6
  23. package/dist/module/integration/service/integration.service.js.map +1 -1
  24. package/dist/module/integration/service/wrapper.service.js +17 -17
  25. package/dist/module/integration/strategies/email/gmail-api.strategy.js +1 -0
  26. package/dist/module/integration/strategies/email/gmail-api.strategy.js.map +1 -1
  27. package/dist/module/integration/strategies/email/sendgrid-api.strategy.js +1 -0
  28. package/dist/module/integration/strategies/email/sendgrid-api.strategy.js.map +1 -1
  29. package/dist/module/integration/strategies/integration.strategy.d.ts +1 -0
  30. package/dist/module/integration/strategies/integration.strategy.js.map +1 -1
  31. package/dist/module/integration/strategies/telephone/ozonetel-voice.strategy.js +1 -0
  32. package/dist/module/integration/strategies/telephone/ozonetel-voice.strategy.js.map +1 -1
  33. package/dist/module/integration/strategies/telephone/tubelight-voice.strategy.js +1 -0
  34. package/dist/module/integration/strategies/telephone/tubelight-voice.strategy.js.map +1 -1
  35. package/dist/module/listmaster/service/list-master-item.service.js +2 -2
  36. package/dist/module/listmaster/service/list-master.service.js +2 -2
  37. package/dist/module/mapper/service/field-mapper.service.js +4 -4
  38. package/dist/module/mapper/service/mapper.service.js +2 -2
  39. package/dist/module/meta/service/entity-dynamic.service.js +18 -18
  40. package/dist/module/meta/service/entity-list.service.js +3 -3
  41. package/dist/module/meta/service/entity-master.service.js +3 -3
  42. package/dist/module/meta/service/entity-relation.service.js +11 -11
  43. package/dist/module/meta/service/entity-service-impl.service.js +3 -3
  44. package/dist/module/meta/service/resolver.service.js +3 -3
  45. package/dist/module/module/repository/menu.repository.js +12 -12
  46. package/dist/module/notification/service/notification.service.js +12 -12
  47. package/dist/module/user/controller/login.controller.js +18 -18
  48. package/dist/module/user/service/role.service.js +4 -4
  49. package/dist/module/user/service/user-session.service.js +2 -2
  50. package/dist/module/workflow/repository/action.repository.js +16 -16
  51. package/dist/module/workflow/repository/comm-template.repository.js +6 -6
  52. package/dist/module/workflow/repository/form-master.repository.js +2 -2
  53. package/dist/module/workflow/repository/stage-group.repository.js +23 -23
  54. package/dist/module/workflow/repository/stage-movement.repository.js +11 -11
  55. package/dist/module/workflow/repository/stage.repository.js +8 -8
  56. package/dist/module/workflow/service/action-template-mapping.service.js +10 -10
  57. package/dist/module/workflow/service/action.service.js +7 -7
  58. package/dist/module/workflow/service/entity-modification.service.js +6 -6
  59. package/dist/module/workflow/service/stage-group.service.js +5 -5
  60. package/dist/module/workflow/service/stage.service.js +2 -2
  61. package/dist/module/workflow/service/task.service.js +33 -33
  62. package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
  63. package/dist/module/workflow/service/workflow-meta.service.js +50 -50
  64. package/dist/module/workflow/service/workflow.service.js +2 -2
  65. package/dist/tsconfig.build.tsbuildinfo +1 -1
  66. package/dist/utils/service/reflection-helper.service.js +2 -2
  67. package/docs/modules/event-driven-integration-design.md +91 -91
  68. package/docs/modules/integration.md +250 -250
  69. package/eslint.config.mjs +34 -34
  70. package/nest-cli.json +14 -14
  71. package/package.json +118 -118
  72. package/server.log +850 -0
  73. package/src/app.controller.ts +12 -12
  74. package/src/app.module.ts +49 -49
  75. package/src/app.service.ts +8 -8
  76. package/src/config/config.module.ts +18 -18
  77. package/src/config/database.config.ts +23 -23
  78. package/src/constant/global.constant.ts +67 -67
  79. package/src/core.module.ts +81 -81
  80. package/src/decorators/roles.decorator.ts +7 -7
  81. package/src/dtos/response.dto.ts +6 -6
  82. package/src/dtos/response.ts +5 -5
  83. package/src/index.ts +1 -1
  84. package/src/module/auth/auth.module.ts +49 -49
  85. package/src/module/auth/controller/auth.controller.ts +28 -28
  86. package/src/module/auth/guards/google-auth.guard.ts +9 -9
  87. package/src/module/auth/guards/jwt.guard.ts +22 -22
  88. package/src/module/auth/guards/role.guard.ts +68 -68
  89. package/src/module/auth/services/auth.service.ts +50 -50
  90. package/src/module/auth/services/jwt.service.ts +11 -11
  91. package/src/module/auth/strategies/google.strategy.ts +54 -54
  92. package/src/module/auth/strategies/jwt.strategy.ts +58 -58
  93. package/src/module/auth/strategies/local.strategy.ts +13 -13
  94. package/src/module/dashboard/controller/dashboard.controller.ts +36 -36
  95. package/src/module/dashboard/dashboard.module.ts +21 -21
  96. package/src/module/dashboard/entity/dashboard_page_data.entity.ts +27 -27
  97. package/src/module/dashboard/entity/widget_master.entity.ts +18 -18
  98. package/src/module/dashboard/repository/dashboard.repository.ts +42 -42
  99. package/src/module/dashboard/service/dashboard.service.ts +73 -73
  100. package/src/module/dev/dev.module.ts +12 -12
  101. package/src/module/dev/service/dev.service.ts +7 -7
  102. package/src/module/enterprise/controller/organization.controller.ts +36 -36
  103. package/src/module/enterprise/enterprise.module.ts +30 -30
  104. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  105. package/src/module/enterprise/entity/organization-app-mapping.entity.ts +13 -13
  106. package/src/module/enterprise/entity/organization.entity.ts +92 -92
  107. package/src/module/enterprise/repository/enterprise.repository.ts +31 -31
  108. package/src/module/enterprise/repository/organization.repository.ts +26 -26
  109. package/src/module/enterprise/repository/school.repository.ts +282 -282
  110. package/src/module/enterprise/service/brand.service.ts +5 -5
  111. package/src/module/enterprise/service/enterprise.service.ts +16 -16
  112. package/src/module/enterprise/service/organization-app-mapping.service.ts +4 -4
  113. package/src/module/enterprise/service/organization.service.ts +145 -145
  114. package/src/module/filter/controller/filter.controller.ts +84 -84
  115. package/src/module/filter/dto/filter-request.dto.ts +38 -38
  116. package/src/module/filter/entity/saved-filter-detail.entity.ts +41 -41
  117. package/src/module/filter/entity/saved-filter-master.entity.ts +23 -23
  118. package/src/module/filter/filter.module.ts +31 -31
  119. package/src/module/filter/repository/saved-filter.repository.ts +168 -168
  120. package/src/module/filter/service/filter-evaluator.service.ts +86 -86
  121. package/src/module/filter/service/filter.service.ts +841 -841
  122. package/src/module/filter/service/saved-filter.service.ts +170 -170
  123. package/src/module/ics/controller/ics.controller.ts +21 -21
  124. package/src/module/ics/dto/ics.dto.ts +55 -55
  125. package/src/module/ics/ics.module.ts +13 -13
  126. package/src/module/ics/service/ics.service.ts +60 -60
  127. package/src/module/integration/controller/calender-event.controller.ts +31 -31
  128. package/src/module/integration/controller/integration.controller.ts +662 -662
  129. package/src/module/integration/controller/wrapper.controller.ts +39 -39
  130. package/src/module/integration/dto/create-config.dto.ts +526 -526
  131. package/src/module/integration/entity/integration-config.entity.ts +112 -112
  132. package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
  133. package/src/module/integration/entity/integration-source.entity.ts +17 -17
  134. package/src/module/integration/entity/user-integration.entity.ts +70 -70
  135. package/src/module/integration/examples/usage.example.ts +338 -338
  136. package/src/module/integration/factories/base.factory.ts +7 -7
  137. package/src/module/integration/factories/email.factory.ts +49 -49
  138. package/src/module/integration/factories/integration.factory.ts +121 -121
  139. package/src/module/integration/factories/sms.factory.ts +51 -51
  140. package/src/module/integration/factories/telephone.factory.ts +41 -41
  141. package/src/module/integration/factories/whatsapp.factory.ts +56 -56
  142. package/src/module/integration/integration.module.ts +110 -110
  143. package/src/module/integration/service/calendar-event.service.ts +118 -118
  144. package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
  145. package/src/module/integration/service/integration-queue.service.ts +229 -229
  146. package/src/module/integration/service/integration.service.ts +2527 -2534
  147. package/src/module/integration/service/oauth.service.ts +224 -224
  148. package/src/module/integration/service/wrapper.service.ts +373 -373
  149. package/src/module/integration/strategies/email/gmail-api.strategy.ts +288 -287
  150. package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
  151. package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
  152. package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +262 -261
  153. package/src/module/integration/strategies/integration.strategy.ts +97 -96
  154. package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
  155. package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
  156. package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
  157. package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -237
  158. package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -209
  159. package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
  160. package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +371 -371
  161. package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
  162. package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
  163. package/src/module/layout/controller/layout.controller.ts +47 -47
  164. package/src/module/layout/entity/header-items.entity.ts +28 -28
  165. package/src/module/layout/entity/header-section.entity.ts +19 -19
  166. package/src/module/layout/layout.module.ts +21 -21
  167. package/src/module/layout/repository/header-items.repository.ts +18 -18
  168. package/src/module/layout/repository/header-section.repository.ts +22 -22
  169. package/src/module/layout/service/header-section.service.ts +25 -25
  170. package/src/module/layout_preference/controller/layout_preference.controller.ts +47 -47
  171. package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
  172. package/src/module/layout_preference/layout_preference.module.ts +18 -18
  173. package/src/module/layout_preference/repository/layout_preference.repository.ts +30 -30
  174. package/src/module/layout_preference/service/layout_preference.service.ts +140 -140
  175. package/src/module/lead/controller/lead.controller.ts +30 -30
  176. package/src/module/lead/lead.module.ts +14 -14
  177. package/src/module/lead/repository/lead.repository.ts +41 -41
  178. package/src/module/lead/service/lead.service.ts +54 -54
  179. package/src/module/listmaster/controller/list-master.controller.ts +143 -143
  180. package/src/module/listmaster/entity/list-master-items.entity.ts +41 -41
  181. package/src/module/listmaster/entity/list-master.entity.ts +32 -32
  182. package/src/module/listmaster/listmaster.module.ts +30 -30
  183. package/src/module/listmaster/repository/list-master-items.repository.ts +169 -169
  184. package/src/module/listmaster/repository/list-master.repository.ts +46 -46
  185. package/src/module/listmaster/service/list-master-item.service.ts +292 -292
  186. package/src/module/listmaster/service/list-master.service.ts +360 -360
  187. package/src/module/mapper/controller/field-mapper.controller.ts +69 -69
  188. package/src/module/mapper/controller/mapper.controller.ts +12 -12
  189. package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
  190. package/src/module/mapper/entity/field-lovs.entity.ts +20 -20
  191. package/src/module/mapper/entity/field-mapper.entity.ts +37 -37
  192. package/src/module/mapper/entity/mapper.entity.ts +17 -17
  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 +14 -14
  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 +486 -486
  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 +111 -111
  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 +61 -61
  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 +718 -718
  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 +513 -513
  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 +153 -153
  250. package/src/module/meta/service/preference.service.ts +16 -16
  251. package/src/module/meta/service/resolver.service.ts +256 -256
  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 +91 -91
  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 +324 -324
  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 +130 -130
  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 +47 -47
  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-master.entity.ts +27 -27
  322. package/src/module/workflow/entity/form.entity.ts +25 -25
  323. package/src/module/workflow/entity/stage-action-mapping.entity.ts +17 -17
  324. package/src/module/workflow/entity/stage-group.entity.ts +23 -23
  325. package/src/module/workflow/entity/stage-movement-data.entity.ts +38 -38
  326. package/src/module/workflow/entity/stage.entity.ts +20 -20
  327. package/src/module/workflow/entity/task-data.entity.ts +88 -88
  328. package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
  329. package/src/module/workflow/entity/workflow-data.entity.ts +11 -11
  330. package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
  331. package/src/module/workflow/entity/workflow.entity.ts +20 -20
  332. package/src/module/workflow/repository/action-category.repository.ts +79 -79
  333. package/src/module/workflow/repository/action-data.repository.ts +219 -219
  334. package/src/module/workflow/repository/action.repository.ts +277 -277
  335. package/src/module/workflow/repository/activity-log.repository.ts +121 -121
  336. package/src/module/workflow/repository/comm-template.repository.ts +142 -142
  337. package/src/module/workflow/repository/form-master.repository.ts +61 -61
  338. package/src/module/workflow/repository/stage-group.repository.ts +176 -176
  339. package/src/module/workflow/repository/stage-movement.repository.ts +227 -227
  340. package/src/module/workflow/repository/stage.repository.ts +118 -118
  341. package/src/module/workflow/repository/task.repository.ts +113 -113
  342. package/src/module/workflow/repository/workflow.repository.ts +42 -42
  343. package/src/module/workflow/service/action-category.service.ts +33 -33
  344. package/src/module/workflow/service/action-data.service.ts +62 -62
  345. package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
  346. package/src/module/workflow/service/action-template-mapping.service.ts +55 -55
  347. package/src/module/workflow/service/action.service.ts +247 -247
  348. package/src/module/workflow/service/activity-log.service.ts +107 -107
  349. package/src/module/workflow/service/comm-template.service.ts +121 -121
  350. package/src/module/workflow/service/entity-modification.service.ts +67 -67
  351. package/src/module/workflow/service/form-master.service.ts +35 -35
  352. package/src/module/workflow/service/populate-workflow.service.ts +326 -326
  353. package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
  354. package/src/module/workflow/service/stage-group.service.ts +300 -300
  355. package/src/module/workflow/service/stage.service.ts +140 -140
  356. package/src/module/workflow/service/task.service.ts +504 -504
  357. package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
  358. package/src/module/workflow/service/workflow-meta.service.ts +564 -564
  359. package/src/module/workflow/service/workflow.service.ts +205 -205
  360. package/src/module/workflow/workflow.module.ts +176 -176
  361. package/src/module/workflow-automation/controller/workflow-automation.controller.ts +21 -21
  362. package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
  363. package/src/module/workflow-automation/entity/workflow-automation.entity.ts +35 -35
  364. package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
  365. package/src/module/workflow-automation/interface/action.interface.ts +5 -5
  366. package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
  367. package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +214 -214
  368. package/src/module/workflow-automation/service/workflow-automation.service.ts +343 -343
  369. package/src/module/workflow-automation/workflow-automation.module.ts +34 -34
  370. package/src/resources/dev.properties.yaml +30 -30
  371. package/src/resources/local.properties.yaml +23 -23
  372. package/src/resources/properties.module.ts +12 -12
  373. package/src/resources/properties.yaml.ts +11 -11
  374. package/src/resources/uat.properties.yaml +15 -15
  375. package/src/utils/dto/excel-data.dto.ts +14 -14
  376. package/src/utils/dto/excelsheet-data.dto.ts +5 -5
  377. package/src/utils/service/base64util.service.ts +18 -18
  378. package/src/utils/service/clockIDGenUtil.service.ts +21 -21
  379. package/src/utils/service/codeGenerator.service.ts +22 -22
  380. package/src/utils/service/dateUtil.service.ts +17 -17
  381. package/src/utils/service/encryptUtil.service.ts +97 -97
  382. package/src/utils/service/excel-helper.service.ts +72 -72
  383. package/src/utils/service/excelUtil.service.ts +15 -15
  384. package/src/utils/service/file-util.service.ts +11 -11
  385. package/src/utils/service/json-util.service.ts +23 -23
  386. package/src/utils/service/loggingUtil.service.ts +34 -34
  387. package/src/utils/service/reflection-helper.service.ts +62 -62
  388. package/src/utils/service/wbsCodeGen.service.ts +8 -8
  389. package/src/utils/utils.module.ts +25 -25
  390. package/tsconfig.build.json +4 -4
  391. package/tsconfig.json +24 -24
@@ -1,256 +1,256 @@
1
- import { Injectable } from '@nestjs/common';
2
- import { UserData } from 'src/module/user/entity/user.entity';
3
- import { DataSource } from 'typeorm';
4
-
5
- @Injectable()
6
- export class ResolverService {
7
- constructor(private readonly dataSource: DataSource,
8
-
9
- ) {}
10
-
11
- async getResolvedData(
12
- loggedInUser: any,
13
- entityData: any,
14
- entityType: string,
15
- ): Promise<any> {
16
- const attributeItems = await this.dataSource.query(
17
- `SELECT * FROM cr_attribute_master WHERE mapped_entity_type = ? AND organization_id = ?`,
18
- [entityType, loggedInUser.organization_id],
19
- );
20
-
21
- const resolvedEntityData = { ...entityData };
22
-
23
- for (const attr of attributeItems) {
24
- const field = attr.attribute_key;
25
- const codeValue = entityData[field];
26
-
27
- if (!codeValue) continue;
28
-
29
- // -------- ENTITY data_source_type --------
30
- if (attr.data_source_type === 'entity') {
31
- const [entityDef] = await this.dataSource.query(
32
- `SELECT * FROM cr_entity_master WHERE mapped_entity_type = ? AND organization_id = ?`,
33
- [attr.datasource_list, loggedInUser.organization_id],
34
- );
35
-
36
- if (!entityDef) {
37
- // fallback or skip if no mapping found
38
- resolvedEntityData[field] = codeValue;
39
- continue;
40
- }
41
-
42
- const tableName = entityDef.db_table_name;
43
-
44
- if (Array.isArray(codeValue)) {
45
- const resolvedValues: string[] = [];
46
-
47
- for (const code of codeValue) {
48
- if (tableName == 'cr_organization') {
49
- const [item] = await this.dataSource.query(
50
- `SELECT * FROM ${tableName} WHERE code = ?`,
51
- [code],
52
- );
53
- resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
54
- } else {
55
- const [item] = await this.dataSource.query(
56
- `SELECT * FROM ${tableName} WHERE code = ? AND organization_id = ?`,
57
- [code, loggedInUser.organization_id],
58
- );
59
- resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
60
- }
61
- }
62
-
63
- resolvedEntityData[field] = resolvedValues;
64
- } else {
65
- if (tableName == 'cr_organization') {
66
- const [item] = await this.dataSource.query(
67
- `SELECT * FROM ${tableName} WHERE id = ?`,
68
- [codeValue],
69
- );
70
- resolvedEntityData[field] =
71
- item?.[attr.data_source_attribute] ?? codeValue;
72
- } else {
73
- const [item] = await this.dataSource.query(
74
- `SELECT * FROM ${tableName} WHERE id = ? AND organization_id = ?`,
75
- [codeValue, loggedInUser.organization_id],
76
- );
77
- resolvedEntityData[field] =
78
- item?.[attr.data_source_attribute] ?? codeValue;
79
- }
80
- }
81
- }
82
-
83
- // -------- MASTER data_source_type --------
84
- else if (attr.data_source_type === 'master') {
85
- if (Array.isArray(codeValue)) {
86
- const resolvedValues: string[] = [];
87
-
88
- for (const code of codeValue) {
89
- const [item] = await this.dataSource.query(
90
- `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
91
- [code, loggedInUser.organization_id],
92
- );
93
- resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
94
- }
95
-
96
- resolvedEntityData[field] = resolvedValues;
97
- } else {
98
- const [item] = await this.dataSource.query(
99
- `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
100
- [codeValue, loggedInUser.organization_id],
101
- );
102
-
103
- resolvedEntityData[field] =
104
- item?.[attr.data_source_attribute] ?? codeValue;
105
- }
106
- }
107
- }
108
-
109
- return resolvedEntityData;
110
- }
111
-
112
- async getResolvedValue(
113
- loggedInUser: UserData,
114
- attrKey: string,
115
- rawValue: any,
116
- entityType: string,
117
- ): Promise<any> {
118
- if (rawValue === null || rawValue === undefined || rawValue === '') {
119
- return rawValue;
120
- }
121
-
122
- // fetch attribute meta only for the given attributeKey
123
- const [attr] = await this.dataSource.query(
124
- `SELECT * FROM cr_attribute_master WHERE mapped_entity_type = ? AND organization_id = ? AND attribute_key = ?`,
125
- [entityType, loggedInUser.organization_id, attrKey],
126
- );
127
-
128
- if (!attr) return rawValue;
129
-
130
- // -------- ENTITY data_source_type --------
131
- if (attr.data_source_type === 'entity') {
132
- const [entityDef] = await this.dataSource.query(
133
- `SELECT * FROM cr_entity_master WHERE mapped_entity_type = ? AND organization_id = ?`,
134
- [attr.datasource_list, loggedInUser.organization_id],
135
- );
136
-
137
- if (!entityDef) return rawValue;
138
-
139
- const tableName = entityDef.db_table_name;
140
-
141
- if (Array.isArray(rawValue)) {
142
- const resolvedValues: string[] = [];
143
- for (const code of rawValue) {
144
- const query =
145
- tableName === 'cr_organization'
146
- ? `SELECT * FROM ${tableName} WHERE code = ?`
147
- : `SELECT * FROM ${tableName} WHERE id = ? AND organization_id = ?`;
148
-
149
- const params =
150
- tableName === 'cr_organization'
151
- ? [code]
152
- : [code, loggedInUser.organization_id];
153
-
154
- const [item] = await this.dataSource.query(query, params);
155
- resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
156
- }
157
- return resolvedValues;
158
- } else {
159
- const query =
160
- tableName === 'cr_organization'
161
- ? `SELECT * FROM ${tableName} WHERE id = ?`
162
- : `SELECT * FROM ${tableName} WHERE id = ? AND organization_id = ?`;
163
-
164
- const params =
165
- tableName === 'cr_organization'
166
- ? [rawValue]
167
- : [rawValue, loggedInUser.organization_id];
168
-
169
- const [item] = await this.dataSource.query(query, params);
170
- return item?.[attr.data_source_attribute] ?? rawValue;
171
- }
172
- }
173
-
174
- // -------- MASTER data_source_type --------
175
- else if (attr.data_source_type === 'master') {
176
- if (Array.isArray(rawValue)) {
177
- const resolvedValues: string[] = [];
178
- for (const code of rawValue) {
179
- const [item] = await this.dataSource.query(
180
- `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
181
- [code, loggedInUser.organization_id],
182
- );
183
- resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
184
- }
185
- return resolvedValues;
186
- } else {
187
- const [item] = await this.dataSource.query(
188
- `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
189
- [rawValue, loggedInUser.organization_id],
190
- );
191
- return item?.[attr.data_source_attribute] ?? rawValue;
192
- }
193
- }
194
-
195
- return rawValue;
196
- }
197
-
198
- async getResolvedId(
199
- loggedInUser: UserData,
200
- attrKey: string,
201
- displayValue: any,
202
- entityType: string,
203
- ): Promise<any> {
204
- if (displayValue === null || displayValue === undefined || displayValue === '') {
205
- return displayValue;
206
- }
207
-
208
- // fetch attribute meta
209
- const [attr] = await this.dataSource.query(
210
- `SELECT * FROM cr_attribute_master
211
- WHERE mapped_entity_type = ? AND organization_id = ? AND attribute_key = ?`,
212
- [entityType, loggedInUser.organization_id, attrKey],
213
- );
214
-
215
- if (!attr) return displayValue;
216
-
217
- // -------- ENTITY data_source_type --------
218
- if (attr.data_source_type === 'entity') {
219
- const [entityDef] = await this.dataSource.query(
220
- `SELECT * FROM cr_entity_master
221
- WHERE mapped_entity_type = ? AND organization_id = ?`,
222
- [attr.datasource_list, loggedInUser.organization_id],
223
- );
224
-
225
- if (!entityDef) return displayValue;
226
-
227
- const tableName = entityDef.db_table_name;
228
-
229
- const query =
230
- tableName === 'cr_organization'
231
- ? `SELECT id FROM ${tableName} WHERE ${attr.data_source_attribute} = ?`
232
- : `SELECT id FROM ${tableName} WHERE ${attr.data_source_attribute} = ? AND organization_id = ?`;
233
-
234
- const params =
235
- tableName === 'cr_organization'
236
- ? [displayValue]
237
- : [displayValue, loggedInUser.organization_id];
238
-
239
- const [item] = await this.dataSource.query(query, params);
240
- return item?.id ?? displayValue;
241
- }
242
-
243
- // -------- MASTER data_source_type --------
244
- else if (attr.data_source_type === 'master') {
245
- const [item] = await this.dataSource.query(
246
- `SELECT id FROM cr_list_master_items
247
- WHERE ${attr.data_source_attribute} = ? AND organization_id = ?`,
248
- [displayValue, loggedInUser.organization_id],
249
- );
250
- return item?.id ?? displayValue;
251
- }
252
-
253
- return displayValue;
254
- }
255
-
256
- }
1
+ import { Injectable } from '@nestjs/common';
2
+ import { UserData } from 'src/module/user/entity/user.entity';
3
+ import { DataSource } from 'typeorm';
4
+
5
+ @Injectable()
6
+ export class ResolverService {
7
+ constructor(private readonly dataSource: DataSource,
8
+
9
+ ) {}
10
+
11
+ async getResolvedData(
12
+ loggedInUser: any,
13
+ entityData: any,
14
+ entityType: string,
15
+ ): Promise<any> {
16
+ const attributeItems = await this.dataSource.query(
17
+ `SELECT * FROM cr_attribute_master WHERE mapped_entity_type = ? AND organization_id = ?`,
18
+ [entityType, loggedInUser.organization_id],
19
+ );
20
+
21
+ const resolvedEntityData = { ...entityData };
22
+
23
+ for (const attr of attributeItems) {
24
+ const field = attr.attribute_key;
25
+ const codeValue = entityData[field];
26
+
27
+ if (!codeValue) continue;
28
+
29
+ // -------- ENTITY data_source_type --------
30
+ if (attr.data_source_type === 'entity') {
31
+ const [entityDef] = await this.dataSource.query(
32
+ `SELECT * FROM cr_entity_master WHERE mapped_entity_type = ? AND organization_id = ?`,
33
+ [attr.datasource_list, loggedInUser.organization_id],
34
+ );
35
+
36
+ if (!entityDef) {
37
+ // fallback or skip if no mapping found
38
+ resolvedEntityData[field] = codeValue;
39
+ continue;
40
+ }
41
+
42
+ const tableName = entityDef.db_table_name;
43
+
44
+ if (Array.isArray(codeValue)) {
45
+ const resolvedValues: string[] = [];
46
+
47
+ for (const code of codeValue) {
48
+ if (tableName == 'cr_organization') {
49
+ const [item] = await this.dataSource.query(
50
+ `SELECT * FROM ${tableName} WHERE code = ?`,
51
+ [code],
52
+ );
53
+ resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
54
+ } else {
55
+ const [item] = await this.dataSource.query(
56
+ `SELECT * FROM ${tableName} WHERE code = ? AND organization_id = ?`,
57
+ [code, loggedInUser.organization_id],
58
+ );
59
+ resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
60
+ }
61
+ }
62
+
63
+ resolvedEntityData[field] = resolvedValues;
64
+ } else {
65
+ if (tableName == 'cr_organization') {
66
+ const [item] = await this.dataSource.query(
67
+ `SELECT * FROM ${tableName} WHERE id = ?`,
68
+ [codeValue],
69
+ );
70
+ resolvedEntityData[field] =
71
+ item?.[attr.data_source_attribute] ?? codeValue;
72
+ } else {
73
+ const [item] = await this.dataSource.query(
74
+ `SELECT * FROM ${tableName} WHERE id = ? AND organization_id = ?`,
75
+ [codeValue, loggedInUser.organization_id],
76
+ );
77
+ resolvedEntityData[field] =
78
+ item?.[attr.data_source_attribute] ?? codeValue;
79
+ }
80
+ }
81
+ }
82
+
83
+ // -------- MASTER data_source_type --------
84
+ else if (attr.data_source_type === 'master') {
85
+ if (Array.isArray(codeValue)) {
86
+ const resolvedValues: string[] = [];
87
+
88
+ for (const code of codeValue) {
89
+ const [item] = await this.dataSource.query(
90
+ `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
91
+ [code, loggedInUser.organization_id],
92
+ );
93
+ resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
94
+ }
95
+
96
+ resolvedEntityData[field] = resolvedValues;
97
+ } else {
98
+ const [item] = await this.dataSource.query(
99
+ `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
100
+ [codeValue, loggedInUser.organization_id],
101
+ );
102
+
103
+ resolvedEntityData[field] =
104
+ item?.[attr.data_source_attribute] ?? codeValue;
105
+ }
106
+ }
107
+ }
108
+
109
+ return resolvedEntityData;
110
+ }
111
+
112
+ async getResolvedValue(
113
+ loggedInUser: UserData,
114
+ attrKey: string,
115
+ rawValue: any,
116
+ entityType: string,
117
+ ): Promise<any> {
118
+ if (rawValue === null || rawValue === undefined || rawValue === '') {
119
+ return rawValue;
120
+ }
121
+
122
+ // fetch attribute meta only for the given attributeKey
123
+ const [attr] = await this.dataSource.query(
124
+ `SELECT * FROM cr_attribute_master WHERE mapped_entity_type = ? AND organization_id = ? AND attribute_key = ?`,
125
+ [entityType, loggedInUser.organization_id, attrKey],
126
+ );
127
+
128
+ if (!attr) return rawValue;
129
+
130
+ // -------- ENTITY data_source_type --------
131
+ if (attr.data_source_type === 'entity') {
132
+ const [entityDef] = await this.dataSource.query(
133
+ `SELECT * FROM cr_entity_master WHERE mapped_entity_type = ? AND organization_id = ?`,
134
+ [attr.datasource_list, loggedInUser.organization_id],
135
+ );
136
+
137
+ if (!entityDef) return rawValue;
138
+
139
+ const tableName = entityDef.db_table_name;
140
+
141
+ if (Array.isArray(rawValue)) {
142
+ const resolvedValues: string[] = [];
143
+ for (const code of rawValue) {
144
+ const query =
145
+ tableName === 'cr_organization'
146
+ ? `SELECT * FROM ${tableName} WHERE code = ?`
147
+ : `SELECT * FROM ${tableName} WHERE id = ? AND organization_id = ?`;
148
+
149
+ const params =
150
+ tableName === 'cr_organization'
151
+ ? [code]
152
+ : [code, loggedInUser.organization_id];
153
+
154
+ const [item] = await this.dataSource.query(query, params);
155
+ resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
156
+ }
157
+ return resolvedValues;
158
+ } else {
159
+ const query =
160
+ tableName === 'cr_organization'
161
+ ? `SELECT * FROM ${tableName} WHERE id = ?`
162
+ : `SELECT * FROM ${tableName} WHERE id = ? AND organization_id = ?`;
163
+
164
+ const params =
165
+ tableName === 'cr_organization'
166
+ ? [rawValue]
167
+ : [rawValue, loggedInUser.organization_id];
168
+
169
+ const [item] = await this.dataSource.query(query, params);
170
+ return item?.[attr.data_source_attribute] ?? rawValue;
171
+ }
172
+ }
173
+
174
+ // -------- MASTER data_source_type --------
175
+ else if (attr.data_source_type === 'master') {
176
+ if (Array.isArray(rawValue)) {
177
+ const resolvedValues: string[] = [];
178
+ for (const code of rawValue) {
179
+ const [item] = await this.dataSource.query(
180
+ `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
181
+ [code, loggedInUser.organization_id],
182
+ );
183
+ resolvedValues.push(item?.[attr.data_source_attribute] ?? code);
184
+ }
185
+ return resolvedValues;
186
+ } else {
187
+ const [item] = await this.dataSource.query(
188
+ `SELECT * FROM cr_list_master_items WHERE id = ? AND organization_id = ?`,
189
+ [rawValue, loggedInUser.organization_id],
190
+ );
191
+ return item?.[attr.data_source_attribute] ?? rawValue;
192
+ }
193
+ }
194
+
195
+ return rawValue;
196
+ }
197
+
198
+ async getResolvedId(
199
+ loggedInUser: UserData,
200
+ attrKey: string,
201
+ displayValue: any,
202
+ entityType: string,
203
+ ): Promise<any> {
204
+ if (displayValue === null || displayValue === undefined || displayValue === '') {
205
+ return displayValue;
206
+ }
207
+
208
+ // fetch attribute meta
209
+ const [attr] = await this.dataSource.query(
210
+ `SELECT * FROM cr_attribute_master
211
+ WHERE mapped_entity_type = ? AND organization_id = ? AND attribute_key = ?`,
212
+ [entityType, loggedInUser.organization_id, attrKey],
213
+ );
214
+
215
+ if (!attr) return displayValue;
216
+
217
+ // -------- ENTITY data_source_type --------
218
+ if (attr.data_source_type === 'entity') {
219
+ const [entityDef] = await this.dataSource.query(
220
+ `SELECT * FROM cr_entity_master
221
+ WHERE mapped_entity_type = ? AND organization_id = ?`,
222
+ [attr.datasource_list, loggedInUser.organization_id],
223
+ );
224
+
225
+ if (!entityDef) return displayValue;
226
+
227
+ const tableName = entityDef.db_table_name;
228
+
229
+ const query =
230
+ tableName === 'cr_organization'
231
+ ? `SELECT id FROM ${tableName} WHERE ${attr.data_source_attribute} = ?`
232
+ : `SELECT id FROM ${tableName} WHERE ${attr.data_source_attribute} = ? AND organization_id = ?`;
233
+
234
+ const params =
235
+ tableName === 'cr_organization'
236
+ ? [displayValue]
237
+ : [displayValue, loggedInUser.organization_id];
238
+
239
+ const [item] = await this.dataSource.query(query, params);
240
+ return item?.id ?? displayValue;
241
+ }
242
+
243
+ // -------- MASTER data_source_type --------
244
+ else if (attr.data_source_type === 'master') {
245
+ const [item] = await this.dataSource.query(
246
+ `SELECT id FROM cr_list_master_items
247
+ WHERE ${attr.data_source_attribute} = ? AND organization_id = ?`,
248
+ [displayValue, loggedInUser.organization_id],
249
+ );
250
+ return item?.id ?? displayValue;
251
+ }
252
+
253
+ return displayValue;
254
+ }
255
+
256
+ }