rez_core 5.0.54 → 5.0.55

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 (424) hide show
  1. package/.claude/settings.local.json +26 -0
  2. package/.idea/250218_nodejs_core.iml +8 -11
  3. package/.idea/codeStyles/Project.xml +58 -58
  4. package/.idea/codeStyles/codeStyleConfig.xml +4 -4
  5. package/.idea/copilot.data.migration.agent.xml +6 -0
  6. package/.idea/copilot.data.migration.ask.xml +6 -0
  7. package/.idea/copilot.data.migration.ask2agent.xml +6 -0
  8. package/.idea/copilot.data.migration.edit.xml +6 -0
  9. package/.idea/inspectionProfiles/Project_Default.xml +1 -1
  10. package/.idea/misc.xml +6 -0
  11. package/.idea/modules.xml +7 -7
  12. package/.idea/prettier.xml +5 -5
  13. package/.idea/vcs.xml +5 -5
  14. package/.prettierrc +3 -3
  15. package/README.md +99 -99
  16. package/dist/module/auth/guards/role.guard.js +3 -3
  17. package/dist/module/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 +22 -22
  21. package/dist/module/integration/examples/usage.example.js +9 -9
  22. package/dist/module/integration/service/integration.service.js +1 -1
  23. package/dist/module/integration/service/wrapper.service.js +26 -26
  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-relation.service.js +9 -9
  31. package/dist/module/meta/service/entity-service-impl.service.js +3 -3
  32. package/dist/module/meta/service/resolver.service.js +3 -3
  33. package/dist/module/module/repository/menu.repository.js +17 -17
  34. package/dist/module/notification/service/notification.service.js +10 -10
  35. package/dist/module/user/controller/login.controller.js +18 -18
  36. package/dist/module/user/service/role.service.js +4 -4
  37. package/dist/module/user/service/user-session.service.js +2 -2
  38. package/dist/module/workflow/repository/action-category.repository.js +5 -5
  39. package/dist/module/workflow/repository/action-category.repository.js.map +1 -1
  40. package/dist/module/workflow/repository/action.repository.js +20 -20
  41. package/dist/module/workflow/repository/comm-template.repository.js +6 -6
  42. package/dist/module/workflow/repository/form-master.repository.js +2 -2
  43. package/dist/module/workflow/repository/stage-group.repository.js +20 -20
  44. package/dist/module/workflow/repository/stage-movement.repository.js +17 -17
  45. package/dist/module/workflow/repository/stage.repository.js +8 -8
  46. package/dist/module/workflow/service/action-template-mapping.service.js +13 -13
  47. package/dist/module/workflow/service/action.service.js +7 -7
  48. package/dist/module/workflow/service/entity-modification.service.js +2 -2
  49. package/dist/module/workflow/service/stage-group.service.js +2 -2
  50. package/dist/module/workflow/service/stage.service.js +2 -2
  51. package/dist/module/workflow/service/task.service.js +35 -35
  52. package/dist/module/workflow/service/workflow-list-master.service.js +15 -15
  53. package/dist/module/workflow/service/workflow-meta.service.js +26 -26
  54. package/dist/module/workflow/service/workflow.service.js +2 -2
  55. package/dist/module/workflow-automation/service/schedule-handler.service.js +9 -9
  56. package/dist/module/workflow-schedule/processors/schedule.processor.js +4 -4
  57. package/dist/module/workflow-schedule/service/workflow-schedule.service.js +9 -9
  58. package/dist/tsconfig.build.tsbuildinfo +1 -1
  59. package/dist/utils/service/reflection-helper.service.js +2 -2
  60. package/docs/modules/event-driven-integration-design.md +91 -91
  61. package/docs/modules/integration.md +250 -250
  62. package/eslint.config.mjs +34 -34
  63. package/nest-cli.json +14 -14
  64. package/package.json +124 -124
  65. package/server.log +850 -0
  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 +91 -91
  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 +1239 -1239
  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 -37
  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 -75
  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 +535 -535
  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 +821 -821
  248. package/src/module/meta/service/entity-list.service.ts +205 -205
  249. package/src/module/meta/service/entity-master.service.ts +171 -171
  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 +222 -222
  260. package/src/module/meta/service/preference.service.ts +16 -16
  261. package/src/module/meta/service/resolver.service.ts +291 -291
  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 +191 -191
  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 +195 -195
  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 +334 -334
  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 +331 -331
  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 +133 -133
  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
@@ -109,7 +109,7 @@ let IntegrationService = IntegrationService_1 = class IntegrationService {
109
109
  }
110
110
  async getAllIntegrationData(loggedInUser, integration_type) {
111
111
  try {
112
- const allIntegrationData = await this.dataSource.query(`SELECT *
112
+ const allIntegrationData = await this.dataSource.query(`SELECT *
113
113
  FROM frm_integration_master`);
114
114
  if (integration_type) {
115
115
  return allIntegrationData.filter((data) => data.integration_type.toLowerCase() ===
@@ -31,10 +31,10 @@ let WrapperService = WrapperService_1 = class WrapperService {
31
31
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `sendMailWrapper called. User: ${JSON.stringify(loggedInUser)}, Payload: ${JSON.stringify(payload)}`, [], []);
32
32
  const { level_id, level_type, organization_id } = loggedInUser;
33
33
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `Fetching configs for level_id=${level_id}, level_type=${level_type}`, [], []);
34
- const configs = await this.datasource.query(`SELECT * FROM frm_integration_config
35
- WHERE level_id = $1
36
- AND level_type = $2
37
- AND status = 1
34
+ const configs = await this.datasource.query(`SELECT * FROM frm_integration_config
35
+ WHERE level_id = $1
36
+ AND level_type = $2
37
+ AND status = 1
38
38
  AND integration_type = 'EMAIL'`, [level_id, level_type]);
39
39
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `Configs found: ${JSON.stringify(configs)}`, [], []);
40
40
  let templateCode;
@@ -70,9 +70,9 @@ let WrapperService = WrapperService_1 = class WrapperService {
70
70
  }
71
71
  else {
72
72
  this.loggingService.log('warn', 'wrapperService', 'sendMailWrapper', `No user-level configs found. Falling back to ORG-level`, [], []);
73
- const fallbackConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
74
- WHERE level_type = 'ORG'
75
- AND integration_type = 'EMAIL'
73
+ const fallbackConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
74
+ WHERE level_type = 'ORG'
75
+ AND integration_type = 'EMAIL'
76
76
  AND status = 1`);
77
77
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `ORG-level configs: ${JSON.stringify(fallbackConfigs)}`, [], []);
78
78
  if (!fallbackConfigs || fallbackConfigs.length === 0) {
@@ -130,17 +130,17 @@ let WrapperService = WrapperService_1 = class WrapperService {
130
130
  let resolvedTemplateId = entity?.templateId;
131
131
  if (entity.template_code) {
132
132
  this.loggingService.log('debug', 'wrapperService', 'sendCommunicationWrapperService', `Looking up template for code=${entity.template_code}, level_id=${level_id}, level_type=${level_type}`, [], []);
133
- let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
134
- WHERE code = $1
135
- AND level_id = $2
136
- AND level_type = $3
133
+ let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
134
+ WHERE code = $1
135
+ AND level_id = $2
136
+ AND level_type = $3
137
137
  LIMIT 1`, [entity.template_code, level_id, level_type]);
138
138
  if (!templates || templates.length === 0) {
139
139
  this.loggingService.log('warn', 'wrapperService', 'sendCommunicationWrapperService', `No template found for ${entity.template_code} at provided level. Falling back to ORG-level.`, [], []);
140
- templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
141
- WHERE code = $1
142
- AND level_type = 'ORG'
143
- AND organization_id = $2
140
+ templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
141
+ WHERE code = $1
142
+ AND level_type = 'ORG'
143
+ AND organization_id = $2
144
144
  LIMIT 1`, [entity.template_code, organization_id]);
145
145
  }
146
146
  if (templates && templates.length > 0) {
@@ -206,11 +206,11 @@ let WrapperService = WrapperService_1 = class WrapperService {
206
206
  };
207
207
  }
208
208
  this.loggingService.log('log', 'wrapperService', 'scheduleMeetingWrapper', `No user-level config found, checking ORG-level...`, [], []);
209
- const orgConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
210
- WHERE level_id = 1
211
- AND level_type = 'ORG'
212
- AND integration_type = 'EMAIL'
213
- AND app_code ='DEFAULT'
209
+ const orgConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
210
+ WHERE level_id = 1
211
+ AND level_type = 'ORG'
212
+ AND integration_type = 'EMAIL'
213
+ AND app_code ='DEFAULT'
214
214
  AND status = 1`, []);
215
215
  integrationConfig = await this.integrationService.getSingleActiveConfig(1, 'ORG', 'DEFAULT', 'EMAIL');
216
216
  this.loggingService.log('debug', 'wrapperService', 'scheduleMeetingWrapper', `ORG configs found: ${JSON.stringify(orgConfigs)}`, [], []);
@@ -228,8 +228,8 @@ let WrapperService = WrapperService_1 = class WrapperService {
228
228
  }
229
229
  async getConfigCred(configId) {
230
230
  this.loggingService.log('debug', 'wrapperService', 'getConfigCred', `Fetching config JSON for configId=${configId}`, [], []);
231
- const configRes = await this.datasource.query(`SELECT config_json
232
- FROM frm_integration_config
231
+ const configRes = await this.datasource.query(`SELECT config_json
232
+ FROM frm_integration_config
233
233
  WHERE id = $1`, [configId]);
234
234
  this.loggingService.log('debug', 'wrapperService', 'getConfigCred', `Config fetch result: ${JSON.stringify(configRes)}`, [], []);
235
235
  return configRes?.[0]?.config_json || null;
@@ -237,10 +237,10 @@ let WrapperService = WrapperService_1 = class WrapperService {
237
237
  async sendIcsInvite(payload, levelId, levelType, appCode, organizationId, mapped_entities) {
238
238
  this.loggingService.log('log', 'wrapperService', 'sendIcsInvite', `Generating ICS file. Payload: ${JSON.stringify(payload)}`, [], []);
239
239
  if (payload.template_code) {
240
- let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
241
- WHERE code = $1
242
- AND level_id = $2
243
- AND level_type = $3
240
+ let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
241
+ WHERE code = $1
242
+ AND level_id = $2
243
+ AND level_type = $3
244
244
  LIMIT 1`, [payload.template_code, levelId, levelType]);
245
245
  this.logger.log(`template by code ${JSON.stringify(payload)}`);
246
246
  if (templates && templates.length > 0) {
@@ -132,8 +132,8 @@ let ListMasterItemService = class ListMasterItemService extends entity_service_i
132
132
  return `Item with name ${code} deleted successfully from type ${listType}`;
133
133
  }
134
134
  async getListSourceType(loggedInUser, source) {
135
- const data = await this.dataSource.query(`SELECT name AS label, type AS value
136
- FROM frm_list_master
135
+ const data = await this.dataSource.query(`SELECT name AS label, type AS value
136
+ FROM frm_list_master
137
137
  WHERE organization_id = $1 AND source = $2`, [loggedInUser.organization_id, source]);
138
138
  return data;
139
139
  }
@@ -107,10 +107,10 @@ let FieldMapperService = class FieldMapperService extends entity_service_impl_se
107
107
  entity_data[field.mapped_entity_type];
108
108
  }
109
109
  else {
110
- const relations = await this.datasource.query(`SELECT target_entity_id
111
- FROM frm_entity_relation_data
112
- WHERE source_entity_type = $1
113
- AND source_entity_id = $2
110
+ const relations = await this.datasource.query(`SELECT target_entity_id
111
+ FROM frm_entity_relation_data
112
+ WHERE source_entity_type = $1
113
+ AND source_entity_id = $2
114
114
  AND target_entity_type = $3`, [parent_type, parent_id, field.mapped_entity_type]);
115
115
  const targetEntityIds = relations.map((r) => r.target_entity_id);
116
116
  this.loggingService.log('debug', 'fieldMapperService', 'resolveData', `Resolved targetEntityIds: ${targetEntityIds} for entityType: ${entityType}`, [parent_type, parent_id, field.mapped_entity_type], []);
@@ -18,9 +18,9 @@ let EntityUpdateRepository = class EntityUpdateRepository {
18
18
  }
19
19
  async updateEntityAttribute(entity, config) {
20
20
  const { entityType, organization_id } = entity;
21
- const result = await this.dataSource.query(`SELECT db_table_name
22
- FROM frm_entity_master
23
- WHERE mapped_entity_type = ?
21
+ const result = await this.dataSource.query(`SELECT db_table_name
22
+ FROM frm_entity_master
23
+ WHERE mapped_entity_type = ?
24
24
  and organization_id = ?`, [config.entity_type, organization_id]);
25
25
  if (!result.length) {
26
26
  throw new Error("Entity table not found");
@@ -29,8 +29,8 @@ let EntityMasterRepository = class EntityMasterRepository {
29
29
  async getEntityById(id) {
30
30
  let data = await this.entityMasterRepository.findOne({ where: { id } });
31
31
  if (data) {
32
- let listMasterData = await this.entityMasterRepository.query(`SELECT *
33
- FROM frm_list_master_items
32
+ let listMasterData = await this.entityMasterRepository.query(`SELECT *
33
+ FROM frm_list_master_items
34
34
  where id = $1`, [data?.status]);
35
35
  data.status = listMasterData?.[0].name;
36
36
  }
@@ -81,10 +81,10 @@ let EntityMasterRepository = class EntityMasterRepository {
81
81
  }
82
82
  async getAttributesOfTypeDate(entity_type, loggedInUser) {
83
83
  const organization_id = loggedInUser.organization_id;
84
- const attributes = await this.dataSource.query(`SELECT *
85
- FROM frm_entity_attribute
86
- WHERE mapped_entity_type = $1
87
- AND data_type = 'DATE'
84
+ const attributes = await this.dataSource.query(`SELECT *
85
+ FROM frm_entity_attribute
86
+ WHERE mapped_entity_type = $1
87
+ AND data_type = 'DATE'
88
88
  AND organization_id = $2`, [entity_type, organization_id]);
89
89
  const attributeList = attributes.map((attr) => ({
90
90
  label: attr.name,
@@ -43,19 +43,19 @@ let EntityDynamicService = class EntityDynamicService {
43
43
  if (!entityData.entity_type)
44
44
  entityData.entity_type = entityType;
45
45
  }
46
- const statusList = await this.dataSource.query(`
47
- SELECT id
48
- FROM frm_list_master_items
49
- WHERE code = $1
50
- AND organization_id = $2
46
+ const statusList = await this.dataSource.query(`
47
+ SELECT id
48
+ FROM frm_list_master_items
49
+ WHERE code = $1
50
+ AND organization_id = $2
51
51
  `, [global_constant_1.STATUS_ACTIVE, organizationId]);
52
52
  if (!entityData.status)
53
53
  entityData.status = statusList[0]?.id;
54
54
  if (!entityData.code && entityData.entity_type) {
55
- const result = await this.dataSource.query(`
56
- SELECT MAX(id) AS max_seq_no
57
- FROM ${tableName}
58
- WHERE entity_type = $1
55
+ const result = await this.dataSource.query(`
56
+ SELECT MAX(id) AS max_seq_no
57
+ FROM ${tableName}
58
+ WHERE entity_type = $1
59
59
  `, [entityData.entity_type]);
60
60
  let maxSeq = Number(result?.[0]?.max_seq_no) || 0;
61
61
  maxSeq++;
@@ -99,18 +99,18 @@ let EntityDynamicService = class EntityDynamicService {
99
99
  }
100
100
  const colList = columns.map((c) => `"${c}"`).join(', ');
101
101
  const placeholderList = placeholders.join(', ');
102
- const sql = `
103
- INSERT INTO ${tableName} (${colList})
104
- VALUES (${placeholderList}) RETURNING id
102
+ const sql = `
103
+ INSERT INTO ${tableName} (${colList})
104
+ VALUES (${placeholderList}) RETURNING id
105
105
  `;
106
106
  const result = await this.dataSource.query(sql, values);
107
107
  return result[0];
108
108
  }
109
109
  async createEntityWithRelation(entityType, data, loggedInUser) {
110
110
  const organizationId = loggedInUser.organization_id;
111
- const getRelation = await this.dataSource.query(`SELECT *
112
- FROM frm_entity_relation
113
- WHERE organization_id = $1
111
+ const getRelation = await this.dataSource.query(`SELECT *
112
+ FROM frm_entity_relation
113
+ WHERE organization_id = $1
114
114
  AND source_entity_type = $2`, [organizationId, entityType]);
115
115
  const { mappedEntities, ...mainData } = data;
116
116
  const createdEntityData = await this.createEntity(entityType, mainData, loggedInUser);
@@ -131,8 +131,8 @@ let EntityDynamicService = class EntityDynamicService {
131
131
  entity_type: targetEntityType,
132
132
  };
133
133
  const createdRelatedEntity = await this.createEntity(targetEntityType, itemWithRef, loggedInUser, mainID);
134
- await this.dataSource.query(`INSERT INTO frm_entity_relation_data (organization_id, source_entity_id, source_entity_type,
135
- target_entity_id, target_entity_type, relation_type)
134
+ await this.dataSource.query(`INSERT INTO frm_entity_relation_data (organization_id, source_entity_id, source_entity_type,
135
+ target_entity_id, target_entity_type, relation_type)
136
136
  VALUES ($1, $2, $3, $4, $5, $6)`, [
137
137
  organizationId,
138
138
  mainID,
@@ -154,9 +154,9 @@ let EntityDynamicService = class EntityDynamicService {
154
154
  }
155
155
  async getEntityWithRelation(entityType, id, loggedInUser) {
156
156
  const mainEntity = await this.getEntityByDataSource(entityType, id, loggedInUser);
157
- const relatedEntities = await this.dataSource.query(`SELECT *
158
- FROM frm_entity_relation_data
159
- WHERE source_entity_id = $1
157
+ const relatedEntities = await this.dataSource.query(`SELECT *
158
+ FROM frm_entity_relation_data
159
+ WHERE source_entity_id = $1
160
160
  AND target_entity_type IN (SELECT target_entity_type FROM frm_entity_relation WHERE source_entity_type = $2)`, [id, entityType]);
161
161
  const response = {
162
162
  entity_type: entityType,
@@ -186,9 +186,9 @@ let EntityDynamicService = class EntityDynamicService {
186
186
  const updatedMainEntity = await this.updateEntity(entityType, id, mainData, loggedInUser);
187
187
  const updatedRelations = {};
188
188
  if (mappedEntities) {
189
- const getRelationDefs = await this.dataSource.query(`SELECT *
190
- FROM frm_entity_relation
191
- WHERE organization_id = $1
189
+ const getRelationDefs = await this.dataSource.query(`SELECT *
190
+ FROM frm_entity_relation
191
+ WHERE organization_id = $1
192
192
  AND source_entity_type = $2`, [organizationId, entityType]);
193
193
  for (const [targetEntityType, rawEntityData] of Object.entries(mappedEntities)) {
194
194
  const relationDef = getRelationDefs.find((r) => r.target_entity_type === targetEntityType);
@@ -198,10 +198,10 @@ let EntityDynamicService = class EntityDynamicService {
198
198
  const entityArray = Array.isArray(rawEntityData)
199
199
  ? rawEntityData
200
200
  : [rawEntityData];
201
- const existingRelationsForType = await this.dataSource.query(`SELECT *
202
- FROM frm_entity_relation_data
203
- WHERE source_entity_type = $1
204
- AND source_entity_id = $2
201
+ const existingRelationsForType = await this.dataSource.query(`SELECT *
202
+ FROM frm_entity_relation_data
203
+ WHERE source_entity_type = $1
204
+ AND source_entity_id = $2
205
205
  AND target_entity_type = $3`, [entityType, id, targetEntityType]);
206
206
  const updatedEntities = [];
207
207
  for (const item of entityArray) {
@@ -216,9 +216,9 @@ let EntityDynamicService = class EntityDynamicService {
216
216
  const createdEntity = await this.createEntity(targetEntityType, item, loggedInUser, Number(id));
217
217
  targetEntityId = createdEntity.insertId || createdEntity.id;
218
218
  entityData = await this.getEntity(targetEntityType, targetEntityId, loggedInUser);
219
- await this.dataSource.query(`INSERT INTO frm_entity_relation_data
220
- (organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type,
221
- relation_type)
219
+ await this.dataSource.query(`INSERT INTO frm_entity_relation_data
220
+ (organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type,
221
+ relation_type)
222
222
  VALUES ($1, $2, $3, $4, $5, $6)`, [
223
223
  organizationId,
224
224
  id,
@@ -302,10 +302,10 @@ let EntityDynamicService = class EntityDynamicService {
302
302
  }
303
303
  const idPlaceholder = `$${idx}`;
304
304
  values.push(id);
305
- const updateQuery = `
306
- UPDATE ${tableName}
307
- SET ${updates.join(', ')}
308
- WHERE id = ${idPlaceholder}
305
+ const updateQuery = `
306
+ UPDATE ${tableName}
307
+ SET ${updates.join(', ')}
308
+ WHERE id = ${idPlaceholder}
309
309
  `;
310
310
  return await this.dataSource.query(updateQuery, values);
311
311
  }
@@ -316,8 +316,8 @@ let EntityDynamicService = class EntityDynamicService {
316
316
  const columns = validAttributes
317
317
  .map((attr) => `${attr.attribute_key}`)
318
318
  .join(', ');
319
- const selectQuery = `SELECT ${columns}
320
- FROM ${dataSource}
319
+ const selectQuery = `SELECT ${columns}
320
+ FROM ${dataSource}
321
321
  WHERE id = $1`;
322
322
  const result = await this.dataSource.query(selectQuery, [id]);
323
323
  if (!result.length)
@@ -346,8 +346,8 @@ let EntityDynamicService = class EntityDynamicService {
346
346
  const columns = validAttributes
347
347
  .map((attr) => `t.${attr.attribute_key}`)
348
348
  .join(', ');
349
- const selectQuery = `SELECT ${columns}
350
- FROM ${tableName} t
349
+ const selectQuery = `SELECT ${columns}
350
+ FROM ${tableName} t
351
351
  WHERE id = $1`;
352
352
  const result = await this.dataSource.query(selectQuery, [id]);
353
353
  if (!result.length)
@@ -409,16 +409,16 @@ let EntityDynamicService = class EntityDynamicService {
409
409
  async deleteEntity(entityType, id, loggedInUser) {
410
410
  const organizationId = loggedInUser.organization_id;
411
411
  const tableName = await this.getTableName(entityType, organizationId);
412
- const deleteQuery = `DELETE
413
- FROM \`${tableName}\`
412
+ const deleteQuery = `DELETE
413
+ FROM \`${tableName}\`
414
414
  WHERE id = $1`;
415
415
  const result = await this.dataSource.query(deleteQuery, [id]);
416
416
  return result;
417
417
  }
418
418
  async getEntitiesDropdownList(loggedInUser, appcode) {
419
419
  const organizationId = loggedInUser.organization_id;
420
- let query = `SELECT name as label, mapped_entity_type as value
421
- FROM frm_entity_master
420
+ let query = `SELECT name as label, mapped_entity_type as value
421
+ FROM frm_entity_master
422
422
  WHERE organization_id = $1`;
423
423
  const params = [organizationId];
424
424
  if (appcode) {
@@ -435,8 +435,8 @@ let EntityDynamicService = class EntityDynamicService {
435
435
  throw new Error(`Entity type '${entityType}' not found in frm_entity_master for org '${organizationId}'`);
436
436
  }
437
437
  const tableName = result.db_table_name;
438
- const seqResult = await this.dataSource.query(`SELECT MAX(id) AS max_seq_no
439
- FROM ${tableName}
438
+ const seqResult = await this.dataSource.query(`SELECT MAX(id) AS max_seq_no
439
+ FROM ${tableName}
440
440
  WHERE entity_type = $1`, [entityType]);
441
441
  let maxSeqNo = seqResult?.[0]?.max_seq_no
442
442
  ? Number(seqResult[0].max_seq_no)
@@ -75,11 +75,11 @@ let EntityListService = class EntityListService {
75
75
  }
76
76
  getQuery(source, groupByColumn) {
77
77
  if (groupByColumn) {
78
- return `SELECT ${groupByColumn} as tab_value, COUNT(1) AS tab_value_count
78
+ return `SELECT ${groupByColumn} as tab_value, COUNT(1) AS tab_value_count
79
79
  FROM ${source}`;
80
80
  }
81
81
  else {
82
- return `SELECT *
82
+ return `SELECT *
83
83
  FROM ${source}`;
84
84
  }
85
85
  }
@@ -123,7 +123,7 @@ let EntityListService = class EntityListService {
123
123
  return { query, argumentList: argsObjectList };
124
124
  }
125
125
  async getMaxSequenceNumber(tableName, parentType, parentId) {
126
- const query = `SELECT max(id) as seq_no
126
+ const query = `SELECT max(id) as seq_no
127
127
  FROM ${tableName} WHERE 1=1 `;
128
128
  const argsObjectList = [];
129
129
  const result = await this.entityManager.query(query, argsObjectList);
@@ -21,8 +21,8 @@ let EntityRelationService = class EntityRelationService extends entity_service_i
21
21
  this.entityMasterRepo = entityMasterRepo;
22
22
  }
23
23
  async getEntityRelations(entityType, loggedInUser, includeSelf = false) {
24
- const relations = await this.dataSource.query(`SELECT name as label, target_entity_type as value, id
25
- FROM frm_entity_relation
24
+ const relations = await this.dataSource.query(`SELECT name as label, target_entity_type as value, id
25
+ FROM frm_entity_relation
26
26
  WHERE source_entity_type = $1 AND organization_id = $2`, [entityType, loggedInUser.organization_id]);
27
27
  if (includeSelf) {
28
28
  const entity = await this.entityMasterRepo.getEntityByMappedEntityType(entityType, loggedInUser.organization_id);
@@ -53,13 +53,13 @@ let EntityRelationService = class EntityRelationService extends entity_service_i
53
53
  .join(", ");
54
54
  params.push(Number(orgId));
55
55
  const orgPlaceholder = `$${paramIndex}`;
56
- const sql = `
57
- SELECT DISTINCT source_entity_id
58
- FROM frm_entity_relation_data
59
- WHERE source_entity_type = ${sourceEntityParam}
60
- AND target_entity_type = ${targetEntityParam}
61
- AND target_entity_id IN (${idPlaceholders})
62
- AND organization_id = ${orgPlaceholder}
56
+ const sql = `
57
+ SELECT DISTINCT source_entity_id
58
+ FROM frm_entity_relation_data
59
+ WHERE source_entity_type = ${sourceEntityParam}
60
+ AND target_entity_type = ${targetEntityParam}
61
+ AND target_entity_id IN (${idPlaceholders})
62
+ AND organization_id = ${orgPlaceholder}
63
63
  `;
64
64
  const rows = await this.dataSource.query(sql, params);
65
65
  return rows.map((r) => Number(r.source_entity_id));
@@ -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}`);
@@ -161,12 +161,12 @@ let ResolverService = class ResolverService {
161
161
  displayValue === '') {
162
162
  return displayValue;
163
163
  }
164
- const [attr] = await this.dataSource.query(`SELECT * FROM frm_entity_attribute
164
+ const [attr] = await this.dataSource.query(`SELECT * FROM frm_entity_attribute
165
165
  WHERE mapped_entity_type = $1 AND organization_id = $2 AND attribute_key = $3`, [entityType, loggedInUser.organization_id, attrKey]);
166
166
  if (!attr)
167
167
  return displayValue;
168
168
  if (attr.data_source_type === 'entity') {
169
- const [entityDef] = await this.dataSource.query(`SELECT * FROM frm_entity_master
169
+ const [entityDef] = await this.dataSource.query(`SELECT * FROM frm_entity_master
170
170
  WHERE mapped_entity_type = $1 AND organization_id = $2`, [attr.datasource_list, loggedInUser.organization_id]);
171
171
  if (!entityDef)
172
172
  return displayValue;
@@ -181,7 +181,7 @@ let ResolverService = class ResolverService {
181
181
  return item?.id ?? displayValue;
182
182
  }
183
183
  else if (attr.data_source_type === 'master') {
184
- const [item] = await this.dataSource.query(`SELECT id FROM frm_list_master_items
184
+ const [item] = await this.dataSource.query(`SELECT id FROM frm_list_master_items
185
185
  WHERE ${attr.data_source_attribute} = $1 AND organization_id = $2 AND listtype = $3`, [displayValue, loggedInUser.organization_id, attr.datasource_list]);
186
186
  return item?.id ?? displayValue;
187
187
  }
@@ -62,10 +62,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
62
62
  async getMenuItems(moduleCodes, appcode, levelType) {
63
63
  return await this.menuData
64
64
  .createQueryBuilder('menu')
65
- .leftJoin('sso_module', 'module', `
66
- menu.module_code = module.module_code
67
- AND LOWER(menu.appcode) = LOWER(module.appcode)
68
- AND menu.level_type = module.level_type
65
+ .leftJoin('sso_module', 'module', `
66
+ menu.module_code = module.module_code
67
+ AND LOWER(menu.appcode) = LOWER(module.appcode)
68
+ AND menu.level_type = module.level_type
69
69
  `)
70
70
  .where('menu.module_code IN (:...moduleCodes)', { moduleCodes })
71
71
  .andWhere('LOWER(menu.appcode) = LOWER(:appcode)', { appcode })
@@ -84,16 +84,16 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
84
84
  async resolveUserRoles(userId, appcode, levelType, levelId) {
85
85
  const repo = this.reflectionHelper.getRepoService('UserRoleMapping');
86
86
  if (userId) {
87
- const getUserDetails = await this.dataSource.query(`
88
- SELECT *
89
- from sso_user
90
- where id = $1
87
+ const getUserDetails = await this.dataSource.query(`
88
+ SELECT *
89
+ from sso_user
90
+ where id = $1
91
91
  `, [userId]);
92
- const getUserUrm = await this.dataSource.query(`
93
- SELECT *
94
- from sso_user_role_mapping
95
- where user_id = $1
96
- and appcode = $2
92
+ const getUserUrm = await this.dataSource.query(`
93
+ SELECT *
94
+ from sso_user_role_mapping
95
+ where user_id = $1
96
+ and appcode = $2
97
97
  `, [userId, appcode]);
98
98
  if (getUserDetails.length > 0 &&
99
99
  getUserDetails[0].organization_id === 1) {
@@ -112,10 +112,10 @@ let MenuRepository = class MenuRepository extends typeorm_1.Repository {
112
112
  if (roles.length)
113
113
  return roles.map((r) => r.urm_role_id);
114
114
  if (levelType === 'SCH') {
115
- const [sch] = await this.dataSource.query(`
116
- SELECT s.brand_id, s.organization_id
117
- FROM sso_school s
118
- WHERE s.id = $1
115
+ const [sch] = await this.dataSource.query(`
116
+ SELECT s.brand_id, s.organization_id
117
+ FROM sso_school s
118
+ WHERE s.id = $1
119
119
  `, [levelId]);
120
120
  const brandId = sch?.brand_id;
121
121
  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') {
@@ -60,14 +60,14 @@ let ActionCategoryRepository = class ActionCategoryRepository {
60
60
  async actionscategoryinfo(entity_type) {
61
61
  const result = await this.actionCategoryRepository
62
62
  .createQueryBuilder('ac')
63
- .select(['ac.id', 'ac.name', 'ac.logo', 'ac.modalName'])
63
+ .select('ac.*')
64
64
  .where('ac.mapped_entity_type = :entityType', { entityType: entity_type })
65
65
  .getRawMany();
66
66
  const mapped = result.map((row) => ({
67
- label: row.ac_name,
68
- logo: row.ac_logo,
69
- modalName: row.ac_modalName,
70
- value: String(row.ac_id),
67
+ label: row.name,
68
+ logo: row.logo,
69
+ modalname: row.modalname,
70
+ value: String(row.id),
71
71
  }));
72
72
  return mapped.reduce((acc, { value, ...rest }) => {
73
73
  acc[value] = rest;