rez_core 5.0.33 → 5.0.35

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 (431) hide show
  1. package/.idea/250218_nodejs_core.iml +11 -8
  2. package/.idea/codeStyles/Project.xml +58 -58
  3. package/.idea/codeStyles/codeStyleConfig.xml +4 -4
  4. package/.idea/inspectionProfiles/Project_Default.xml +1 -1
  5. package/.idea/modules.xml +7 -7
  6. package/.idea/prettier.xml +5 -5
  7. package/.idea/vcs.xml +5 -5
  8. package/.prettierrc +3 -3
  9. package/README.md +99 -99
  10. package/dist/module/auth/guards/role.guard.js +3 -3
  11. package/dist/module/auth/services/auth.service.js +2 -2
  12. package/dist/module/filter/repository/saved-filter.repository.js +4 -4
  13. package/dist/module/filter/service/filter-evaluator.service.js +2 -2
  14. package/dist/module/filter/service/filter.service.js +22 -22
  15. package/dist/module/integration/examples/usage.example.js +9 -9
  16. package/dist/module/integration/service/integration.service.js +1 -1
  17. package/dist/module/integration/service/wrapper.service.js +26 -26
  18. package/dist/module/linked_attributes/controller/linked_attributes.controller.d.ts +1 -1
  19. package/dist/module/linked_attributes/controller/linked_attributes.controller.js +1 -1
  20. package/dist/module/linked_attributes/controller/linked_attributes.controller.js.map +1 -1
  21. package/dist/module/linked_attributes/service/linked_attributes.service.d.ts +1 -1
  22. package/dist/module/linked_attributes/service/linked_attributes.service.js +28 -46
  23. package/dist/module/linked_attributes/service/linked_attributes.service.js.map +1 -1
  24. package/dist/module/listmaster/service/list-master-item.service.js +2 -2
  25. package/dist/module/mapper/service/field-mapper.service.js +4 -4
  26. package/dist/module/meta/repository/entity-attribute-update.repository.js +3 -3
  27. package/dist/module/meta/repository/entity-master.repository.js +6 -6
  28. package/dist/module/meta/service/entity-dynamic.service.js +44 -44
  29. package/dist/module/meta/service/entity-list.service.js +3 -3
  30. package/dist/module/meta/service/entity-master.service.d.ts +3 -1
  31. package/dist/module/meta/service/entity-master.service.js +6 -6
  32. package/dist/module/meta/service/entity-master.service.js.map +1 -1
  33. package/dist/module/meta/service/entity-relation.service.js +9 -9
  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 +10 -10
  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 +20 -20
  42. package/dist/module/workflow/repository/comm-template.repository.js +6 -6
  43. package/dist/module/workflow/repository/form-master.repository.js +2 -2
  44. package/dist/module/workflow/repository/stage-group.repository.js +20 -20
  45. package/dist/module/workflow/repository/stage-movement.repository.js +17 -17
  46. package/dist/module/workflow/repository/stage.repository.js +8 -8
  47. package/dist/module/workflow/service/action-template-mapping.service.js +13 -13
  48. package/dist/module/workflow/service/action.service.js +7 -7
  49. package/dist/module/workflow/service/entity-modification.service.js +2 -2
  50. package/dist/module/workflow/service/stage-group.service.js +2 -2
  51. package/dist/module/workflow/service/stage.service.js +2 -2
  52. package/dist/module/workflow/service/task.service.js +35 -35
  53. package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
  54. package/dist/module/workflow/service/workflow-meta.service.js +26 -26
  55. package/dist/module/workflow/service/workflow.service.js +2 -2
  56. package/dist/module/workflow-automation/service/schedule-handler.service.js +9 -9
  57. package/dist/module/workflow-schedule/processors/schedule.processor.js +4 -4
  58. package/dist/module/workflow-schedule/service/workflow-schedule.service.js +9 -9
  59. package/dist/tsconfig.build.tsbuildinfo +1 -1
  60. package/dist/utils/service/reflection-helper.service.js +2 -2
  61. package/docs/modules/event-driven-integration-design.md +91 -91
  62. package/docs/modules/integration.md +250 -250
  63. package/eslint.config.mjs +34 -34
  64. package/nest-cli.json +14 -14
  65. package/package.json +124 -124
  66. package/src/app.controller.ts +12 -12
  67. package/src/app.module.ts +66 -66
  68. package/src/app.service.ts +8 -8
  69. package/src/config/bull.config.ts +69 -69
  70. package/src/config/config.module.ts +17 -17
  71. package/src/config/database.config.ts +48 -48
  72. package/src/constant/global.constant.ts +67 -67
  73. package/src/core.module.ts +88 -88
  74. package/src/decorators/roles.decorator.ts +7 -7
  75. package/src/dtos/response.dto.ts +6 -6
  76. package/src/dtos/response.ts +5 -5
  77. package/src/index.ts +1 -1
  78. package/src/module/auth/auth.module.ts +49 -49
  79. package/src/module/auth/controller/auth.controller.ts +28 -28
  80. package/src/module/auth/guards/google-auth.guard.ts +9 -9
  81. package/src/module/auth/guards/jwt.guard.ts +22 -22
  82. package/src/module/auth/guards/role.guard.ts +68 -68
  83. package/src/module/auth/services/auth.service.ts +50 -50
  84. package/src/module/auth/services/jwt.service.ts +11 -11
  85. package/src/module/auth/strategies/google.strategy.ts +54 -54
  86. package/src/module/auth/strategies/jwt.strategy.ts +58 -58
  87. package/src/module/auth/strategies/local.strategy.ts +13 -13
  88. package/src/module/dashboard/controller/dashboard.controller.ts +36 -36
  89. package/src/module/dashboard/dashboard.module.ts +21 -21
  90. package/src/module/dashboard/entity/dashboard_page_data.entity.ts +27 -27
  91. package/src/module/dashboard/entity/widget_master.entity.ts +18 -18
  92. package/src/module/dashboard/repository/dashboard.repository.ts +42 -42
  93. package/src/module/dashboard/service/dashboard.service.ts +73 -73
  94. package/src/module/dev/dev.module.ts +12 -12
  95. package/src/module/dev/service/dev.service.ts +7 -7
  96. package/src/module/enterprise/controller/organization.controller.ts +36 -36
  97. package/src/module/enterprise/enterprise.module.ts +30 -30
  98. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  99. package/src/module/enterprise/entity/organization-app-mapping.entity.ts +13 -13
  100. package/src/module/enterprise/entity/organization.entity.ts +92 -92
  101. package/src/module/enterprise/repository/enterprise.repository.ts +31 -31
  102. package/src/module/enterprise/repository/organization.repository.ts +26 -26
  103. package/src/module/enterprise/repository/school.repository.ts +278 -278
  104. package/src/module/enterprise/service/brand.service.ts +5 -5
  105. package/src/module/enterprise/service/enterprise.service.ts +16 -16
  106. package/src/module/enterprise/service/organization-app-mapping.service.ts +4 -4
  107. package/src/module/enterprise/service/organization.service.ts +145 -145
  108. package/src/module/entity_json/controller/entity_json.controller.ts +47 -47
  109. package/src/module/entity_json/entity/entityJson.entity.ts +39 -39
  110. package/src/module/entity_json/entity_json.module.ts +18 -18
  111. package/src/module/entity_json/service/entityJson.repository.ts +37 -37
  112. package/src/module/entity_json/service/entity_json.service.ts +234 -234
  113. package/src/module/filter/controller/filter.controller.ts +84 -84
  114. package/src/module/filter/dto/filter-request.dto.ts +38 -38
  115. package/src/module/filter/entity/saved-filter-detail.entity.ts +41 -41
  116. package/src/module/filter/entity/saved-filter-master.entity.ts +23 -23
  117. package/src/module/filter/filter.module.ts +31 -31
  118. package/src/module/filter/repository/saved-filter.repository.ts +168 -168
  119. package/src/module/filter/service/filter-evaluator.service.ts +86 -86
  120. package/src/module/filter/service/filter.service.ts +1144 -1144
  121. package/src/module/filter/service/saved-filter.service.ts +170 -170
  122. package/src/module/ics/controller/ics.controller.ts +21 -21
  123. package/src/module/ics/dto/ics.dto.ts +55 -55
  124. package/src/module/ics/ics.module.ts +13 -13
  125. package/src/module/ics/service/ics.service.ts +57 -57
  126. package/src/module/integration/controller/calender-event.controller.ts +31 -31
  127. package/src/module/integration/controller/integration.controller.ts +662 -662
  128. package/src/module/integration/controller/wrapper.controller.ts +37 -37
  129. package/src/module/integration/dto/create-config.dto.ts +526 -526
  130. package/src/module/integration/entity/integration-config.entity.ts +112 -112
  131. package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
  132. package/src/module/integration/entity/integration-source.entity.ts +17 -17
  133. package/src/module/integration/entity/user-integration.entity.ts +71 -71
  134. package/src/module/integration/examples/usage.example.ts +338 -338
  135. package/src/module/integration/factories/base.factory.ts +7 -7
  136. package/src/module/integration/factories/email.factory.ts +49 -49
  137. package/src/module/integration/factories/integration.factory.ts +121 -121
  138. package/src/module/integration/factories/sms.factory.ts +51 -51
  139. package/src/module/integration/factories/telephone.factory.ts +41 -41
  140. package/src/module/integration/factories/whatsapp.factory.ts +56 -56
  141. package/src/module/integration/integration.module.ts +110 -110
  142. package/src/module/integration/service/calendar-event.service.ts +118 -118
  143. package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
  144. package/src/module/integration/service/integration-queue.service.ts +229 -229
  145. package/src/module/integration/service/integration.service.ts +2633 -2633
  146. package/src/module/integration/service/oauth.service.ts +224 -224
  147. package/src/module/integration/service/wrapper.service.ts +701 -701
  148. package/src/module/integration/strategies/email/gmail-api.strategy.ts +280 -280
  149. package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
  150. package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
  151. package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +260 -260
  152. package/src/module/integration/strategies/integration.strategy.ts +97 -97
  153. package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
  154. package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
  155. package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
  156. package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -238
  157. package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -210
  158. package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
  159. package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +372 -372
  160. package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
  161. package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
  162. package/src/module/layout/controller/layout.controller.ts +47 -47
  163. package/src/module/layout/entity/header-items.entity.ts +28 -28
  164. package/src/module/layout/entity/header-section.entity.ts +19 -19
  165. package/src/module/layout/layout.module.ts +21 -21
  166. package/src/module/layout/repository/header-items.repository.ts +18 -18
  167. package/src/module/layout/repository/header-section.repository.ts +22 -22
  168. package/src/module/layout/service/header-section.service.ts +25 -25
  169. package/src/module/layout_preference/controller/layout_preference.controller.ts +73 -73
  170. package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
  171. package/src/module/layout_preference/layout_preference.module.ts +22 -22
  172. package/src/module/layout_preference/repository/layout_preference.repository.ts +65 -65
  173. package/src/module/layout_preference/service/layout_preference.service.ts +191 -191
  174. package/src/module/lead/controller/lead.controller.ts +30 -30
  175. package/src/module/lead/lead.module.ts +14 -14
  176. package/src/module/lead/repository/lead.repository.ts +41 -41
  177. package/src/module/lead/service/lead.service.ts +54 -54
  178. package/src/module/linked_attributes/controller/linked_attributes.controller.ts +37 -34
  179. package/src/module/linked_attributes/entity/linked_attribute.entity.ts +51 -51
  180. package/src/module/linked_attributes/linked_attributes.module.ts +16 -16
  181. package/src/module/linked_attributes/repository/linked_attribute.repository.ts +12 -12
  182. package/src/module/linked_attributes/service/linked_attributes.service.ts +75 -102
  183. package/src/module/listmaster/controller/list-master.controller.ts +230 -230
  184. package/src/module/listmaster/entity/list-master-items.entity.ts +43 -43
  185. package/src/module/listmaster/entity/list-master.entity.ts +33 -33
  186. package/src/module/listmaster/listmaster.module.ts +46 -46
  187. package/src/module/listmaster/repository/list-master-items.repository.ts +173 -173
  188. package/src/module/listmaster/repository/list-master.repository.ts +46 -46
  189. package/src/module/listmaster/service/list-master-engine.ts +19 -19
  190. package/src/module/listmaster/service/list-master-extension.interface.ts +4 -4
  191. package/src/module/listmaster/service/list-master-item.service.ts +292 -292
  192. package/src/module/listmaster/service/list-master-registry.ts +15 -15
  193. package/src/module/listmaster/service/list-master.service.ts +544 -544
  194. package/src/module/mapper/controller/field-mapper.controller.ts +76 -76
  195. package/src/module/mapper/controller/mapper.controller.ts +20 -20
  196. package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
  197. package/src/module/mapper/entity/field-lovs.entity.ts +19 -19
  198. package/src/module/mapper/entity/field-mapper.entity.ts +53 -53
  199. package/src/module/mapper/entity/mapper.entity.ts +16 -16
  200. package/src/module/mapper/mapper.module.ts +35 -35
  201. package/src/module/mapper/repository/field-lovs.repository.ts +35 -35
  202. package/src/module/mapper/repository/field-mapper.repository.ts +42 -42
  203. package/src/module/mapper/repository/mapper.repository.ts +32 -32
  204. package/src/module/mapper/service/field-mapper.service.ts +271 -271
  205. package/src/module/mapper/service/mapper.service.ts +81 -81
  206. package/src/module/master/controller/master.controller.ts +74 -74
  207. package/src/module/master/service/master.service.ts +483 -483
  208. package/src/module/meta/controller/app-master.controller.ts +38 -38
  209. package/src/module/meta/controller/attribute-master.controller.ts +84 -84
  210. package/src/module/meta/controller/entity-dynamic.controller.ts +125 -125
  211. package/src/module/meta/controller/entity-master.controller.ts +41 -41
  212. package/src/module/meta/controller/entity-relation.controller.ts +36 -36
  213. package/src/module/meta/controller/entity.controller.ts +392 -392
  214. package/src/module/meta/controller/entity.public.controller.ts +75 -75
  215. package/src/module/meta/controller/media.controller.ts +107 -107
  216. package/src/module/meta/controller/meta.controller.ts +96 -96
  217. package/src/module/meta/controller/view-master.controller.ts +86 -86
  218. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  219. package/src/module/meta/dto/entity-tab.dto.ts +4 -4
  220. package/src/module/meta/dto/entity-table.dto.ts +9 -9
  221. package/src/module/meta/entity/app-master.entity.ts +34 -34
  222. package/src/module/meta/entity/attribute-master.entity.ts +92 -92
  223. package/src/module/meta/entity/base-entity.entity.ts +75 -75
  224. package/src/module/meta/entity/entity-master.entity.ts +85 -85
  225. package/src/module/meta/entity/entity-relation-data.entity.ts +29 -29
  226. package/src/module/meta/entity/entity-relation.entity.ts +23 -23
  227. package/src/module/meta/entity/entity-table-column.entity.ts +61 -61
  228. package/src/module/meta/entity/entity-table.entity.ts +50 -50
  229. package/src/module/meta/entity/media-data.entity.ts +32 -32
  230. package/src/module/meta/entity/preference.entity.ts +62 -62
  231. package/src/module/meta/entity/view-master.entity.ts +41 -41
  232. package/src/module/meta/entity.module.ts +166 -166
  233. package/src/module/meta/repository/app-master.repository.ts +20 -20
  234. package/src/module/meta/repository/attribute-master.repository.ts +138 -138
  235. package/src/module/meta/repository/entity-attribute-update.repository.ts +44 -44
  236. package/src/module/meta/repository/entity-master.repository.ts +111 -111
  237. package/src/module/meta/repository/entity-table-column.repository.ts +39 -39
  238. package/src/module/meta/repository/entity-table.repository.ts +53 -53
  239. package/src/module/meta/repository/media-data.repository.ts +50 -50
  240. package/src/module/meta/repository/preference.repository.ts +20 -20
  241. package/src/module/meta/repository/user-app-mapping.repository.ts +28 -28
  242. package/src/module/meta/repository/view-master.repository.ts +42 -42
  243. package/src/module/meta/service/app-master.service.ts +37 -37
  244. package/src/module/meta/service/attribute-master.service.ts +130 -130
  245. package/src/module/meta/service/common.service.ts +9 -9
  246. package/src/module/meta/service/entity-attribute-update.service.ts +28 -28
  247. package/src/module/meta/service/entity-dynamic.service.ts +809 -809
  248. package/src/module/meta/service/entity-list.service.ts +205 -205
  249. package/src/module/meta/service/entity-master.service.ts +171 -175
  250. package/src/module/meta/service/entity-realation-data.service.ts +9 -9
  251. package/src/module/meta/service/entity-relation.service.ts +87 -87
  252. package/src/module/meta/service/entity-service-impl.service.ts +525 -525
  253. package/src/module/meta/service/entity-table-column.service.ts +39 -39
  254. package/src/module/meta/service/entity-table.service.ts +150 -150
  255. package/src/module/meta/service/entity-validation.service.ts +187 -187
  256. package/src/module/meta/service/entity.service.ts +67 -67
  257. package/src/module/meta/service/field-group.service.ts +103 -103
  258. package/src/module/meta/service/media-data.service.ts +507 -507
  259. package/src/module/meta/service/populate-meta.service.ts +193 -193
  260. package/src/module/meta/service/preference.service.ts +16 -16
  261. package/src/module/meta/service/resolver.service.ts +271 -271
  262. package/src/module/meta/service/section-master.service.ts +104 -104
  263. package/src/module/meta/service/update-form-json.service.ts +22 -22
  264. package/src/module/meta/service/user-app-mapping.service.ts +17 -17
  265. package/src/module/meta/service/view-master.service.ts +127 -127
  266. package/src/module/microservice-client/microservice-clients.module.ts +13 -13
  267. package/src/module/microservice-client/service/microservice-client-factory.ts +37 -37
  268. package/src/module/microservice-client/service/microservice-clients.ts +4 -4
  269. package/src/module/module/controller/menu.controller.ts +15 -15
  270. package/src/module/module/controller/module-access.controller.ts +134 -134
  271. package/src/module/module/entity/menu.entity.ts +43 -43
  272. package/src/module/module/entity/module-access.entity.ts +25 -25
  273. package/src/module/module/entity/module-action.entity.ts +17 -17
  274. package/src/module/module/entity/module.entity.ts +52 -52
  275. package/src/module/module/module.module.ts +42 -42
  276. package/src/module/module/repository/menu.repository.ts +184 -184
  277. package/src/module/module/repository/module-access.repository.ts +344 -344
  278. package/src/module/module/service/menu.service.ts +82 -82
  279. package/src/module/module/service/module-access.service.ts +194 -194
  280. package/src/module/notification/controller/notification.controller.ts +58 -58
  281. package/src/module/notification/controller/otp.controller.ts +117 -117
  282. package/src/module/notification/entity/notification.entity.ts +26 -26
  283. package/src/module/notification/entity/otp.entity.ts +28 -28
  284. package/src/module/notification/firebase-admin.config.ts +22 -22
  285. package/src/module/notification/notification.module.ts +69 -69
  286. package/src/module/notification/repository/otp.repository.ts +27 -27
  287. package/src/module/notification/service/email.service.ts +127 -127
  288. package/src/module/notification/service/notification.service.ts +160 -160
  289. package/src/module/notification/service/otp.service.ts +133 -133
  290. package/src/module/third-party-module/entity/third-party-api-registry.entity.ts +52 -52
  291. package/src/module/third-party-module/repository/third-party-api-registry.repository.ts +20 -20
  292. package/src/module/third-party-module/service/api-registry.service.ts +13 -13
  293. package/src/module/third-party-module/third-party.module.ts +12 -12
  294. package/src/module/user/controller/login.controller.ts +198 -198
  295. package/src/module/user/controller/user.controller.ts +40 -40
  296. package/src/module/user/dto/create-user.dto.ts +62 -62
  297. package/src/module/user/dto/update-user.dto.ts +4 -4
  298. package/src/module/user/entity/role.entity.ts +33 -33
  299. package/src/module/user/entity/user-role-mapping.entity.ts +38 -38
  300. package/src/module/user/entity/user-session.entity.ts +73 -73
  301. package/src/module/user/entity/user.entity.ts +59 -59
  302. package/src/module/user/repository/role.repository.ts +96 -96
  303. package/src/module/user/repository/user-role-mapping.repository.ts +126 -126
  304. package/src/module/user/repository/user.repository.ts +50 -50
  305. package/src/module/user/repository/userSession.repository.ts +33 -33
  306. package/src/module/user/service/login.service.ts +326 -326
  307. package/src/module/user/service/role.service.ts +189 -189
  308. package/src/module/user/service/user-role-mapping.service.ts +98 -98
  309. package/src/module/user/service/user-session.service.ts +168 -168
  310. package/src/module/user/service/user.service.ts +368 -368
  311. package/src/module/user/user.module.ts +65 -65
  312. package/src/module/workflow/controller/action-category.controller.ts +54 -54
  313. package/src/module/workflow/controller/action-resource-mapping.controller.ts +23 -23
  314. package/src/module/workflow/controller/action-template-mapping.controller.ts +35 -35
  315. package/src/module/workflow/controller/action.controller.ts +111 -111
  316. package/src/module/workflow/controller/activity-log.controller.ts +55 -55
  317. package/src/module/workflow/controller/comm-template.controller.ts +43 -43
  318. package/src/module/workflow/controller/entity-modification.controller.ts +35 -35
  319. package/src/module/workflow/controller/form-master.controller.ts +43 -43
  320. package/src/module/workflow/controller/stage-group.controller.ts +48 -48
  321. package/src/module/workflow/controller/stage.controller.ts +50 -50
  322. package/src/module/workflow/controller/task.controller.ts +77 -77
  323. package/src/module/workflow/controller/workflow-list-master.controller.ts +44 -44
  324. package/src/module/workflow/controller/workflow-meta.controller.ts +80 -80
  325. package/src/module/workflow/controller/workflow.controller.ts +67 -67
  326. package/src/module/workflow/entity/action-category.entity.ts +38 -38
  327. package/src/module/workflow/entity/action-data.entity.ts +55 -55
  328. package/src/module/workflow/entity/action-resources-mapping.entity.ts +29 -29
  329. package/src/module/workflow/entity/action-template-mapping.entity.ts +17 -17
  330. package/src/module/workflow/entity/action.entity.ts +53 -53
  331. package/src/module/workflow/entity/activity-log.entity.ts +43 -43
  332. package/src/module/workflow/entity/comm-template.entity.ts +43 -43
  333. package/src/module/workflow/entity/entity-modification.entity.ts +38 -38
  334. package/src/module/workflow/entity/form.entity.ts +25 -25
  335. package/src/module/workflow/entity/stage-action-mapping.entity.ts +17 -17
  336. package/src/module/workflow/entity/stage-group.entity.ts +23 -23
  337. package/src/module/workflow/entity/stage-movement-data.entity.ts +38 -38
  338. package/src/module/workflow/entity/stage.entity.ts +20 -20
  339. package/src/module/workflow/entity/task-data.entity.ts +88 -88
  340. package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
  341. package/src/module/workflow/entity/workflow-data.entity.ts +11 -11
  342. package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
  343. package/src/module/workflow/entity/workflow.entity.ts +20 -20
  344. package/src/module/workflow/repository/action-category.repository.ts +79 -79
  345. package/src/module/workflow/repository/action-data.repository.ts +334 -334
  346. package/src/module/workflow/repository/action.repository.ts +324 -324
  347. package/src/module/workflow/repository/activity-log.repository.ts +148 -148
  348. package/src/module/workflow/repository/comm-template.repository.ts +149 -149
  349. package/src/module/workflow/repository/form-master.repository.ts +59 -59
  350. package/src/module/workflow/repository/stage-group.repository.ts +197 -197
  351. package/src/module/workflow/repository/stage-movement.repository.ts +246 -246
  352. package/src/module/workflow/repository/stage.repository.ts +172 -172
  353. package/src/module/workflow/repository/task.repository.ts +134 -134
  354. package/src/module/workflow/repository/workflow.repository.ts +42 -42
  355. package/src/module/workflow/service/action-category.service.ts +33 -33
  356. package/src/module/workflow/service/action-data.service.ts +62 -62
  357. package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
  358. package/src/module/workflow/service/action-template-mapping.service.ts +131 -131
  359. package/src/module/workflow/service/action.service.ts +279 -279
  360. package/src/module/workflow/service/activity-log.service.ts +107 -107
  361. package/src/module/workflow/service/comm-template.service.ts +180 -180
  362. package/src/module/workflow/service/entity-modification.service.ts +61 -61
  363. package/src/module/workflow/service/form-master.service.ts +35 -35
  364. package/src/module/workflow/service/populate-workflow.service.ts +303 -303
  365. package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
  366. package/src/module/workflow/service/stage-group.service.ts +342 -342
  367. package/src/module/workflow/service/stage.service.ts +199 -199
  368. package/src/module/workflow/service/task.service.ts +558 -558
  369. package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
  370. package/src/module/workflow/service/workflow-meta.service.ts +654 -654
  371. package/src/module/workflow/service/workflow.service.ts +205 -205
  372. package/src/module/workflow/workflow.module.ts +180 -180
  373. package/src/module/workflow-automation/SCHEDULING_GUIDE.md +145 -145
  374. package/src/module/workflow-automation/controller/workflow-automation.controller.ts +43 -43
  375. package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
  376. package/src/module/workflow-automation/entity/workflow-automation.entity.ts +40 -40
  377. package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
  378. package/src/module/workflow-automation/interface/action.interface.ts +5 -5
  379. package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
  380. package/src/module/workflow-automation/service/schedule-handler.service.ts +168 -168
  381. package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +224 -224
  382. package/src/module/workflow-automation/service/workflow-automation.service.ts +515 -515
  383. package/src/module/workflow-automation/workflow-automation.module.ts +54 -54
  384. package/src/module/workflow-schedule/INSTALLATION.md +244 -244
  385. package/src/module/workflow-schedule/MULTI_PROJECT_GUIDE.md +196 -196
  386. package/src/module/workflow-schedule/README.md +422 -422
  387. package/src/module/workflow-schedule/constants/schedule.constants.ts +48 -48
  388. package/src/module/workflow-schedule/controller/workflow-schedule.controller.ts +255 -255
  389. package/src/module/workflow-schedule/docs/CLAUDE_CODE_GUIDE.md +510 -510
  390. package/src/module/workflow-schedule/docs/CLAUDE_CODE_PROMPT.md +362 -362
  391. package/src/module/workflow-schedule/docs/RUN_CLAUDE_CODE.sh +68 -68
  392. package/src/module/workflow-schedule/dto/create-schedule.dto.ts +147 -147
  393. package/src/module/workflow-schedule/dto/get-execution-logs.dto.ts +119 -119
  394. package/src/module/workflow-schedule/dto/update-schedule.dto.ts +96 -96
  395. package/src/module/workflow-schedule/entities/scheduled-workflow.entity.ts +148 -148
  396. package/src/module/workflow-schedule/entities/workflow-execution-log.entity.ts +154 -154
  397. package/src/module/workflow-schedule/interfaces/schedule-job-data.interface.ts +53 -53
  398. package/src/module/workflow-schedule/interfaces/workflow-schedule-options.interface.ts +12 -12
  399. package/src/module/workflow-schedule/processors/schedule.processor.ts +584 -584
  400. package/src/module/workflow-schedule/service/workflow-schedule.service.ts +600 -600
  401. package/src/module/workflow-schedule/workflow-schedule.module.ts +67 -67
  402. package/src/resources/dev.properties.yaml +31 -31
  403. package/src/resources/local.properties.yaml +27 -27
  404. package/src/resources/properties.module.ts +12 -12
  405. package/src/resources/properties.yaml.ts +11 -11
  406. package/src/resources/uat.properties.yaml +31 -31
  407. package/src/table.config.ts +130 -130
  408. package/src/utils/dto/excel-data.dto.ts +14 -14
  409. package/src/utils/dto/excelsheet-data.dto.ts +5 -5
  410. package/src/utils/service/base64util.service.ts +18 -18
  411. package/src/utils/service/clockIDGenUtil.service.ts +21 -21
  412. package/src/utils/service/codeGenerator.service.ts +22 -22
  413. package/src/utils/service/dateUtil.service.ts +17 -17
  414. package/src/utils/service/encryptUtil.service.ts +97 -97
  415. package/src/utils/service/excel-helper.service.ts +72 -72
  416. package/src/utils/service/excelUtil.service.ts +15 -15
  417. package/src/utils/service/file-util.service.ts +11 -11
  418. package/src/utils/service/json-util.service.ts +23 -23
  419. package/src/utils/service/loggingUtil.service.ts +88 -88
  420. package/src/utils/service/reflection-helper.service.ts +62 -62
  421. package/src/utils/service/wbsCodeGen.service.ts +8 -8
  422. package/src/utils/utils.module.ts +27 -27
  423. package/tsconfig.build.json +4 -4
  424. package/tsconfig.json +24 -24
  425. package/.claude/settings.local.json +0 -26
  426. package/.idea/copilot.data.migration.agent.xml +0 -6
  427. package/.idea/copilot.data.migration.ask.xml +0 -6
  428. package/.idea/copilot.data.migration.ask2agent.xml +0 -6
  429. package/.idea/copilot.data.migration.edit.xml +0 -6
  430. package/.idea/misc.xml +0 -6
  431. package/server.log +0 -850
@@ -50,9 +50,9 @@ let EntityServiceImpl = class EntityServiceImpl {
50
50
  maxSeqNo = Number(maxSeqNo) + 1;
51
51
  entityData.code = entityData.entity_type + maxSeqNo;
52
52
  }
53
- const statusList = await repo.query(`SELECT id
54
- FROM frm_list_master_items
55
- WHERE code = $1
53
+ const statusList = await repo.query(`SELECT id
54
+ FROM frm_list_master_items
55
+ WHERE code = $1
56
56
  AND organization_id = $2`, [global_constant_1.STATUS_ACTIVE, loggedInUser?.organization_id || 0]);
57
57
  console.log('Status List:', statusList);
58
58
  console.log(`status_code,${global_constant_1.STATUS_ACTIVE},statusList, ${loggedInUser?.organization_id}`);
@@ -147,12 +147,12 @@ let ResolverService = class ResolverService {
147
147
  displayValue === '') {
148
148
  return displayValue;
149
149
  }
150
- const [attr] = await this.dataSource.query(`SELECT * FROM frm_entity_attribute
150
+ const [attr] = await this.dataSource.query(`SELECT * FROM frm_entity_attribute
151
151
  WHERE mapped_entity_type = $1 AND organization_id = $2 AND attribute_key = $3`, [entityType, loggedInUser.organization_id, attrKey]);
152
152
  if (!attr)
153
153
  return displayValue;
154
154
  if (attr.data_source_type === 'entity') {
155
- const [entityDef] = await this.dataSource.query(`SELECT * FROM frm_entity_master
155
+ const [entityDef] = await this.dataSource.query(`SELECT * FROM frm_entity_master
156
156
  WHERE mapped_entity_type = $1 AND organization_id = $2`, [attr.datasource_list, loggedInUser.organization_id]);
157
157
  if (!entityDef)
158
158
  return displayValue;
@@ -167,7 +167,7 @@ let ResolverService = class ResolverService {
167
167
  return item?.id ?? displayValue;
168
168
  }
169
169
  else if (attr.data_source_type === 'master') {
170
- const [item] = await this.dataSource.query(`SELECT id FROM frm_list_master_items
170
+ const [item] = await this.dataSource.query(`SELECT id FROM frm_list_master_items
171
171
  WHERE ${attr.data_source_attribute} = $1 AND organization_id = $2 AND listtype = $3`, [displayValue, loggedInUser.organization_id, attr.datasource_list]);
172
172
  return item?.id ?? displayValue;
173
173
  }
@@ -60,10 +60,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
60
60
  async getMenuItems(moduleCodes, appcode, levelType) {
61
61
  return await this.menuData
62
62
  .createQueryBuilder('menu')
63
- .leftJoin('sso_module', 'module', `
64
- menu.module_code = module.module_code
65
- AND LOWER(menu.appcode) = LOWER(module.appcode)
66
- AND menu.level_type = module.level_type
63
+ .leftJoin('sso_module', 'module', `
64
+ menu.module_code = module.module_code
65
+ AND LOWER(menu.appcode) = LOWER(module.appcode)
66
+ AND menu.level_type = module.level_type
67
67
  `)
68
68
  .where('menu.module_code IN (:...moduleCodes)', { moduleCodes })
69
69
  .andWhere('LOWER(menu.appcode) = LOWER(:appcode)', { appcode })
@@ -82,11 +82,11 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
82
82
  async resolveUserRoles(userId, appcode, levelType, levelId) {
83
83
  const repo = this.dataSource.getRepository(user_role_mapping_entity_1.UserRoleMapping);
84
84
  if (userId) {
85
- const getUserDetails = await this.dataSource.query(`
86
- SELECT * from sso_user where id = $1
85
+ const getUserDetails = await this.dataSource.query(`
86
+ SELECT * from sso_user where id = $1
87
87
  `, [userId]);
88
- const getUserUrm = await this.dataSource.query(`
89
- SELECT * from sso_user_role_mapping where user_id = $1 and appcode = $2
88
+ const getUserUrm = await this.dataSource.query(`
89
+ SELECT * from sso_user_role_mapping where user_id = $1 and appcode = $2
90
90
  `, [userId, appcode]);
91
91
  if (getUserDetails.length > 0 &&
92
92
  getUserDetails[0].organization_id === 1) {
@@ -105,10 +105,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
105
105
  if (roles.length)
106
106
  return roles.map((r) => r.urm_role_id);
107
107
  if (levelType === 'SCH') {
108
- const [sch] = await this.dataSource.query(`
109
- SELECT s.brand_id, s.organization_id
110
- FROM sso_school s
111
- WHERE s.id = $1
108
+ const [sch] = await this.dataSource.query(`
109
+ SELECT s.brand_id, s.organization_id
110
+ FROM sso_school s
111
+ WHERE s.id = $1
112
112
  `, [levelId]);
113
113
  const brandId = sch?.brand_id;
114
114
  const orgId = sch?.organization_id;
@@ -67,12 +67,12 @@ let NotificationsService = class NotificationsService {
67
67
  isReadFilter = isRead ? '1' : '0';
68
68
  }
69
69
  let paramIndex = 1;
70
- let sql = `
71
- SELECT n.*
72
- FROM frm_notification n
73
- WHERE n.user_id = $${paramIndex}
74
- AND n.level_id = $${paramIndex + 1}
75
- AND n.level_type = $${paramIndex + 2}
70
+ let sql = `
71
+ SELECT n.*
72
+ FROM frm_notification n
73
+ WHERE n.user_id = $${paramIndex}
74
+ AND n.level_id = $${paramIndex + 1}
75
+ AND n.level_type = $${paramIndex + 2}
76
76
  `;
77
77
  const params = [
78
78
  String(id),
@@ -107,10 +107,10 @@ let NotificationsService = class NotificationsService {
107
107
  }
108
108
  async markAllAsRead(loggedInUser) {
109
109
  const { id, level_id, level_type } = loggedInUser;
110
- const query = `
111
- UPDATE frm_notification
112
- SET is_read = 1
113
- WHERE user_id = $1 AND level_id = $2 AND level_type = $3 AND is_read = 0
110
+ const query = `
111
+ UPDATE frm_notification
112
+ SET is_read = 1
113
+ WHERE user_id = $1 AND level_id = $2 AND level_type = $3 AND is_read = 0
114
114
  `;
115
115
  const params = [id, level_id, level_type];
116
116
  const result = await this.dataSource.query(query, params);
@@ -58,27 +58,27 @@ let LoginController = class LoginController {
58
58
  try {
59
59
  const actualState = state.replace('gmail_config:', '');
60
60
  const result = await this.integrationService.handleGmailTokensCallback(email, googleAccessToken, googleRefreshToken, actualState);
61
- return res.send(`<html><body><script>
62
- window.opener.postMessage({ type: 'CONFIG_SUCCESS' }, '*');
63
- window.close();
61
+ return res.send(`<html><body><script>
62
+ window.opener.postMessage({ type: 'CONFIG_SUCCESS' }, '*');
63
+ window.close();
64
64
  </script> <p>Configuration successful. You can close this window.</p> </body></html>`);
65
65
  }
66
66
  catch (error) {
67
- return res.send(`
68
- <html>
69
- <body>
70
- <script>
71
- if (window.opener) {
72
- window.opener.postMessage({
73
- type: "CONFIG_FAILED",
74
- error: "${error.message || 'Something went wrong'}"
75
- }, "*");
76
- }
77
- window.close();
78
- </script>
79
- <p>Configuration failed. Please close this window.</p>
80
- </body>
81
- </html>
67
+ return res.send(`
68
+ <html>
69
+ <body>
70
+ <script>
71
+ if (window.opener) {
72
+ window.opener.postMessage({
73
+ type: "CONFIG_FAILED",
74
+ error: "${error.message || 'Something went wrong'}"
75
+ }, "*");
76
+ }
77
+ window.close();
78
+ </script>
79
+ <p>Configuration failed. Please close this window.</p>
80
+ </body>
81
+ </html>
82
82
  `);
83
83
  }
84
84
  }
@@ -76,10 +76,10 @@ let RoleService = class RoleService extends entity_service_impl_service_1.Entity
76
76
  if (!existingRole) {
77
77
  return { success: false, error: 'Role not found' };
78
78
  }
79
- const associatedUsers = await this.entityManager.query(`SELECT map.*
80
- FROM sso_user_role_mapping map
81
- JOIN sso_user usr ON map.user_id = usr.id
82
- WHERE usr.status = ${resolveStatus.id}
79
+ const associatedUsers = await this.entityManager.query(`SELECT map.*
80
+ FROM sso_user_role_mapping map
81
+ JOIN sso_user usr ON map.user_id = usr.id
82
+ WHERE usr.status = ${resolveStatus.id}
83
83
  and map.role_id = ${existingRole?.id}`);
84
84
  if (associatedUsers.length > 0) {
85
85
  return {
@@ -71,8 +71,8 @@ let UserSessionService = class UserSessionService {
71
71
  };
72
72
  let getUserDetails;
73
73
  if (currentUser) {
74
- getUserDetails = await this.dataSource.query(`
75
- SELECT * from sso_user where id = $1
74
+ getUserDetails = await this.dataSource.query(`
75
+ SELECT * from sso_user where id = $1
76
76
  `, [currentUser.id]);
77
77
  }
78
78
  if (getUserDetails[0].organization_id == 1 && payload.level_type == 'ORG') {
@@ -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 frm_list_master
30
- WHERE organization_id = $1 AND source = 'master'
27
+ const result = await this.dataSource.query(`
28
+ SELECT name, type
29
+ FROM frm_list_master
30
+ WHERE organization_id = $1 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 frm_list_master_items
46
- WHERE listtype = $1 AND organization_id = $2
43
+ const result = await this.dataSource.query(`
44
+ SELECT name, id
45
+ FROM frm_list_master_items
46
+ WHERE listtype = $1 AND organization_id = $2
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 frm_wf_stage_action_mapping
58
- WHERE stage_id = $1
55
+ const stageActions = await this.dataSource.query(`
56
+ SELECT id, action_id
57
+ FROM frm_wf_stage_action_mapping
58
+ WHERE stage_id = $1
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 frm_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 frm_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 = {};
@@ -128,10 +128,10 @@ let ActionRepository = class ActionRepository {
128
128
  return enrichedResult;
129
129
  }
130
130
  async getDependentActions(loggedInUser, stage_id, action_id) {
131
- const stageActions = await this.dataSource.query(`
132
- SELECT action_id
133
- FROM frm_wf_stage_action_mapping
134
- WHERE stage_id = $1
131
+ const stageActions = await this.dataSource.query(`
132
+ SELECT action_id
133
+ FROM frm_wf_stage_action_mapping
134
+ WHERE stage_id = $1
135
135
  `, [stage_id]);
136
136
  if (!stageActions?.length)
137
137
  return [];
@@ -30,17 +30,17 @@ let CommTemplateRepository = class CommTemplateRepository {
30
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 frm_wf_action
35
- WHERE id = $1 AND organization_id = $2
33
+ const [actionResult] = await this.dataSource.query(`SELECT is_template
34
+ FROM frm_wf_action
35
+ WHERE id = $1 AND organization_id = $2
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 frm_wf_comm_template
42
- SET is_template = $1
43
- WHERE mapped_entity_type = $2
41
+ await this.dataSource.query(`UPDATE frm_wf_comm_template
42
+ SET is_template = $1
43
+ WHERE mapped_entity_type = $2
44
44
  AND organization_id = $3 AND level_id = $4 AND level_type=$5`, [is_template, entity_type, organization_id, level_id, level_type]);
45
45
  }
46
46
  const whereCondition = {
@@ -17,8 +17,8 @@ let FormMasterRepository = class FormMasterRepository {
17
17
  this.dataSource = dataSource;
18
18
  }
19
19
  async getForms(organization_id, source_entity_type) {
20
- const forms = await this.dataSource.query(`SELECT fm.id as fm_id, fm.name as fm_form_name
21
- FROM frm_entity_view fm
20
+ const forms = await this.dataSource.query(`SELECT fm.id as fm_id, fm.name as fm_form_name
21
+ FROM frm_entity_view fm
22
22
  WHERE fm.organization_id = $1 AND fm.mapped_entity_type = $2`, [organization_id, source_entity_type]);
23
23
  const formatted = forms.map((form) => ({
24
24
  label: form.fm_form_name,
@@ -88,28 +88,28 @@ let StageGroupRepository = class StageGroupRepository {
88
88
  .map((_, idx) => `$${idx + 1}`)
89
89
  .join(", ");
90
90
  const params_task = [...stageIds];
91
- const taskCounts = await this.dataSource.query(`
92
- SELECT stage_id, COUNT(*) AS task_count
93
- FROM frm_wf_task_data
94
- WHERE stage_id IN (${stagePlaceholders})
95
- AND is_system = FALSE
96
- AND mapped_entity_id = ${lead_id}
97
- GROUP BY stage_id
91
+ const taskCounts = await this.dataSource.query(`
92
+ SELECT stage_id, COUNT(*) AS task_count
93
+ FROM frm_wf_task_data
94
+ WHERE stage_id IN (${stagePlaceholders})
95
+ AND is_system = FALSE
96
+ AND mapped_entity_id = ${lead_id}
97
+ GROUP BY stage_id
98
98
  `, params_task);
99
- const meetingCounts = await this.dataSource.query(`
100
- SELECT stage_id, COUNT(*) AS meeting_count
101
- FROM crm_lead_meeting
102
- WHERE stage_id IN (${stagePlaceholders})
103
- AND mapped_entity_id = ${lead_id}
104
- GROUP BY stage_id
99
+ const meetingCounts = await this.dataSource.query(`
100
+ SELECT stage_id, COUNT(*) AS meeting_count
101
+ FROM crm_lead_meeting
102
+ WHERE stage_id IN (${stagePlaceholders})
103
+ AND mapped_entity_id = ${lead_id}
104
+ GROUP BY stage_id
105
105
  `, params_task);
106
- const sendCommCounts = await this.dataSource.query(`
107
- SELECT stage_id, COUNT(*) AS send_comm_count
108
- FROM crm_lead_communication
109
- WHERE stage_id IN (${stagePlaceholders})
110
- AND mapped_entity_id = ${lead_id}
111
- AND type IN ('SEND','LOG')
112
- GROUP BY stage_id
106
+ const sendCommCounts = await this.dataSource.query(`
107
+ SELECT stage_id, COUNT(*) AS send_comm_count
108
+ FROM crm_lead_communication
109
+ WHERE stage_id IN (${stagePlaceholders})
110
+ AND mapped_entity_id = ${lead_id}
111
+ AND type IN ('SEND','LOG')
112
+ GROUP BY stage_id
113
113
  `, params_task);
114
114
  const taskCountMap = new Map(taskCounts.map((r) => [Number(r.stage_id), Number(r.task_count)]));
115
115
  const meetingCountMap = new Map(meetingCounts.map((r) => [Number(r.stage_id), Number(r.meeting_count)]));
@@ -107,26 +107,26 @@ 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.id AS mapping_id,
114
- m.stage_id,
115
- ac.code AS action_category_code
116
- FROM frm_wf_action a
117
- LEFT JOIN frm_wf_stage_action_mapping m
118
- ON a.id = m.action_id::bigint
119
- LEFT JOIN frm_wf_action_category ac
120
- ON a.action_category::bigint = ac.id
121
- WHERE m.stage_id::bigint = $1
110
+ const result = await this.dataSource.query(`
111
+ SELECT
112
+ a.*,
113
+ m.id AS mapping_id,
114
+ m.stage_id,
115
+ ac.code AS action_category_code
116
+ FROM frm_wf_action a
117
+ LEFT JOIN frm_wf_stage_action_mapping m
118
+ ON a.id = m.action_id::bigint
119
+ LEFT JOIN frm_wf_action_category ac
120
+ ON a.action_category::bigint = ac.id
121
+ WHERE m.stage_id::bigint = $1
122
122
  `, [Number(stageId)]);
123
123
  for (const item of result) {
124
124
  if (item.action_category_code === 'SDFM') {
125
- const actionData = await this.dataSource.query(`
126
- SELECT arm.form_id
127
- FROM frm_wf_action_resources_mapping arm
128
- WHERE arm.stg_act_mapping_id = $1 and form_id IS NOT NULL
129
- LIMIT 1
125
+ const actionData = await this.dataSource.query(`
126
+ SELECT arm.form_id
127
+ FROM frm_wf_action_resources_mapping arm
128
+ WHERE arm.stg_act_mapping_id = $1 and form_id IS NOT NULL
129
+ LIMIT 1
130
130
  `, [item.mapping_id]);
131
131
  item.form_id = actionData[0]?.form_id || null;
132
132
  }
@@ -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 frm_wf_stage_group g
70
- INNER JOIN frm_wf_stage s ON s.stage_group_id = g.id
71
- WHERE g.workflow_id = $1 AND g.organization_id = $2 AND g.id = $3
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 frm_wf_stage_group g
70
+ INNER JOIN frm_wf_stage s ON s.stage_group_id = g.id
71
+ WHERE g.workflow_id = $1 AND g.organization_id = $2 AND g.id = $3
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 [];
@@ -29,9 +29,9 @@ let ActionTemplateMappingService = class ActionTemplateMappingService extends en
29
29
  async getTemplateByMode(stage_id, action_id, loggedInUser, mode) {
30
30
  let stageAction = [];
31
31
  if (action_id != 0) {
32
- stageAction = await this.dataSource.query(`
33
- SELECT id FROM frm_wf_stage_action_mapping
34
- WHERE action_id = $1
32
+ stageAction = await this.dataSource.query(`
33
+ SELECT id FROM frm_wf_stage_action_mapping
34
+ WHERE action_id = $1
35
35
  `, [action_id]);
36
36
  }
37
37
  else {
@@ -82,23 +82,23 @@ let ActionTemplateMappingService = class ActionTemplateMappingService extends en
82
82
  return [];
83
83
  const stgActMappingId = stageAction[0].id;
84
84
  if (!mode) {
85
- const getModeFromAction = await this.dataSource.query(`
86
- SELECT mode FROM frm_wf_action
87
- WHERE id = $1
85
+ const getModeFromAction = await this.dataSource.query(`
86
+ SELECT mode FROM frm_wf_action
87
+ WHERE id = $1
88
88
  `, [action_id]);
89
89
  mode = getModeFromAction[0]?.mode;
90
90
  }
91
- const templates = await this.dataSource.query(`
92
- SELECT template_code FROM frm_wf_action_resources_mapping
93
- WHERE stg_act_mapping_id = $1
91
+ const templates = await this.dataSource.query(`
92
+ SELECT template_code FROM frm_wf_action_resources_mapping
93
+ WHERE stg_act_mapping_id = $1
94
94
  `, [stgActMappingId]);
95
95
  const templateCodes = templates.map((t) => t.template_code);
96
96
  if (!templateCodes.length)
97
97
  return [];
98
- const commTemplates = await this.dataSource.query(`
99
- SELECT code as value, name as label , id
100
- FROM frm_wf_comm_template
101
- WHERE code IN ($1) AND mode = $2 AND organization_id = $3 AND level_type = $4 AND level_id = $5 AND status IN (SELECT id FROM frm_list_master_items WHERE code = 'STATUS_ACTIVE' AND organization_id = $6)
98
+ const commTemplates = await this.dataSource.query(`
99
+ SELECT code as value, name as label , id
100
+ FROM frm_wf_comm_template
101
+ WHERE code IN ($1) AND mode = $2 AND organization_id = $3 AND level_type = $4 AND level_id = $5 AND status IN (SELECT id FROM frm_list_master_items WHERE code = 'STATUS_ACTIVE' AND organization_id = $6)
102
102
  `, [
103
103
  templateCodes,
104
104
  mode,
@@ -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 frm_wf_action_resources_mapping
30
- WHERE stg_act_mapping_id IN (
31
- SELECT id
32
- FROM frm_wf_stage_action_mapping
33
- WHERE action_id = $1 AND entity_type = 'WFSA'
28
+ const result = await this.dataSource.query(`SELECT template_code, form_id
29
+ FROM frm_wf_action_resources_mapping
30
+ WHERE stg_act_mapping_id IN (
31
+ SELECT id
32
+ FROM frm_wf_stage_action_mapping
33
+ WHERE action_id = $1 AND entity_type = 'WFSA'
34
34
  )`, [actionData.id]);
35
35
  const templates = result
36
36
  .filter((t) => t.template_code !== null)
@@ -136,7 +136,7 @@ let ActionService = class ActionService extends entity_service_impl_service_1.En
136
136
  return action;
137
137
  }
138
138
  async deleteEntity(entityType, id, loggedInUser) {
139
- await this.dataSource.query(`DELETE FROM frm_wf_action_template_mapping WHERE stg_act_mapping_id IN (SELECT
139
+ await this.dataSource.query(`DELETE FROM frm_wf_action_template_mapping WHERE stg_act_mapping_id IN (SELECT
140
140
  id FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type = 'WFSA')`, [id]);
141
141
  await this.dataSource.query(`DELETE FROM frm_wf_stage_action_mapping WHERE action_id = $1 AND entity_type ='WFSA'`, [id]);
142
142
  const deleteAction = await super.deleteEntity(entityType, id, loggedInUser);
@@ -29,8 +29,8 @@ let EntityModificationService = class EntityModificationService extends entity_s
29
29
  throw new common_1.NotFoundException('Entity metadata not found in frm_entity_master');
30
30
  }
31
31
  const tableName = entityMeta.db_table_name;
32
- const [entityRow] = await this.dataSource.query(`
33
- SELECT * FROM ${tableName} WHERE id = $1
32
+ const [entityRow] = await this.dataSource.query(`
33
+ SELECT * FROM ${tableName} WHERE id = $1
34
34
  `, [mapped_entity_id]);
35
35
  if (!entityRow) {
36
36
  throw new common_1.NotFoundException(`No record found in ${tableName} with ID ${mapped_entity_id}`);
@@ -42,8 +42,8 @@ let StageGroupService = class StageGroupService extends entity_service_impl_serv
42
42
  }
43
43
  async getAllStageGroup(workflow_id, organization_id) {
44
44
  const allStageGroup = await this.stageGroupRepository.getAllStageGroup(workflow_id, organization_id);
45
- const statusListMaster = await this.dataSource.query(`SELECT id, name
46
- FROM frm_list_master_items
45
+ const statusListMaster = await this.dataSource.query(`SELECT id, name
46
+ FROM frm_list_master_items
47
47
  WHERE listtype = 'STS' AND organization_id = $1`, [organization_id]);
48
48
  const statusMap = new Map(statusListMaster.map((s) => [String(s.id), s.name]));
49
49
  for (const stage of allStageGroup) {
@@ -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 frm_list_master_items
38
+ const statusListMaster = await this.dataSource.query(`SELECT id, name
39
+ FROM frm_list_master_items
40
40
  WHERE listtype = 'STS' AND organization_id = $1`, [organization_id]);
41
41
  const statusMap = new Map(statusListMaster.map((s) => [String(s.id), s.name]));
42
42
  for (const stage of allStages) {
@@ -101,24 +101,24 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
101
101
  return createdEntity;
102
102
  }
103
103
  async updateEntity(entityData, loggedInUser, appcode) {
104
- const taskStatusQuery = `
105
- SELECT name
106
- FROM frm_list_master_items
107
- WHERE id = $1
108
- AND organization_id = $2
109
- AND listtype = 'TKST'
110
- LIMIT 1;
104
+ const taskStatusQuery = `
105
+ SELECT name
106
+ FROM frm_list_master_items
107
+ WHERE id = $1
108
+ AND organization_id = $2
109
+ AND listtype = 'TKST'
110
+ LIMIT 1;
111
111
  `;
112
112
  const statusRows = await this.dataSource.query(taskStatusQuery, [
113
113
  entityData.status,
114
114
  loggedInUser.organization_id,
115
115
  ]);
116
- const oldStatusQuery = `
117
- SELECT *
118
- FROM frm_wf_task_data
119
- WHERE id = $1
120
- AND organization_id = $2
121
- LIMIT 1;
116
+ const oldStatusQuery = `
117
+ SELECT *
118
+ FROM frm_wf_task_data
119
+ WHERE id = $1
120
+ AND organization_id = $2
121
+ LIMIT 1;
122
122
  `;
123
123
  const [oldRow] = await this.dataSource.query(oldStatusQuery, [
124
124
  entityData.id,
@@ -216,27 +216,27 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
216
216
  params.push(mandatory ? "1" : "0");
217
217
  }
218
218
  if (overdue) {
219
- whereClauses.push(`
220
- (
221
- t.due_date < CURRENT_DATE
222
- OR (t.due_date = CURRENT_DATE AND t.due_time < CURRENT_TIME)
223
- )
219
+ whereClauses.push(`
220
+ (
221
+ t.due_date < CURRENT_DATE
222
+ OR (t.due_date = CURRENT_DATE AND t.due_time < CURRENT_TIME)
223
+ )
224
224
  `);
225
225
  whereClauses.push(`t.is_done::text = $${idx++}`);
226
226
  params.push("0");
227
227
  }
228
- const sql = `
229
- SELECT
230
- t.*,
231
- sg.name AS stage_group_name,
232
- s.name AS stage_name,
233
- a.name AS action_name
234
- FROM frm_wf_task_data t
235
- LEFT JOIN frm_wf_stage s ON t.stage_id::text = s.id::text
236
- LEFT JOIN frm_wf_stage_group sg ON s.stage_group_id = sg.id
237
- LEFT JOIN frm_wf_action a ON t.action_id::text = a.id::text
238
- WHERE ${whereClauses.join(" AND ")}
239
- ORDER BY t.created_date DESC
228
+ const sql = `
229
+ SELECT
230
+ t.*,
231
+ sg.name AS stage_group_name,
232
+ s.name AS stage_name,
233
+ a.name AS action_name
234
+ FROM frm_wf_task_data t
235
+ LEFT JOIN frm_wf_stage s ON t.stage_id::text = s.id::text
236
+ LEFT JOIN frm_wf_stage_group sg ON s.stage_group_id = sg.id
237
+ LEFT JOIN frm_wf_action a ON t.action_id::text = a.id::text
238
+ WHERE ${whereClauses.join(" AND ")}
239
+ ORDER BY t.created_date DESC
240
240
  `;
241
241
  const taskData = await this.dataSource.query(sql, params);
242
242
  if (taskData?.length) {
@@ -258,11 +258,11 @@ let TaskService = class TaskService extends entity_service_impl_service_1.Entity
258
258
  }
259
259
  if (!taskData.length)
260
260
  return [];
261
- const statusSql = `
262
- SELECT id, name
263
- FROM frm_list_master_items
264
- WHERE organization_id = $1
265
- AND listtype = 'TKST'
261
+ const statusSql = `
262
+ SELECT id, name
263
+ FROM frm_list_master_items
264
+ WHERE organization_id = $1
265
+ AND listtype = 'TKST'
266
266
  `;
267
267
  const allStatuses = await this.dataSource.query(statusSql, [
268
268
  loggedInUser.organization_id,