rez_core 5.0.76 → 5.0.77

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 (425) 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 +6 -0
  10. package/.idea/misc.xml +6 -0
  11. package/.idea/modules.xml +7 -7
  12. package/.idea/prettier.xml +6 -0
  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 +36 -36
  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 +33 -33
  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.d.ts +3 -1
  37. package/dist/module/user/service/role.service.js +15 -7
  38. package/dist/module/user/service/role.service.js.map +1 -1
  39. package/dist/module/user/service/user-session.service.js +2 -2
  40. package/dist/module/workflow/repository/action.repository.js +12 -12
  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 +18 -18
  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-automation/service/schedule-handler.service.js +9 -9
  55. package/dist/module/workflow-schedule/processors/schedule.processor.js +4 -4
  56. package/dist/module/workflow-schedule/service/workflow-schedule.service.js +9 -9
  57. package/dist/resources/properties.yaml.js +1 -1
  58. package/dist/table.config.d.ts +1 -1
  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 +125 -125
  66. package/server.log +850 -0
  67. package/src/app.controller.ts +12 -12
  68. package/src/app.module.ts +66 -66
  69. package/src/app.service.ts +8 -8
  70. package/src/config/bull.config.ts +69 -69
  71. package/src/config/config.module.ts +17 -17
  72. package/src/config/database.config.ts +48 -48
  73. package/src/constant/global.constant.ts +67 -67
  74. package/src/core.module.ts +91 -91
  75. package/src/decorators/roles.decorator.ts +7 -7
  76. package/src/dtos/response.dto.ts +6 -6
  77. package/src/dtos/response.ts +5 -5
  78. package/src/index.ts +1 -1
  79. package/src/module/auth/auth.module.ts +49 -49
  80. package/src/module/auth/controller/auth.controller.ts +28 -28
  81. package/src/module/auth/guards/google-auth.guard.ts +9 -9
  82. package/src/module/auth/guards/jwt.guard.ts +22 -22
  83. package/src/module/auth/guards/role.guard.ts +68 -68
  84. package/src/module/auth/services/auth.service.ts +50 -50
  85. package/src/module/auth/services/jwt.service.ts +11 -11
  86. package/src/module/auth/strategies/google.strategy.ts +54 -54
  87. package/src/module/auth/strategies/jwt.strategy.ts +58 -58
  88. package/src/module/auth/strategies/local.strategy.ts +13 -13
  89. package/src/module/dashboard/controller/dashboard.controller.ts +36 -36
  90. package/src/module/dashboard/dashboard.module.ts +21 -21
  91. package/src/module/dashboard/entity/dashboard_page_data.entity.ts +27 -27
  92. package/src/module/dashboard/entity/widget_master.entity.ts +18 -18
  93. package/src/module/dashboard/repository/dashboard.repository.ts +42 -42
  94. package/src/module/dashboard/service/dashboard.service.ts +73 -73
  95. package/src/module/dev/dev.module.ts +12 -12
  96. package/src/module/dev/service/dev.service.ts +7 -7
  97. package/src/module/enterprise/controller/organization.controller.ts +36 -36
  98. package/src/module/enterprise/enterprise.module.ts +30 -30
  99. package/src/module/enterprise/entity/enterprise.entity.ts +37 -37
  100. package/src/module/enterprise/entity/organization-app-mapping.entity.ts +13 -13
  101. package/src/module/enterprise/entity/organization.entity.ts +92 -92
  102. package/src/module/enterprise/repository/enterprise.repository.ts +31 -31
  103. package/src/module/enterprise/repository/organization.repository.ts +26 -26
  104. package/src/module/enterprise/repository/school.repository.ts +278 -278
  105. package/src/module/enterprise/service/brand.service.ts +5 -5
  106. package/src/module/enterprise/service/enterprise.service.ts +16 -16
  107. package/src/module/enterprise/service/organization-app-mapping.service.ts +4 -4
  108. package/src/module/enterprise/service/organization.service.ts +145 -145
  109. package/src/module/entity_json/controller/entity_json.controller.ts +47 -47
  110. package/src/module/entity_json/entity/entityJson.entity.ts +39 -39
  111. package/src/module/entity_json/entity_json.module.ts +18 -18
  112. package/src/module/entity_json/service/entityJson.repository.ts +37 -37
  113. package/src/module/entity_json/service/entity_json.service.ts +234 -234
  114. package/src/module/filter/controller/filter.controller.ts +84 -84
  115. package/src/module/filter/dto/filter-request.dto.ts +38 -38
  116. package/src/module/filter/entity/saved-filter-detail.entity.ts +41 -41
  117. package/src/module/filter/entity/saved-filter-master.entity.ts +23 -23
  118. package/src/module/filter/filter.module.ts +31 -31
  119. package/src/module/filter/repository/saved-filter.repository.ts +168 -168
  120. package/src/module/filter/service/filter-evaluator.service.ts +86 -86
  121. package/src/module/filter/service/filter.service.ts +1359 -1359
  122. package/src/module/filter/service/saved-filter.service.ts +170 -170
  123. package/src/module/ics/controller/ics.controller.ts +21 -21
  124. package/src/module/ics/dto/ics.dto.ts +55 -55
  125. package/src/module/ics/ics.module.ts +13 -13
  126. package/src/module/ics/service/ics.service.ts +57 -57
  127. package/src/module/integration/controller/calender-event.controller.ts +31 -31
  128. package/src/module/integration/controller/integration.controller.ts +662 -662
  129. package/src/module/integration/controller/wrapper.controller.ts +37 -37
  130. package/src/module/integration/dto/create-config.dto.ts +526 -526
  131. package/src/module/integration/entity/integration-config.entity.ts +112 -112
  132. package/src/module/integration/entity/integration-entity-mapper.entity.ts +14 -14
  133. package/src/module/integration/entity/integration-source.entity.ts +17 -17
  134. package/src/module/integration/entity/user-integration.entity.ts +71 -71
  135. package/src/module/integration/examples/usage.example.ts +338 -338
  136. package/src/module/integration/factories/base.factory.ts +7 -7
  137. package/src/module/integration/factories/email.factory.ts +49 -49
  138. package/src/module/integration/factories/integration.factory.ts +121 -121
  139. package/src/module/integration/factories/sms.factory.ts +51 -51
  140. package/src/module/integration/factories/telephone.factory.ts +41 -41
  141. package/src/module/integration/factories/whatsapp.factory.ts +56 -56
  142. package/src/module/integration/integration.module.ts +110 -110
  143. package/src/module/integration/service/calendar-event.service.ts +118 -118
  144. package/src/module/integration/service/integration-entity-mapper.service.ts +17 -17
  145. package/src/module/integration/service/integration-queue.service.ts +229 -229
  146. package/src/module/integration/service/integration.service.ts +2633 -2633
  147. package/src/module/integration/service/oauth.service.ts +224 -224
  148. package/src/module/integration/service/wrapper.service.ts +738 -738
  149. package/src/module/integration/strategies/email/gmail-api.strategy.ts +280 -280
  150. package/src/module/integration/strategies/email/outlook-api.strategy.ts +44 -44
  151. package/src/module/integration/strategies/email/outlook.strategy.ts +64 -64
  152. package/src/module/integration/strategies/email/sendgrid-api.strategy.ts +260 -260
  153. package/src/module/integration/strategies/integration.strategy.ts +97 -97
  154. package/src/module/integration/strategies/sms/gupshup-sms.strategy.ts +146 -146
  155. package/src/module/integration/strategies/sms/msg91-sms.strategy.ts +164 -164
  156. package/src/module/integration/strategies/sms/tubelight-sms.strategy.ts +163 -163
  157. package/src/module/integration/strategies/telephone/ozonetel-voice.strategy.ts +238 -238
  158. package/src/module/integration/strategies/telephone/tubelight-voice.strategy.ts +210 -210
  159. package/src/module/integration/strategies/whatsapp/gupshup-whatsapp.strategy.ts +359 -359
  160. package/src/module/integration/strategies/whatsapp/tubelight-whatsapp.strategy.ts +372 -372
  161. package/src/module/integration/strategies/whatsapp/whatsapp-cloud.strategy.ts +403 -403
  162. package/src/module/integration/strategies/whatsapp/whatsapp.strategy.ts +57 -57
  163. package/src/module/layout/controller/layout.controller.ts +47 -47
  164. package/src/module/layout/entity/header-items.entity.ts +28 -28
  165. package/src/module/layout/entity/header-section.entity.ts +19 -19
  166. package/src/module/layout/layout.module.ts +21 -21
  167. package/src/module/layout/repository/header-items.repository.ts +18 -18
  168. package/src/module/layout/repository/header-section.repository.ts +22 -22
  169. package/src/module/layout/service/header-section.service.ts +25 -25
  170. package/src/module/layout_preference/controller/layout_preference.controller.ts +73 -73
  171. package/src/module/layout_preference/entity/layout_preference.entity.ts +28 -28
  172. package/src/module/layout_preference/layout_preference.module.ts +22 -22
  173. package/src/module/layout_preference/repository/layout_preference.repository.ts +65 -65
  174. package/src/module/layout_preference/service/layout_preference.service.ts +191 -191
  175. package/src/module/lead/controller/lead.controller.ts +30 -30
  176. package/src/module/lead/lead.module.ts +14 -14
  177. package/src/module/lead/repository/lead.repository.ts +41 -41
  178. package/src/module/lead/service/lead.service.ts +54 -54
  179. package/src/module/linked_attributes/controller/linked_attributes.controller.ts +37 -37
  180. package/src/module/linked_attributes/entity/linked_attribute.entity.ts +51 -51
  181. package/src/module/linked_attributes/linked_attributes.module.ts +16 -16
  182. package/src/module/linked_attributes/repository/linked_attribute.repository.ts +12 -12
  183. package/src/module/linked_attributes/service/linked_attributes.service.ts +75 -75
  184. package/src/module/listmaster/controller/list-master.controller.ts +230 -230
  185. package/src/module/listmaster/entity/list-master-items.entity.ts +43 -43
  186. package/src/module/listmaster/entity/list-master.entity.ts +33 -33
  187. package/src/module/listmaster/listmaster.module.ts +46 -46
  188. package/src/module/listmaster/repository/list-master-items.repository.ts +173 -173
  189. package/src/module/listmaster/repository/list-master.repository.ts +46 -46
  190. package/src/module/listmaster/service/list-master-engine.ts +19 -19
  191. package/src/module/listmaster/service/list-master-extension.interface.ts +4 -4
  192. package/src/module/listmaster/service/list-master-item.service.ts +292 -292
  193. package/src/module/listmaster/service/list-master-registry.ts +15 -15
  194. package/src/module/listmaster/service/list-master.service.ts +535 -535
  195. package/src/module/mapper/controller/field-mapper.controller.ts +76 -76
  196. package/src/module/mapper/controller/mapper.controller.ts +20 -20
  197. package/src/module/mapper/dto/field-mapper.dto.ts +14 -14
  198. package/src/module/mapper/entity/field-lovs.entity.ts +19 -19
  199. package/src/module/mapper/entity/field-mapper.entity.ts +53 -53
  200. package/src/module/mapper/entity/mapper.entity.ts +16 -16
  201. package/src/module/mapper/mapper.module.ts +35 -35
  202. package/src/module/mapper/repository/field-lovs.repository.ts +35 -35
  203. package/src/module/mapper/repository/field-mapper.repository.ts +42 -42
  204. package/src/module/mapper/repository/mapper.repository.ts +32 -32
  205. package/src/module/mapper/service/field-mapper.service.ts +271 -271
  206. package/src/module/mapper/service/mapper.service.ts +81 -81
  207. package/src/module/master/controller/master.controller.ts +74 -74
  208. package/src/module/master/service/master.service.ts +483 -483
  209. package/src/module/meta/controller/app-master.controller.ts +38 -38
  210. package/src/module/meta/controller/attribute-master.controller.ts +84 -84
  211. package/src/module/meta/controller/entity-dynamic.controller.ts +125 -125
  212. package/src/module/meta/controller/entity-master.controller.ts +41 -41
  213. package/src/module/meta/controller/entity-relation.controller.ts +36 -36
  214. package/src/module/meta/controller/entity.controller.ts +392 -392
  215. package/src/module/meta/controller/entity.public.controller.ts +75 -75
  216. package/src/module/meta/controller/media.controller.ts +107 -107
  217. package/src/module/meta/controller/meta.controller.ts +96 -96
  218. package/src/module/meta/controller/view-master.controller.ts +86 -86
  219. package/src/module/meta/dto/entity-list-data.dto.ts +6 -6
  220. package/src/module/meta/dto/entity-tab.dto.ts +4 -4
  221. package/src/module/meta/dto/entity-table.dto.ts +9 -9
  222. package/src/module/meta/entity/app-master.entity.ts +34 -34
  223. package/src/module/meta/entity/attribute-master.entity.ts +92 -92
  224. package/src/module/meta/entity/base-entity.entity.ts +75 -75
  225. package/src/module/meta/entity/entity-master.entity.ts +85 -85
  226. package/src/module/meta/entity/entity-relation-data.entity.ts +29 -29
  227. package/src/module/meta/entity/entity-relation.entity.ts +23 -23
  228. package/src/module/meta/entity/entity-table-column.entity.ts +61 -61
  229. package/src/module/meta/entity/entity-table.entity.ts +50 -50
  230. package/src/module/meta/entity/media-data.entity.ts +32 -32
  231. package/src/module/meta/entity/preference.entity.ts +62 -62
  232. package/src/module/meta/entity/view-master.entity.ts +41 -41
  233. package/src/module/meta/entity.module.ts +166 -166
  234. package/src/module/meta/repository/app-master.repository.ts +20 -20
  235. package/src/module/meta/repository/attribute-master.repository.ts +138 -138
  236. package/src/module/meta/repository/entity-attribute-update.repository.ts +44 -44
  237. package/src/module/meta/repository/entity-master.repository.ts +111 -111
  238. package/src/module/meta/repository/entity-table-column.repository.ts +39 -39
  239. package/src/module/meta/repository/entity-table.repository.ts +53 -53
  240. package/src/module/meta/repository/media-data.repository.ts +50 -50
  241. package/src/module/meta/repository/preference.repository.ts +20 -20
  242. package/src/module/meta/repository/user-app-mapping.repository.ts +28 -28
  243. package/src/module/meta/repository/view-master.repository.ts +42 -42
  244. package/src/module/meta/service/app-master.service.ts +37 -37
  245. package/src/module/meta/service/attribute-master.service.ts +130 -130
  246. package/src/module/meta/service/common.service.ts +9 -9
  247. package/src/module/meta/service/entity-attribute-update.service.ts +28 -28
  248. package/src/module/meta/service/entity-dynamic.service.ts +857 -857
  249. package/src/module/meta/service/entity-list.service.ts +205 -205
  250. package/src/module/meta/service/entity-master.service.ts +171 -171
  251. package/src/module/meta/service/entity-realation-data.service.ts +9 -9
  252. package/src/module/meta/service/entity-relation.service.ts +87 -87
  253. package/src/module/meta/service/entity-service-impl.service.ts +525 -525
  254. package/src/module/meta/service/entity-table-column.service.ts +39 -39
  255. package/src/module/meta/service/entity-table.service.ts +150 -150
  256. package/src/module/meta/service/entity-validation.service.ts +187 -187
  257. package/src/module/meta/service/entity.service.ts +67 -67
  258. package/src/module/meta/service/field-group.service.ts +103 -103
  259. package/src/module/meta/service/media-data.service.ts +507 -507
  260. package/src/module/meta/service/populate-meta.service.ts +222 -222
  261. package/src/module/meta/service/preference.service.ts +16 -16
  262. package/src/module/meta/service/resolver.service.ts +318 -318
  263. package/src/module/meta/service/section-master.service.ts +104 -104
  264. package/src/module/meta/service/update-form-json.service.ts +22 -22
  265. package/src/module/meta/service/user-app-mapping.service.ts +17 -17
  266. package/src/module/meta/service/view-master.service.ts +127 -127
  267. package/src/module/microservice-client/microservice-clients.module.ts +13 -13
  268. package/src/module/microservice-client/service/microservice-client-factory.ts +37 -37
  269. package/src/module/microservice-client/service/microservice-clients.ts +4 -4
  270. package/src/module/module/controller/menu.controller.ts +15 -15
  271. package/src/module/module/controller/module-access.controller.ts +134 -134
  272. package/src/module/module/entity/menu.entity.ts +43 -43
  273. package/src/module/module/entity/module-access.entity.ts +25 -25
  274. package/src/module/module/entity/module-action.entity.ts +17 -17
  275. package/src/module/module/entity/module.entity.ts +52 -52
  276. package/src/module/module/module.module.ts +42 -42
  277. package/src/module/module/repository/menu.repository.ts +191 -191
  278. package/src/module/module/repository/module-access.repository.ts +344 -344
  279. package/src/module/module/service/menu.service.ts +82 -82
  280. package/src/module/module/service/module-access.service.ts +195 -195
  281. package/src/module/notification/controller/notification.controller.ts +58 -58
  282. package/src/module/notification/controller/otp.controller.ts +117 -117
  283. package/src/module/notification/entity/notification.entity.ts +26 -26
  284. package/src/module/notification/entity/otp.entity.ts +28 -28
  285. package/src/module/notification/firebase-admin.config.ts +22 -22
  286. package/src/module/notification/notification.module.ts +69 -69
  287. package/src/module/notification/repository/otp.repository.ts +27 -27
  288. package/src/module/notification/service/email.service.ts +127 -127
  289. package/src/module/notification/service/notification.service.ts +160 -160
  290. package/src/module/notification/service/otp.service.ts +133 -133
  291. package/src/module/third-party-module/entity/third-party-api-registry.entity.ts +52 -52
  292. package/src/module/third-party-module/repository/third-party-api-registry.repository.ts +20 -20
  293. package/src/module/third-party-module/service/api-registry.service.ts +13 -13
  294. package/src/module/third-party-module/third-party.module.ts +12 -12
  295. package/src/module/user/controller/login.controller.ts +198 -198
  296. package/src/module/user/controller/user.controller.ts +40 -40
  297. package/src/module/user/dto/create-user.dto.ts +62 -62
  298. package/src/module/user/dto/update-user.dto.ts +4 -4
  299. package/src/module/user/entity/role.entity.ts +33 -33
  300. package/src/module/user/entity/user-role-mapping.entity.ts +38 -38
  301. package/src/module/user/entity/user-session.entity.ts +73 -73
  302. package/src/module/user/entity/user.entity.ts +59 -59
  303. package/src/module/user/repository/role.repository.ts +96 -96
  304. package/src/module/user/repository/user-role-mapping.repository.ts +126 -126
  305. package/src/module/user/repository/user.repository.ts +50 -50
  306. package/src/module/user/repository/userSession.repository.ts +33 -33
  307. package/src/module/user/service/login.service.ts +326 -326
  308. package/src/module/user/service/role.service.ts +197 -189
  309. package/src/module/user/service/user-role-mapping.service.ts +98 -98
  310. package/src/module/user/service/user-session.service.ts +168 -168
  311. package/src/module/user/service/user.service.ts +368 -368
  312. package/src/module/user/user.module.ts +65 -65
  313. package/src/module/workflow/controller/action-category.controller.ts +54 -54
  314. package/src/module/workflow/controller/action-resource-mapping.controller.ts +23 -23
  315. package/src/module/workflow/controller/action-template-mapping.controller.ts +35 -35
  316. package/src/module/workflow/controller/action.controller.ts +111 -111
  317. package/src/module/workflow/controller/activity-log.controller.ts +55 -55
  318. package/src/module/workflow/controller/comm-template.controller.ts +43 -43
  319. package/src/module/workflow/controller/entity-modification.controller.ts +35 -35
  320. package/src/module/workflow/controller/form-master.controller.ts +43 -43
  321. package/src/module/workflow/controller/stage-group.controller.ts +48 -48
  322. package/src/module/workflow/controller/stage.controller.ts +50 -50
  323. package/src/module/workflow/controller/task.controller.ts +77 -77
  324. package/src/module/workflow/controller/workflow-list-master.controller.ts +44 -44
  325. package/src/module/workflow/controller/workflow-meta.controller.ts +80 -80
  326. package/src/module/workflow/controller/workflow.controller.ts +67 -67
  327. package/src/module/workflow/entity/action-category.entity.ts +38 -38
  328. package/src/module/workflow/entity/action-data.entity.ts +55 -55
  329. package/src/module/workflow/entity/action-resources-mapping.entity.ts +29 -29
  330. package/src/module/workflow/entity/action-template-mapping.entity.ts +17 -17
  331. package/src/module/workflow/entity/action.entity.ts +53 -53
  332. package/src/module/workflow/entity/activity-log.entity.ts +43 -43
  333. package/src/module/workflow/entity/comm-template.entity.ts +43 -43
  334. package/src/module/workflow/entity/entity-modification.entity.ts +38 -38
  335. package/src/module/workflow/entity/form.entity.ts +25 -25
  336. package/src/module/workflow/entity/stage-action-mapping.entity.ts +17 -17
  337. package/src/module/workflow/entity/stage-group.entity.ts +23 -23
  338. package/src/module/workflow/entity/stage-movement-data.entity.ts +38 -38
  339. package/src/module/workflow/entity/stage.entity.ts +20 -20
  340. package/src/module/workflow/entity/task-data.entity.ts +88 -88
  341. package/src/module/workflow/entity/template-attach-mapper.entity.ts +30 -30
  342. package/src/module/workflow/entity/workflow-data.entity.ts +11 -11
  343. package/src/module/workflow/entity/workflow-level-mapping.entity.ts +18 -18
  344. package/src/module/workflow/entity/workflow.entity.ts +20 -20
  345. package/src/module/workflow/repository/action-category.repository.ts +79 -79
  346. package/src/module/workflow/repository/action-data.repository.ts +334 -334
  347. package/src/module/workflow/repository/action.repository.ts +338 -338
  348. package/src/module/workflow/repository/activity-log.repository.ts +148 -148
  349. package/src/module/workflow/repository/comm-template.repository.ts +149 -149
  350. package/src/module/workflow/repository/form-master.repository.ts +59 -59
  351. package/src/module/workflow/repository/stage-group.repository.ts +197 -197
  352. package/src/module/workflow/repository/stage-movement.repository.ts +246 -246
  353. package/src/module/workflow/repository/stage.repository.ts +172 -172
  354. package/src/module/workflow/repository/task.repository.ts +134 -134
  355. package/src/module/workflow/repository/workflow.repository.ts +42 -42
  356. package/src/module/workflow/service/action-category.service.ts +33 -33
  357. package/src/module/workflow/service/action-data.service.ts +62 -62
  358. package/src/module/workflow/service/action-resources-mapping.service.ts +10 -10
  359. package/src/module/workflow/service/action-template-mapping.service.ts +131 -131
  360. package/src/module/workflow/service/action.service.ts +279 -279
  361. package/src/module/workflow/service/activity-log.service.ts +107 -107
  362. package/src/module/workflow/service/comm-template.service.ts +180 -180
  363. package/src/module/workflow/service/entity-modification.service.ts +61 -61
  364. package/src/module/workflow/service/form-master.service.ts +35 -35
  365. package/src/module/workflow/service/populate-workflow.service.ts +333 -333
  366. package/src/module/workflow/service/stage-action-mapping.service.ts +5 -5
  367. package/src/module/workflow/service/stage-group.service.ts +342 -342
  368. package/src/module/workflow/service/stage.service.ts +199 -199
  369. package/src/module/workflow/service/task.service.ts +547 -547
  370. package/src/module/workflow/service/workflow-list-master.service.ts +60 -60
  371. package/src/module/workflow/service/workflow-meta.service.ts +654 -654
  372. package/src/module/workflow/service/workflow.service.ts +209 -209
  373. package/src/module/workflow/workflow.module.ts +180 -180
  374. package/src/module/workflow-automation/SCHEDULING_GUIDE.md +145 -145
  375. package/src/module/workflow-automation/controller/workflow-automation.controller.ts +43 -43
  376. package/src/module/workflow-automation/entity/workflow-automation-action.entity.ts +26 -26
  377. package/src/module/workflow-automation/entity/workflow-automation.entity.ts +40 -40
  378. package/src/module/workflow-automation/interface/action.decorator.ts +7 -7
  379. package/src/module/workflow-automation/interface/action.interface.ts +5 -5
  380. package/src/module/workflow-automation/service/action-registery.service.ts +35 -35
  381. package/src/module/workflow-automation/service/schedule-handler.service.ts +168 -168
  382. package/src/module/workflow-automation/service/workflow-automation-engine.service.ts +224 -224
  383. package/src/module/workflow-automation/service/workflow-automation.service.ts +515 -515
  384. package/src/module/workflow-automation/workflow-automation.module.ts +54 -54
  385. package/src/module/workflow-schedule/INSTALLATION.md +244 -244
  386. package/src/module/workflow-schedule/MULTI_PROJECT_GUIDE.md +196 -196
  387. package/src/module/workflow-schedule/README.md +422 -422
  388. package/src/module/workflow-schedule/constants/schedule.constants.ts +48 -48
  389. package/src/module/workflow-schedule/controller/workflow-schedule.controller.ts +255 -255
  390. package/src/module/workflow-schedule/docs/CLAUDE_CODE_GUIDE.md +510 -510
  391. package/src/module/workflow-schedule/docs/CLAUDE_CODE_PROMPT.md +362 -362
  392. package/src/module/workflow-schedule/docs/RUN_CLAUDE_CODE.sh +68 -68
  393. package/src/module/workflow-schedule/dto/create-schedule.dto.ts +147 -147
  394. package/src/module/workflow-schedule/dto/get-execution-logs.dto.ts +119 -119
  395. package/src/module/workflow-schedule/dto/update-schedule.dto.ts +96 -96
  396. package/src/module/workflow-schedule/entities/scheduled-workflow.entity.ts +148 -148
  397. package/src/module/workflow-schedule/entities/workflow-execution-log.entity.ts +154 -154
  398. package/src/module/workflow-schedule/interfaces/schedule-job-data.interface.ts +53 -53
  399. package/src/module/workflow-schedule/interfaces/workflow-schedule-options.interface.ts +12 -12
  400. package/src/module/workflow-schedule/processors/schedule.processor.ts +584 -584
  401. package/src/module/workflow-schedule/service/workflow-schedule.service.ts +600 -600
  402. package/src/module/workflow-schedule/workflow-schedule.module.ts +67 -67
  403. package/src/resources/dev.properties.yaml +31 -31
  404. package/src/resources/local.properties.yaml +27 -27
  405. package/src/resources/properties.module.ts +12 -12
  406. package/src/resources/properties.yaml.ts +11 -11
  407. package/src/resources/uat.properties.yaml +31 -51
  408. package/src/table.config.ts +133 -133
  409. package/src/utils/dto/excel-data.dto.ts +14 -14
  410. package/src/utils/dto/excelsheet-data.dto.ts +5 -5
  411. package/src/utils/service/base64util.service.ts +18 -18
  412. package/src/utils/service/clockIDGenUtil.service.ts +21 -21
  413. package/src/utils/service/codeGenerator.service.ts +22 -22
  414. package/src/utils/service/dateUtil.service.ts +17 -17
  415. package/src/utils/service/encryptUtil.service.ts +97 -97
  416. package/src/utils/service/excel-helper.service.ts +72 -72
  417. package/src/utils/service/excelUtil.service.ts +15 -15
  418. package/src/utils/service/file-util.service.ts +11 -11
  419. package/src/utils/service/json-util.service.ts +23 -23
  420. package/src/utils/service/loggingUtil.service.ts +88 -88
  421. package/src/utils/service/reflection-helper.service.ts +62 -62
  422. package/src/utils/service/wbsCodeGen.service.ts +8 -8
  423. package/src/utils/utils.module.ts +27 -27
  424. package/tsconfig.build.json +4 -4
  425. 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() ===
@@ -34,10 +34,10 @@ let WrapperService = WrapperService_1 = class WrapperService {
34
34
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `sendMailWrapper called. User: ${JSON.stringify(loggedInUser)}, Payload: ${JSON.stringify(payload)}`, [], []);
35
35
  const { level_id, level_type, organization_id } = loggedInUser;
36
36
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `Fetching configs for level_id=${level_id}, level_type=${level_type}`, [], []);
37
- const configs = await this.datasource.query(`SELECT * FROM frm_integration_config
38
- WHERE level_id = $1
39
- AND level_type = $2
40
- AND status = 1
37
+ const configs = await this.datasource.query(`SELECT * FROM frm_integration_config
38
+ WHERE level_id = $1
39
+ AND level_type = $2
40
+ AND status = 1
41
41
  AND integration_type = 'EMAIL'`, [level_id, level_type]);
42
42
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `Configs found: ${JSON.stringify(configs)}`, [], []);
43
43
  let templateCode;
@@ -73,9 +73,9 @@ let WrapperService = WrapperService_1 = class WrapperService {
73
73
  }
74
74
  else {
75
75
  this.loggingService.log('warn', 'wrapperService', 'sendMailWrapper', `No user-level configs found. Falling back to ORG-level`, [], []);
76
- const fallbackConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
77
- WHERE level_type = 'ORG'
78
- AND integration_type = 'EMAIL'
76
+ const fallbackConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
77
+ WHERE level_type = 'ORG'
78
+ AND integration_type = 'EMAIL'
79
79
  AND status = 1`);
80
80
  this.loggingService.log('debug', 'wrapperService', 'sendMailWrapper', `ORG-level configs: ${JSON.stringify(fallbackConfigs)}`, [], []);
81
81
  if (!fallbackConfigs || fallbackConfigs.length === 0) {
@@ -133,17 +133,17 @@ let WrapperService = WrapperService_1 = class WrapperService {
133
133
  let resolvedTemplateId = entity?.templateId;
134
134
  if (entity.template_code) {
135
135
  this.loggingService.log('debug', 'wrapperService', 'sendCommunicationWrapperService', `Looking up template for code=${entity.template_code}, level_id=${level_id}, level_type=${level_type}`, [], []);
136
- let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
137
- WHERE code = $1
138
- AND level_id = $2
139
- AND level_type = $3
136
+ let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
137
+ WHERE code = $1
138
+ AND level_id = $2
139
+ AND level_type = $3
140
140
  LIMIT 1`, [entity.template_code, level_id, level_type]);
141
141
  if (!templates || templates.length === 0) {
142
142
  this.loggingService.log('warn', 'wrapperService', 'sendCommunicationWrapperService', `No template found for ${entity.template_code} at provided level. Falling back to ORG-level.`, [], []);
143
- templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
144
- WHERE code = $1
145
- AND level_type = 'ORG'
146
- AND organization_id = $2
143
+ templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
144
+ WHERE code = $1
145
+ AND level_type = 'ORG'
146
+ AND organization_id = $2
147
147
  LIMIT 1`, [entity.template_code, organization_id]);
148
148
  }
149
149
  if (templates && templates.length > 0) {
@@ -227,11 +227,11 @@ let WrapperService = WrapperService_1 = class WrapperService {
227
227
  };
228
228
  }
229
229
  this.loggingService.log('log', 'wrapperService', 'scheduleMeetingWrapper', `No user-level config found, checking ORG-level...`, [], []);
230
- const orgConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
231
- WHERE level_id = 1
232
- AND level_type = 'ORG'
233
- AND integration_type = 'EMAIL'
234
- AND app_code ='DEFAULT'
230
+ const orgConfigs = await this.datasource.query(`SELECT * FROM frm_integration_config
231
+ WHERE level_id = 1
232
+ AND level_type = 'ORG'
233
+ AND integration_type = 'EMAIL'
234
+ AND app_code ='DEFAULT'
235
235
  AND status = 1`, []);
236
236
  integrationConfig = await this.integrationService.getSingleActiveConfig(1, 'ORG', 'DEFAULT', 'EMAIL');
237
237
  this.loggingService.log('debug', 'wrapperService', 'scheduleMeetingWrapper', `ORG configs found: ${JSON.stringify(orgConfigs)}`, [], []);
@@ -249,8 +249,8 @@ let WrapperService = WrapperService_1 = class WrapperService {
249
249
  }
250
250
  async getConfigCred(configId) {
251
251
  this.loggingService.log('debug', 'wrapperService', 'getConfigCred', `Fetching config JSON for configId=${configId}`, [], []);
252
- const configRes = await this.datasource.query(`SELECT config_json
253
- FROM frm_integration_config
252
+ const configRes = await this.datasource.query(`SELECT config_json
253
+ FROM frm_integration_config
254
254
  WHERE id = $1`, [configId]);
255
255
  this.loggingService.log('debug', 'wrapperService', 'getConfigCred', `Config fetch result: ${JSON.stringify(configRes)}`, [], []);
256
256
  return configRes?.[0]?.config_json || null;
@@ -258,10 +258,10 @@ let WrapperService = WrapperService_1 = class WrapperService {
258
258
  async sendIcsInvite(payload, levelId, levelType, appCode, organizationId, mapped_entities) {
259
259
  this.loggingService.log('log', 'wrapperService', 'sendIcsInvite', `Generating ICS file. Payload: ${JSON.stringify(payload)}`, [], []);
260
260
  if (payload.template_code) {
261
- let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
262
- WHERE code = $1
263
- AND level_id = $2
264
- AND level_type = $3
261
+ let templates = await this.datasource.query(`SELECT id FROM frm_wf_comm_template
262
+ WHERE code = $1
263
+ AND level_id = $2
264
+ AND level_type = $3
265
265
  LIMIT 1`, [payload.template_code, levelId, levelType]);
266
266
  this.logger.log(`template by code ${JSON.stringify(payload)}`);
267
267
  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,
@@ -45,19 +45,19 @@ let EntityDynamicService = class EntityDynamicService {
45
45
  if (!entityData.entity_type)
46
46
  entityData.entity_type = entityType;
47
47
  }
48
- const statusList = await this.dataSource.query(`
49
- SELECT id
50
- FROM frm_list_master_items
51
- WHERE code = $1
52
- AND organization_id = $2
48
+ const statusList = await this.dataSource.query(`
49
+ SELECT id
50
+ FROM frm_list_master_items
51
+ WHERE code = $1
52
+ AND organization_id = $2
53
53
  `, [global_constant_1.STATUS_ACTIVE, organizationId]);
54
54
  if (!entityData.status)
55
55
  entityData.status = statusList[0]?.id;
56
56
  if (!entityData.code && entityData.entity_type) {
57
- const result = await this.dataSource.query(`
58
- SELECT MAX(id) AS max_seq_no
59
- FROM ${tableName}
60
- WHERE entity_type = $1
57
+ const result = await this.dataSource.query(`
58
+ SELECT MAX(id) AS max_seq_no
59
+ FROM ${tableName}
60
+ WHERE entity_type = $1
61
61
  `, [entityData.entity_type]);
62
62
  let maxSeq = Number(result?.[0]?.max_seq_no) || 0;
63
63
  maxSeq++;
@@ -101,9 +101,9 @@ let EntityDynamicService = class EntityDynamicService {
101
101
  }
102
102
  const colList = columns.map((c) => `"${c}"`).join(', ');
103
103
  const placeholderList = placeholders.join(', ');
104
- const sql = `
105
- INSERT INTO ${tableName} (${colList})
106
- VALUES (${placeholderList}) RETURNING id
104
+ const sql = `
105
+ INSERT INTO ${tableName} (${colList})
106
+ VALUES (${placeholderList}) RETURNING id
107
107
  `;
108
108
  const result = await this.dataSource.query(sql, values);
109
109
  return result[0];
@@ -204,9 +204,9 @@ let EntityDynamicService = class EntityDynamicService {
204
204
  const updatedMainEntity = await this.updateEntity(entityType, id, mainData, loggedInUser);
205
205
  const updatedRelations = {};
206
206
  if (mappedEntities) {
207
- const getRelationDefs = await this.dataSource.query(`SELECT *
208
- FROM frm_entity_relation
209
- WHERE organization_id = $1
207
+ const getRelationDefs = await this.dataSource.query(`SELECT *
208
+ FROM frm_entity_relation
209
+ WHERE organization_id = $1
210
210
  AND source_entity_type = $2`, [organizationId, entityType]);
211
211
  for (const [targetEntityType, rawEntityData] of Object.entries(mappedEntities)) {
212
212
  const relationDef = getRelationDefs.find((r) => r.target_entity_type === targetEntityType);
@@ -216,10 +216,10 @@ let EntityDynamicService = class EntityDynamicService {
216
216
  const entityArray = Array.isArray(rawEntityData)
217
217
  ? rawEntityData
218
218
  : [rawEntityData];
219
- const existingRelationsForType = await this.dataSource.query(`SELECT *
220
- FROM frm_entity_relation_data
221
- WHERE source_entity_type = $1
222
- AND source_entity_id = $2
219
+ const existingRelationsForType = await this.dataSource.query(`SELECT *
220
+ FROM frm_entity_relation_data
221
+ WHERE source_entity_type = $1
222
+ AND source_entity_id = $2
223
223
  AND target_entity_type = $3`, [entityType, id, targetEntityType]);
224
224
  const updatedEntities = [];
225
225
  for (const item of entityArray) {
@@ -234,9 +234,9 @@ let EntityDynamicService = class EntityDynamicService {
234
234
  const createdEntity = await this.createEntity(targetEntityType, item, loggedInUser, Number(id));
235
235
  targetEntityId = createdEntity.insertId || createdEntity.id;
236
236
  entityData = await this.getEntity(targetEntityType, targetEntityId, loggedInUser);
237
- await this.dataSource.query(`INSERT INTO frm_entity_relation_data
238
- (organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type,
239
- relation_type)
237
+ await this.dataSource.query(`INSERT INTO frm_entity_relation_data
238
+ (organization_id, source_entity_id, source_entity_type, target_entity_id, target_entity_type,
239
+ relation_type)
240
240
  VALUES ($1, $2, $3, $4, $5, $6)`, [
241
241
  organizationId,
242
242
  id,
@@ -320,10 +320,10 @@ let EntityDynamicService = class EntityDynamicService {
320
320
  }
321
321
  const idPlaceholder = `$${idx}`;
322
322
  values.push(id);
323
- const updateQuery = `
324
- UPDATE ${tableName}
325
- SET ${updates.join(', ')}
326
- WHERE id = ${idPlaceholder}
323
+ const updateQuery = `
324
+ UPDATE ${tableName}
325
+ SET ${updates.join(', ')}
326
+ WHERE id = ${idPlaceholder}
327
327
  `;
328
328
  return await this.dataSource.query(updateQuery, values);
329
329
  }
@@ -334,8 +334,8 @@ let EntityDynamicService = class EntityDynamicService {
334
334
  const columns = validAttributes
335
335
  .map((attr) => `${attr.attribute_key}`)
336
336
  .join(', ');
337
- const selectQuery = `SELECT ${columns}
338
- FROM ${dataSource}
337
+ const selectQuery = `SELECT ${columns}
338
+ FROM ${dataSource}
339
339
  WHERE id = $1`;
340
340
  const result = await this.dataSource.query(selectQuery, [id]);
341
341
  if (!result.length)
@@ -364,8 +364,8 @@ let EntityDynamicService = class EntityDynamicService {
364
364
  const columns = validAttributes
365
365
  .map((attr) => `t.${attr.attribute_key}`)
366
366
  .join(', ');
367
- const selectQuery = `SELECT ${columns}
368
- FROM ${tableName} t
367
+ const selectQuery = `SELECT ${columns}
368
+ FROM ${tableName} t
369
369
  WHERE id = $1`;
370
370
  const result = await this.dataSource.query(selectQuery, [id]);
371
371
  if (!result.length)
@@ -427,16 +427,16 @@ let EntityDynamicService = class EntityDynamicService {
427
427
  async deleteEntity(entityType, id, loggedInUser) {
428
428
  const organizationId = loggedInUser.organization_id;
429
429
  const tableName = await this.getTableName(entityType, organizationId);
430
- const deleteQuery = `DELETE
431
- FROM \`${tableName}\`
430
+ const deleteQuery = `DELETE
431
+ FROM \`${tableName}\`
432
432
  WHERE id = $1`;
433
433
  const result = await this.dataSource.query(deleteQuery, [id]);
434
434
  return result;
435
435
  }
436
436
  async getEntitiesDropdownList(loggedInUser, appcode) {
437
437
  const organizationId = loggedInUser.organization_id;
438
- let query = `SELECT name as label, mapped_entity_type as value
439
- FROM frm_entity_master
438
+ let query = `SELECT name as label, mapped_entity_type as value
439
+ FROM frm_entity_master
440
440
  WHERE organization_id = $1`;
441
441
  const params = [organizationId];
442
442
  if (appcode) {
@@ -453,8 +453,8 @@ let EntityDynamicService = class EntityDynamicService {
453
453
  throw new Error(`Entity type '${entityType}' not found in frm_entity_master for org '${organizationId}'`);
454
454
  }
455
455
  const tableName = result.db_table_name;
456
- const seqResult = await this.dataSource.query(`SELECT MAX(id) AS max_seq_no
457
- FROM ${tableName}
456
+ const seqResult = await this.dataSource.query(`SELECT MAX(id) AS max_seq_no
457
+ FROM ${tableName}
458
458
  WHERE entity_type = $1`, [entityType]);
459
459
  let maxSeqNo = seqResult?.[0]?.max_seq_no
460
460
  ? 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}`);
@@ -94,17 +94,17 @@ let ResolverService = class ResolverService {
94
94
  if (rawValue === null || rawValue === undefined || rawValue === '') {
95
95
  return rawValue;
96
96
  }
97
- const [attr] = await this.dataSource.query(`SELECT *
98
- FROM frm_entity_attribute
99
- WHERE mapped_entity_type = $1
100
- AND organization_id = $2
97
+ const [attr] = await this.dataSource.query(`SELECT *
98
+ FROM frm_entity_attribute
99
+ WHERE mapped_entity_type = $1
100
+ AND organization_id = $2
101
101
  AND attribute_key = $3`, [entityType, loggedInUser.organization_id, attrKey]);
102
102
  if (!attr)
103
103
  return rawValue;
104
104
  if (attr.data_source_type === 'entity') {
105
- const [entityDef] = await this.dataSource.query(`SELECT *
106
- FROM frm_entity_master
107
- WHERE mapped_entity_type = $1
105
+ const [entityDef] = await this.dataSource.query(`SELECT *
106
+ FROM frm_entity_master
107
+ WHERE mapped_entity_type = $1
108
108
  AND organization_id = $2`, [attr.datasource_list, loggedInUser.organization_id]);
109
109
  if (!entityDef)
110
110
  return rawValue;
@@ -113,12 +113,12 @@ let ResolverService = class ResolverService {
113
113
  const resolvedValues = [];
114
114
  for (const code of rawValue) {
115
115
  const query = tableName === 'sso_organization'
116
- ? `SELECT *
117
- FROM ${tableName}
116
+ ? `SELECT *
117
+ FROM ${tableName}
118
118
  WHERE code = $1`
119
- : `SELECT *
120
- FROM ${tableName}
121
- WHERE id = $1
119
+ : `SELECT *
120
+ FROM ${tableName}
121
+ WHERE id = $1
122
122
  AND organization_id = $2`;
123
123
  const params = tableName === 'sso_organization'
124
124
  ? [code]
@@ -130,12 +130,12 @@ let ResolverService = class ResolverService {
130
130
  }
131
131
  else {
132
132
  const query = tableName === 'sso_organization'
133
- ? `SELECT *
134
- FROM ${tableName}
133
+ ? `SELECT *
134
+ FROM ${tableName}
135
135
  WHERE id = $1`
136
- : `SELECT *
137
- FROM ${tableName}
138
- WHERE id = $1
136
+ : `SELECT *
137
+ FROM ${tableName}
138
+ WHERE id = $1
139
139
  AND organization_id = $2`;
140
140
  const params = tableName === 'sso_organization'
141
141
  ? [rawValue]
@@ -180,28 +180,28 @@ let ResolverService = class ResolverService {
180
180
  displayValue === '') {
181
181
  return displayValue;
182
182
  }
183
- const [attr] = await this.dataSource.query(`SELECT *
184
- FROM frm_entity_attribute
185
- WHERE mapped_entity_type = $1
186
- AND organization_id = $2
183
+ const [attr] = await this.dataSource.query(`SELECT *
184
+ FROM frm_entity_attribute
185
+ WHERE mapped_entity_type = $1
186
+ AND organization_id = $2
187
187
  AND attribute_key = $3`, [entityType, loggedInUser.organization_id, attrKey]);
188
188
  if (!attr)
189
189
  return displayValue;
190
190
  if (attr.data_source_type === 'entity') {
191
- const [entityDef] = await this.dataSource.query(`SELECT *
192
- FROM frm_entity_master
193
- WHERE mapped_entity_type = $1
191
+ const [entityDef] = await this.dataSource.query(`SELECT *
192
+ FROM frm_entity_master
193
+ WHERE mapped_entity_type = $1
194
194
  AND organization_id = $2`, [attr.datasource_list, loggedInUser.organization_id]);
195
195
  if (!entityDef)
196
196
  return displayValue;
197
197
  const tableName = entityDef.db_table_name;
198
198
  const query = tableName === 'sso_organization'
199
- ? `SELECT id
200
- FROM ${tableName}
199
+ ? `SELECT id
200
+ FROM ${tableName}
201
201
  WHERE ${attr.data_source_attribute} = $1`
202
- : `SELECT id
203
- FROM ${tableName}
204
- WHERE ${attr.data_source_attribute} = $1
202
+ : `SELECT id
203
+ FROM ${tableName}
204
+ WHERE ${attr.data_source_attribute} = $1
205
205
  AND organization_id = $2`;
206
206
  const params = tableName === 'sso_organization'
207
207
  ? [displayValue]
@@ -210,10 +210,10 @@ let ResolverService = class ResolverService {
210
210
  return item?.id ?? displayValue;
211
211
  }
212
212
  else if (attr.data_source_type === 'master') {
213
- const [item] = await this.dataSource.query(`SELECT id
214
- FROM frm_list_master_items
215
- WHERE ${attr.data_source_attribute} = $1
216
- AND organization_id = $2
213
+ const [item] = await this.dataSource.query(`SELECT id
214
+ FROM frm_list_master_items
215
+ WHERE ${attr.data_source_attribute} = $1
216
+ AND organization_id = $2
217
217
  AND listtype = $3`, [displayValue, loggedInUser.organization_id, attr.datasource_list]);
218
218
  return item?.id ?? displayValue;
219
219
  }
@@ -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
  }