rez_core 6.5.23 → 6.5.25

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 (395) hide show
  1. package/dist/app.module.js +3 -3
  2. package/dist/app.module.js.map +1 -1
  3. package/dist/core.module.js +38 -60
  4. package/dist/core.module.js.map +1 -1
  5. package/dist/migrations/1732612800000-AddEntityJsonGinIndex.d.ts +6 -0
  6. package/dist/migrations/1732612800000-AddEntityJsonGinIndex.js +32 -0
  7. package/dist/migrations/1732612800000-AddEntityJsonGinIndex.js.map +1 -0
  8. package/dist/module/auth/strategies/jwt.strategy.d.ts +1 -2
  9. package/dist/module/auth/strategies/jwt.strategy.js +2 -3
  10. package/dist/module/auth/strategies/jwt.strategy.js.map +1 -1
  11. package/dist/module/dashboard/dashboard.module.js +1 -1
  12. package/dist/module/dashboard/dashboard.module.js.map +1 -1
  13. package/dist/module/dashboard/service/dashboard.service.js +3 -2
  14. package/dist/module/dashboard/service/dashboard.service.js.map +1 -1
  15. package/dist/module/enterprise/controller/organization.controller.d.ts +4 -12
  16. package/dist/module/enterprise/controller/organization.controller.js +8 -64
  17. package/dist/module/enterprise/controller/organization.controller.js.map +1 -1
  18. package/dist/module/enterprise/enterprise.module.js +15 -10
  19. package/dist/module/enterprise/enterprise.module.js.map +1 -1
  20. package/dist/module/enterprise/entity/enterprise.entity.d.ts +3 -1
  21. package/dist/module/enterprise/entity/enterprise.entity.js +12 -4
  22. package/dist/module/enterprise/entity/enterprise.entity.js.map +1 -1
  23. package/dist/module/enterprise/entity/organization-app-mapping.entity.d.ts +1 -6
  24. package/dist/module/enterprise/entity/organization-app-mapping.entity.js +4 -21
  25. package/dist/module/enterprise/entity/organization-app-mapping.entity.js.map +1 -1
  26. package/dist/module/enterprise/entity/organization.entity.d.ts +18 -3
  27. package/dist/module/enterprise/entity/organization.entity.js +74 -8
  28. package/dist/module/enterprise/entity/organization.entity.js.map +1 -1
  29. package/dist/module/enterprise/repository/enterprise.repository.d.ts +2 -4
  30. package/dist/module/enterprise/repository/enterprise.repository.js +4 -19
  31. package/dist/module/enterprise/repository/enterprise.repository.js.map +1 -1
  32. package/dist/module/enterprise/service/brand.service.d.ts +3 -0
  33. package/dist/module/enterprise/service/brand.service.js +17 -0
  34. package/dist/module/enterprise/service/brand.service.js.map +1 -1
  35. package/dist/module/enterprise/service/enterprise.service.d.ts +2 -2
  36. package/dist/module/enterprise/service/enterprise.service.js +4 -4
  37. package/dist/module/enterprise/service/enterprise.service.js.map +1 -1
  38. package/dist/module/enterprise/service/organization.service.d.ts +4 -4
  39. package/dist/module/enterprise/service/organization.service.js +24 -101
  40. package/dist/module/enterprise/service/organization.service.js.map +1 -1
  41. package/dist/module/entity_json/controller/entity_json.controller.d.ts +2 -9
  42. package/dist/module/entity_json/controller/entity_json.controller.js.map +1 -1
  43. package/dist/module/entity_json/entity/entityJson.entity.d.ts +2 -1
  44. package/dist/module/entity_json/entity/entityJson.entity.js +5 -1
  45. package/dist/module/entity_json/entity/entityJson.entity.js.map +1 -1
  46. package/dist/module/entity_json/entity_json.module.js +7 -2
  47. package/dist/module/entity_json/entity_json.module.js.map +1 -1
  48. package/dist/module/entity_json/service/entity_json.service.d.ts +2 -10
  49. package/dist/module/entity_json/service/entity_json.service.js +97 -23
  50. package/dist/module/entity_json/service/entity_json.service.js.map +1 -1
  51. package/dist/module/filter/controller/filter.controller.d.ts +12 -0
  52. package/dist/module/filter/controller/filter.controller.js +1 -1
  53. package/dist/module/filter/controller/filter.controller.js.map +1 -1
  54. package/dist/module/filter/filter.module.js +11 -2
  55. package/dist/module/filter/filter.module.js.map +1 -1
  56. package/dist/module/filter/service/filter.service.d.ts +38 -2
  57. package/dist/module/filter/service/filter.service.js +43 -50
  58. package/dist/module/filter/service/filter.service.js.map +1 -1
  59. package/dist/module/filter/service/flatjson-filter.service.d.ts +32 -0
  60. package/dist/module/filter/service/flatjson-filter.service.js +632 -0
  61. package/dist/module/filter/service/flatjson-filter.service.js.map +1 -0
  62. package/dist/module/filter/service/saved-filter.service.d.ts +3 -2
  63. package/dist/module/filter/service/saved-filter.service.js +14 -18
  64. package/dist/module/filter/service/saved-filter.service.js.map +1 -1
  65. package/dist/module/integration/service/integration.service.d.ts +1 -0
  66. package/dist/module/integration/service/integration.service.js +2 -1
  67. package/dist/module/integration/service/integration.service.js.map +1 -1
  68. package/dist/module/integration/service/wrapper.service.js +1 -0
  69. package/dist/module/integration/service/wrapper.service.js.map +1 -1
  70. package/dist/module/layout/controller/layout.controller.d.ts +3 -1
  71. package/dist/module/layout/controller/layout.controller.js +7 -3
  72. package/dist/module/layout/controller/layout.controller.js.map +1 -1
  73. package/dist/module/layout/entity/header-section.entity.d.ts +2 -0
  74. package/dist/module/layout/entity/header-section.entity.js +8 -0
  75. package/dist/module/layout/entity/header-section.entity.js.map +1 -1
  76. package/dist/module/layout/layout.module.js +2 -1
  77. package/dist/module/layout/layout.module.js.map +1 -1
  78. package/dist/module/layout/repository/header-section.repository.d.ts +1 -0
  79. package/dist/module/layout/repository/header-section.repository.js +5 -0
  80. package/dist/module/layout/repository/header-section.repository.js.map +1 -1
  81. package/dist/module/layout/service/header-section.service.d.ts +1 -1
  82. package/dist/module/layout/service/header-section.service.js +1 -1
  83. package/dist/module/layout/service/header-section.service.js.map +1 -1
  84. package/dist/module/linked_attributes/controller/linked_attributes.controller.d.ts +41 -0
  85. package/dist/module/linked_attributes/controller/linked_attributes.controller.js +90 -0
  86. package/dist/module/linked_attributes/controller/linked_attributes.controller.js.map +1 -1
  87. package/dist/module/linked_attributes/dto/create-linked-attribute-smart.dto.d.ts +13 -0
  88. package/dist/module/linked_attributes/dto/create-linked-attribute-smart.dto.js +64 -0
  89. package/dist/module/linked_attributes/dto/create-linked-attribute-smart.dto.js.map +1 -0
  90. package/dist/module/linked_attributes/linked_attributes.module.js +8 -1
  91. package/dist/module/linked_attributes/linked_attributes.module.js.map +1 -1
  92. package/dist/module/linked_attributes/service/linked_attributes.service.d.ts +65 -1
  93. package/dist/module/linked_attributes/service/linked_attributes.service.js +287 -2
  94. package/dist/module/linked_attributes/service/linked_attributes.service.js.map +1 -1
  95. package/dist/module/listmaster/service/list-master.service.js +8 -1
  96. package/dist/module/listmaster/service/list-master.service.js.map +1 -1
  97. package/dist/module/meta/controller/meta.controller.d.ts +6 -1
  98. package/dist/module/meta/controller/meta.controller.js +19 -1
  99. package/dist/module/meta/controller/meta.controller.js.map +1 -1
  100. package/dist/module/meta/entity/app-master.entity.d.ts +4 -8
  101. package/dist/module/meta/entity/app-master.entity.js +12 -30
  102. package/dist/module/meta/entity/app-master.entity.js.map +1 -1
  103. package/dist/module/meta/entity/entity-master.entity.d.ts +1 -0
  104. package/dist/module/meta/entity/entity-master.entity.js +8 -1
  105. package/dist/module/meta/entity/entity-master.entity.js.map +1 -1
  106. package/dist/module/meta/entity.module.js +5 -2
  107. package/dist/module/meta/entity.module.js.map +1 -1
  108. package/dist/module/meta/repository/app-master.repository.js +1 -1
  109. package/dist/module/meta/repository/app-master.repository.js.map +1 -1
  110. package/dist/module/meta/service/attribute-master.service.d.ts +6 -1
  111. package/dist/module/meta/service/attribute-master.service.js +22 -2
  112. package/dist/module/meta/service/attribute-master.service.js.map +1 -1
  113. package/dist/module/meta/service/entity-master.service.js +1 -0
  114. package/dist/module/meta/service/entity-master.service.js.map +1 -1
  115. package/dist/module/meta/service/entity-relation.service.d.ts +4 -3
  116. package/dist/module/meta/service/entity-relation.service.js +10 -4
  117. package/dist/module/meta/service/entity-relation.service.js.map +1 -1
  118. package/dist/module/meta/service/entity-service-impl.service.d.ts +1 -1
  119. package/dist/module/meta/service/entity-service-impl.service.js +14 -10
  120. package/dist/module/meta/service/entity-service-impl.service.js.map +1 -1
  121. package/dist/module/meta/service/entity-table.service.d.ts +2 -3
  122. package/dist/module/meta/service/entity-table.service.js +19 -23
  123. package/dist/module/meta/service/entity-table.service.js.map +1 -1
  124. package/dist/module/meta/service/populate-meta.service.d.ts +13 -0
  125. package/dist/module/{enterprise → meta}/service/populate-meta.service.js +8 -2
  126. package/dist/module/meta/service/populate-meta.service.js.map +1 -0
  127. package/dist/module/meta/service/resolver.service.d.ts +1 -1
  128. package/dist/module/meta/service/resolver.service.js +6 -3
  129. package/dist/module/meta/service/resolver.service.js.map +1 -1
  130. package/dist/module/module/controller/menu.controller.js +2 -2
  131. package/dist/module/module/controller/menu.controller.js.map +1 -1
  132. package/dist/module/module/controller/module-access.controller.d.ts +4 -3
  133. package/dist/module/module/controller/module-access.controller.js +10 -15
  134. package/dist/module/module/controller/module-access.controller.js.map +1 -1
  135. package/dist/module/module/entity/menu.entity.d.ts +2 -6
  136. package/dist/module/module/entity/menu.entity.js +7 -19
  137. package/dist/module/module/entity/menu.entity.js.map +1 -1
  138. package/dist/module/module/entity/module-access.entity.d.ts +0 -15
  139. package/dist/module/module/entity/module-access.entity.js +0 -50
  140. package/dist/module/module/entity/module-access.entity.js.map +1 -1
  141. package/dist/module/module/entity/module-action.entity.d.ts +1 -4
  142. package/dist/module/module/entity/module-action.entity.js +3 -12
  143. package/dist/module/module/entity/module-action.entity.js.map +1 -1
  144. package/dist/module/module/entity/module.entity.d.ts +5 -3
  145. package/dist/module/module/entity/module.entity.js +18 -8
  146. package/dist/module/module/entity/module.entity.js.map +1 -1
  147. package/dist/module/module/module.module.d.ts +1 -1
  148. package/dist/module/module/module.module.js +7 -5
  149. package/dist/module/module/module.module.js.map +1 -1
  150. package/dist/module/module/repository/menu.repository.d.ts +4 -4
  151. package/dist/module/module/repository/menu.repository.js +27 -17
  152. package/dist/module/module/repository/menu.repository.js.map +1 -1
  153. package/dist/module/module/repository/module-access.repository.d.ts +7 -7
  154. package/dist/module/module/repository/module-access.repository.js +44 -82
  155. package/dist/module/module/repository/module-access.repository.js.map +1 -1
  156. package/dist/module/module/service/menu.service.d.ts +5 -3
  157. package/dist/module/module/service/menu.service.js +12 -9
  158. package/dist/module/module/service/menu.service.js.map +1 -1
  159. package/dist/module/module/service/module-access.service.d.ts +11 -8
  160. package/dist/module/module/service/module-access.service.js +26 -24
  161. package/dist/module/module/service/module-access.service.js.map +1 -1
  162. package/dist/module/notification/entity/notification.entity.d.ts +2 -17
  163. package/dist/module/notification/entity/notification.entity.js +2 -68
  164. package/dist/module/notification/entity/notification.entity.js.map +1 -1
  165. package/dist/module/notification/notification.module.js +2 -0
  166. package/dist/module/notification/notification.module.js.map +1 -1
  167. package/dist/module/notification/service/notification.service.d.ts +3 -1
  168. package/dist/module/notification/service/notification.service.js +5 -2
  169. package/dist/module/notification/service/notification.service.js.map +1 -1
  170. package/dist/module/notification/service/otp.service.js.map +1 -1
  171. package/dist/module/user/controller/login.controller.d.ts +3 -1
  172. package/dist/module/user/controller/login.controller.js +6 -2
  173. package/dist/module/user/controller/login.controller.js.map +1 -1
  174. package/dist/module/user/controller/user.controller.d.ts +2 -0
  175. package/dist/module/user/controller/user.controller.js +13 -0
  176. package/dist/module/user/controller/user.controller.js.map +1 -1
  177. package/dist/module/user/dto/create-user.dto.d.ts +3 -6
  178. package/dist/module/user/dto/create-user.dto.js +11 -17
  179. package/dist/module/user/dto/create-user.dto.js.map +1 -1
  180. package/dist/module/user/entity/role.entity.d.ts +6 -19
  181. package/dist/module/user/entity/role.entity.js +19 -68
  182. package/dist/module/user/entity/role.entity.js.map +1 -1
  183. package/dist/module/user/entity/user-role-mapping.entity.d.ts +0 -10
  184. package/dist/module/user/entity/user-role-mapping.entity.js +1 -33
  185. package/dist/module/user/entity/user-role-mapping.entity.js.map +1 -1
  186. package/dist/module/user/entity/user-session.entity.js +3 -2
  187. package/dist/module/user/entity/user-session.entity.js.map +1 -1
  188. package/dist/module/user/entity/user.entity.d.ts +5 -19
  189. package/dist/module/user/entity/user.entity.js +15 -69
  190. package/dist/module/user/entity/user.entity.js.map +1 -1
  191. package/dist/module/user/repository/role.repository.d.ts +2 -6
  192. package/dist/module/user/repository/role.repository.js +8 -16
  193. package/dist/module/user/repository/role.repository.js.map +1 -1
  194. package/dist/module/user/repository/user-role-mapping.repository.d.ts +0 -1
  195. package/dist/module/user/repository/user-role-mapping.repository.js +0 -3
  196. package/dist/module/user/repository/user-role-mapping.repository.js.map +1 -1
  197. package/dist/module/user/repository/user.repository.d.ts +2 -4
  198. package/dist/module/user/repository/user.repository.js +7 -19
  199. package/dist/module/user/repository/user.repository.js.map +1 -1
  200. package/dist/module/user/repository/userSession.repository.d.ts +0 -1
  201. package/dist/module/user/repository/userSession.repository.js +0 -3
  202. package/dist/module/user/repository/userSession.repository.js.map +1 -1
  203. package/dist/module/user/service/login.service.d.ts +5 -3
  204. package/dist/module/user/service/login.service.js +42 -43
  205. package/dist/module/user/service/login.service.js.map +1 -1
  206. package/dist/module/user/service/role.service.d.ts +11 -24
  207. package/dist/module/user/service/role.service.js +38 -42
  208. package/dist/module/user/service/role.service.js.map +1 -1
  209. package/dist/module/user/service/user-role-mapping.service.d.ts +0 -2
  210. package/dist/module/user/service/user-role-mapping.service.js +0 -6
  211. package/dist/module/user/service/user-role-mapping.service.js.map +1 -1
  212. package/dist/module/user/service/user-session.service.d.ts +1 -2
  213. package/dist/module/user/service/user-session.service.js +5 -9
  214. package/dist/module/user/service/user-session.service.js.map +1 -1
  215. package/dist/module/user/service/user.service.d.ts +20 -29
  216. package/dist/module/user/service/user.service.js +56 -44
  217. package/dist/module/user/service/user.service.js.map +1 -1
  218. package/dist/module/user/user.module.js +7 -1
  219. package/dist/module/user/user.module.js.map +1 -1
  220. package/dist/module/workflow/repository/action-data.repository.d.ts +1 -1
  221. package/dist/module/workflow/repository/action-data.repository.js +8 -6
  222. package/dist/module/workflow/repository/action-data.repository.js.map +1 -1
  223. package/dist/module/workflow/repository/action.repository.d.ts +1 -1
  224. package/dist/module/workflow/repository/action.repository.js +10 -10
  225. package/dist/module/workflow/repository/action.repository.js.map +1 -1
  226. package/dist/module/workflow/repository/form-master.repository.d.ts +1 -1
  227. package/dist/module/workflow/repository/form-master.repository.js +2 -2
  228. package/dist/module/workflow/repository/form-master.repository.js.map +1 -1
  229. package/dist/module/workflow/service/action-data.service.js +2 -1
  230. package/dist/module/workflow/service/action-data.service.js.map +1 -1
  231. package/dist/module/workflow/service/action.service.js +2 -2
  232. package/dist/module/workflow/service/action.service.js.map +1 -1
  233. package/dist/module/workflow/service/comm-template.service.js +2 -0
  234. package/dist/module/workflow/service/comm-template.service.js.map +1 -1
  235. package/dist/module/workflow/service/entity-modification.service.js +1 -0
  236. package/dist/module/workflow/service/entity-modification.service.js.map +1 -1
  237. package/dist/module/workflow/service/form-master.service.js +2 -2
  238. package/dist/module/workflow/service/form-master.service.js.map +1 -1
  239. package/dist/module/workflow/service/populate-workflow.service.d.ts +1 -1
  240. package/dist/module/workflow/service/populate-workflow.service.js +1 -1
  241. package/dist/module/workflow/service/populate-workflow.service.js.map +1 -1
  242. package/dist/module/workflow/service/task.service.js +3 -0
  243. package/dist/module/workflow/service/task.service.js.map +1 -1
  244. package/dist/module/workflow/service/workflow-meta.service.js +7 -2
  245. package/dist/module/workflow/service/workflow-meta.service.js.map +1 -1
  246. package/dist/module/workflow/service/workflow.service.js +2 -2
  247. package/dist/module/workflow/service/workflow.service.js.map +1 -1
  248. package/dist/module/workflow/workflow.module.js +0 -2
  249. package/dist/module/workflow/workflow.module.js.map +1 -1
  250. package/dist/module/workflow-automation/service/workflow-automation.service.js +6 -11
  251. package/dist/module/workflow-automation/service/workflow-automation.service.js.map +1 -1
  252. package/dist/module/workflow-automation/workflow-automation.module.js +1 -3
  253. package/dist/module/workflow-automation/workflow-automation.module.js.map +1 -1
  254. package/dist/module/workflow-schedule/service/workflow-schedule.service.js +2 -0
  255. package/dist/module/workflow-schedule/service/workflow-schedule.service.js.map +1 -1
  256. package/dist/table.config.d.ts +3 -2
  257. package/dist/tsconfig.build.tsbuildinfo +1 -1
  258. package/package.json +2 -2
  259. package/src/app.module.ts +5 -5
  260. package/src/core.module.ts +44 -55
  261. package/src/migrations/1732612800000-AddEntityJsonGinIndex.ts +41 -0
  262. package/src/module/auth/strategies/jwt.strategy.ts +2 -4
  263. package/src/module/dashboard/dashboard.module.ts +3 -3
  264. package/src/module/dashboard/service/dashboard.service.ts +3 -2
  265. package/src/module/enterprise/controller/organization.controller.ts +4 -60
  266. package/src/module/enterprise/enterprise.module.ts +18 -16
  267. package/src/module/enterprise/entity/enterprise.entity.ts +11 -5
  268. package/src/module/enterprise/entity/organization-app-mapping.entity.ts +4 -18
  269. package/src/module/enterprise/entity/organization.entity.ts +59 -9
  270. package/src/module/enterprise/repository/enterprise.repository.ts +4 -26
  271. package/src/module/enterprise/service/brand.service.ts +5 -75
  272. package/src/module/enterprise/service/enterprise.service.ts +4 -10
  273. package/src/module/enterprise/service/organization.service.ts +23 -140
  274. package/src/module/entity_json/controller/entity_json.controller.ts +13 -0
  275. package/src/module/entity_json/docs/FlatJson_Filterin_System.md +2804 -0
  276. package/src/module/entity_json/entity/entityJson.entity.ts +4 -1
  277. package/src/module/entity_json/entity_json.module.ts +9 -5
  278. package/src/module/entity_json/service/entity_json.service.ts +232 -49
  279. package/src/module/filter/controller/filter.controller.ts +1 -3
  280. package/src/module/filter/filter.module.ts +12 -3
  281. package/src/module/filter/service/filter.service.ts +129 -73
  282. package/src/module/filter/service/flatjson-filter.service.ts +903 -0
  283. package/src/module/filter/service/saved-filter.service.ts +16 -26
  284. package/src/module/filter/test/flatjson-filter.service.spec.ts +415 -0
  285. package/src/module/integration/service/integration.service.ts +6 -2
  286. package/src/module/integration/service/wrapper.service.ts +1 -0
  287. package/src/module/layout/controller/layout.controller.ts +8 -1
  288. package/src/module/layout/entity/header-section.entity.ts +6 -0
  289. package/src/module/layout/layout.module.ts +1 -1
  290. package/src/module/layout/repository/header-section.repository.ts +6 -0
  291. package/src/module/layout/service/header-section.service.ts +1 -1
  292. package/src/module/linked_attributes/controller/linked_attributes.controller.ts +100 -0
  293. package/src/module/linked_attributes/dto/create-linked-attribute-smart.dto.ts +54 -0
  294. package/src/module/linked_attributes/linked_attributes.module.ts +9 -2
  295. package/src/module/linked_attributes/service/linked_attributes.service.ts +578 -3
  296. package/src/module/linked_attributes/test/linked-attributes.service.spec.ts +244 -0
  297. package/src/module/listmaster/service/list-master.service.ts +9 -1
  298. package/src/module/meta/controller/meta.controller.ts +25 -3
  299. package/src/module/meta/entity/app-master.entity.ts +9 -22
  300. package/src/module/meta/entity/entity-master.entity.ts +9 -3
  301. package/src/module/meta/entity.module.ts +6 -5
  302. package/src/module/meta/repository/app-master.repository.ts +1 -1
  303. package/src/module/meta/service/attribute-master.service.ts +31 -1
  304. package/src/module/meta/service/entity-master.service.ts +1 -0
  305. package/src/module/meta/service/entity-relation.service.ts +10 -6
  306. package/src/module/meta/service/entity-service-impl.service.ts +14 -19
  307. package/src/module/meta/service/entity-table.service.ts +28 -20
  308. package/src/module/meta/service/entity.service.ts +0 -1
  309. package/src/module/{enterprise → meta}/service/populate-meta.service.ts +5 -2
  310. package/src/module/meta/service/resolver.service.ts +4 -0
  311. package/src/module/module/controller/menu.controller.ts +2 -2
  312. package/src/module/module/controller/module-access.controller.ts +11 -16
  313. package/src/module/module/entity/menu.entity.ts +7 -17
  314. package/src/module/module/entity/module-access.entity.ts +1 -41
  315. package/src/module/module/entity/module-action.entity.ts +4 -11
  316. package/src/module/module/entity/module.entity.ts +14 -7
  317. package/src/module/module/module.module.ts +3 -2
  318. package/src/module/module/repository/menu.repository.ts +31 -19
  319. package/src/module/module/repository/module-access.repository.ts +60 -97
  320. package/src/module/module/service/menu.service.ts +13 -11
  321. package/src/module/module/service/module-access.service.ts +38 -26
  322. package/src/module/notification/entity/notification.entity.ts +3 -53
  323. package/src/module/notification/notification.module.ts +2 -0
  324. package/src/module/notification/service/notification.service.ts +1 -0
  325. package/src/module/notification/service/otp.service.ts +2 -3
  326. package/src/module/user/controller/login.controller.ts +8 -7
  327. package/src/module/user/controller/user.controller.ts +9 -0
  328. package/src/module/user/dto/create-user.dto.ts +6 -19
  329. package/src/module/user/entity/role.entity.ts +16 -62
  330. package/src/module/user/entity/user-role-mapping.entity.ts +3 -29
  331. package/src/module/user/entity/user-session.entity.ts +4 -3
  332. package/src/module/user/entity/user.entity.ts +13 -54
  333. package/src/module/user/repository/role.repository.ts +12 -24
  334. package/src/module/user/repository/user-role-mapping.repository.ts +1 -5
  335. package/src/module/user/repository/user.repository.ts +8 -28
  336. package/src/module/user/repository/userSession.repository.ts +1 -5
  337. package/src/module/user/service/login.service.ts +51 -47
  338. package/src/module/user/service/role.service.ts +60 -53
  339. package/src/module/user/service/user-role-mapping.service.ts +1 -23
  340. package/src/module/user/service/user-session.service.ts +6 -12
  341. package/src/module/user/service/user.service.ts +91 -64
  342. package/src/module/user/user.module.ts +5 -3
  343. package/src/module/workflow/repository/action-data.repository.ts +8 -6
  344. package/src/module/workflow/repository/action.repository.ts +11 -11
  345. package/src/module/workflow/repository/form-master.repository.ts +2 -2
  346. package/src/module/workflow/service/action-data.service.ts +2 -3
  347. package/src/module/workflow/service/action.service.ts +2 -2
  348. package/src/module/workflow/service/comm-template.service.ts +2 -0
  349. package/src/module/workflow/service/entity-modification.service.ts +1 -0
  350. package/src/module/workflow/service/form-master.service.ts +2 -2
  351. package/src/module/workflow/service/populate-workflow.service.ts +1 -1
  352. package/src/module/workflow/service/task.service.ts +3 -0
  353. package/src/module/workflow/service/workflow-meta.service.ts +7 -2
  354. package/src/module/workflow/service/workflow.service.ts +2 -2
  355. package/src/module/workflow/workflow.module.ts +0 -2
  356. package/src/module/workflow-automation/service/workflow-automation.service.ts +7 -19
  357. package/src/module/workflow-automation/workflow-automation.module.ts +3 -4
  358. package/src/module/workflow-schedule/service/workflow-schedule.service.ts +2 -0
  359. package/src/resources/dev.properties.yaml +2 -2
  360. package/.claude/settings.local.json +0 -26
  361. package/.idea/250218_nodejs_core.iml +0 -9
  362. package/.idea/codeStyles/Project.xml +0 -59
  363. package/.idea/codeStyles/codeStyleConfig.xml +0 -5
  364. package/.idea/copilot.data.migration.agent.xml +0 -6
  365. package/.idea/copilot.data.migration.ask.xml +0 -6
  366. package/.idea/copilot.data.migration.ask2agent.xml +0 -6
  367. package/.idea/copilot.data.migration.edit.xml +0 -6
  368. package/.idea/inspectionProfiles/Project_Default.xml +0 -6
  369. package/.idea/misc.xml +0 -6
  370. package/.idea/modules.xml +0 -8
  371. package/.idea/prettier.xml +0 -6
  372. package/.idea/vcs.xml +0 -6
  373. package/dist/constant/status.constant.d.ts +0 -4
  374. package/dist/constant/status.constant.js +0 -9
  375. package/dist/constant/status.constant.js.map +0 -1
  376. package/dist/module/enterprise/controller/enterprise.controller.d.ts +0 -12
  377. package/dist/module/enterprise/controller/enterprise.controller.js +0 -57
  378. package/dist/module/enterprise/controller/enterprise.controller.js.map +0 -1
  379. package/dist/module/enterprise/controller/meta.controller.d.ts +0 -9
  380. package/dist/module/enterprise/controller/meta.controller.js +0 -43
  381. package/dist/module/enterprise/controller/meta.controller.js.map +0 -1
  382. package/dist/module/enterprise/service/brand-profile.service.d.ts +0 -0
  383. package/dist/module/enterprise/service/brand-profile.service.js +0 -1
  384. package/dist/module/enterprise/service/brand-profile.service.js.map +0 -1
  385. package/dist/module/enterprise/service/populate-meta.service.d.ts +0 -9
  386. package/dist/module/enterprise/service/populate-meta.service.js.map +0 -1
  387. package/dist/module/enterprise/service/school.service.d.ts +0 -0
  388. package/dist/module/enterprise/service/school.service.js +0 -1
  389. package/dist/module/enterprise/service/school.service.js.map +0 -1
  390. package/server.log +0 -850
  391. package/src/constant/status.constant.ts +0 -4
  392. package/src/module/enterprise/controller/enterprise.controller.ts +0 -40
  393. package/src/module/enterprise/controller/meta.controller.ts +0 -23
  394. package/src/module/enterprise/service/brand-profile.service.ts +0 -10
  395. package/src/module/enterprise/service/school.service.ts +0 -5
@@ -1,55 +1,56 @@
1
1
  import { BadRequestException, Injectable } from '@nestjs/common';
2
2
  import { InjectRepository } from '@nestjs/typeorm';
3
- import { In, IsNull, Not, Or, Repository } from 'typeorm';
3
+ import { In, Not, Repository, IsNull, DataSource } from 'typeorm';
4
4
  import { Role } from 'src/module/user/entity/role.entity';
5
5
  import { ModuleAccess } from '../entity/module-access.entity';
6
6
  import { ModuleAction } from '../entity/module-action.entity';
7
7
  import { ModuleData } from '../entity/module.entity';
8
- import { ReflectionHelper } from '../../../utils/service/reflection-helper.service';
9
8
 
10
9
  @Injectable()
11
10
  export class ModuleAccessRepository {
12
11
  constructor(
13
12
  @InjectRepository(Role)
14
13
  private readonly roleRepo: Repository<Role>,
14
+
15
15
  @InjectRepository(ModuleData)
16
16
  private readonly moduleRepo: Repository<ModuleData>,
17
+
17
18
  @InjectRepository(ModuleAccess)
18
19
  private readonly moduleAccessRepo: Repository<ModuleAccess>,
20
+
19
21
  @InjectRepository(ModuleAction)
20
22
  private readonly moduleActionRepo: Repository<ModuleAction>,
21
- private readonly reflectionHelper: ReflectionHelper,
22
- ) {
23
- }
23
+
24
+ private readonly dataSource: DataSource,
25
+ ) {}
24
26
 
25
27
  async getRoles({
26
- appcode,
27
- level_type,
28
- level_id,
29
- }: {
28
+ appcode,
29
+ level_type,
30
+ level_id,
31
+ }: {
30
32
  appcode: string;
31
33
  level_type?: string;
32
34
  level_id?: number;
33
35
  }) {
34
- const where: any = {
35
- app: {
36
- code: appcode,
37
- },
38
- is_factory: Or(IsNull(), Not(1)), // 👈 include NULL and exclude factory roles
39
- };
36
+ const query = this.dataSource
37
+ .createQueryBuilder()
38
+ .select('*')
39
+ .from('sso_role', 'role')
40
+ .where('role.appcode = :appcode', { appcode })
41
+ .andWhere('(role.is_factory IS NULL OR role.is_factory != 1)');
40
42
 
41
43
  if (level_type) {
42
- where.level_type = level_type;
44
+ query.andWhere('role.level_type = :level_type', { level_type });
43
45
  }
44
46
 
45
47
  if (level_id !== undefined) {
46
- where.level_id = String(level_id);
48
+ query.andWhere('role.level_id = :level_id', {
49
+ level_id: String(level_id),
50
+ });
47
51
  }
48
52
 
49
- const roles = await this.roleRepo.find({
50
- where,
51
- select: ['id', 'name'], // keep returned data same as your mapping
52
- });
53
+ const roles = await query.getRawMany(); // use getRawMany since you're selecting from a raw table
53
54
 
54
55
  return roles.map((role) => ({
55
56
  label: role.name,
@@ -58,30 +59,20 @@ export class ModuleAccessRepository {
58
59
  }
59
60
 
60
61
  async getModules({
61
- appcode,
62
- loggedInUser,
63
- }: {
62
+ appcode,
63
+ loggedInUser,
64
+ }: {
64
65
  appcode: string;
65
66
  loggedInUser: any;
66
67
  }) {
67
68
  let modules: any[];
68
69
  if (loggedInUser.level_type == 'SCH') {
69
70
  modules = await this.moduleRepo.find({
70
- where: {
71
- module_level: 'MAINMOD',
72
- app: {
73
- code: appcode,
74
- },
75
- level_type: 'SCH',
76
- },
71
+ where: { module_level: 'MAINMOD', appcode, level_type: 'SCH' },
77
72
  });
78
73
  } else {
79
74
  modules = await this.moduleRepo.find({
80
- where: {
81
- module_level: 'MAINMOD', app: {
82
- code: appcode,
83
- },
84
- },
75
+ where: { module_level: 'MAINMOD', appcode },
85
76
  });
86
77
  }
87
78
 
@@ -114,76 +105,53 @@ export class ModuleAccessRepository {
114
105
  roles = await this.roleRepo.find({
115
106
  where: {
116
107
  id: In(fetchedRoleIds),
117
- app: {
118
- code: appcode,
119
- },
108
+ appcode,
120
109
  },
121
110
  });
122
111
  } else {
123
112
  roles = await this.roleRepo.find({
124
113
  where: {
125
114
  id: In(roleIds.map((id) => Number(id))),
126
- app: {
127
- code: appcode,
128
- },
115
+ appcode,
129
116
  },
130
117
  });
131
118
  }
132
119
 
133
120
  if (!roles.length) return [];
134
121
 
122
+ const roleCodes = roles.map((role) => role.code);
123
+
135
124
  const moduleAccesses = await this.moduleAccessRepo.find({
136
125
  where: {
137
- role_id: In(roles.map((role) => role.id)),
138
- app: {
139
- code: appcode,
140
- },
141
- level_type: levelType,
142
- },
143
- relations: {
144
- app: true,
145
- module: true,
126
+ role_code: In(roleCodes),
127
+ appcode,
146
128
  },
147
129
  });
148
130
 
149
131
  return roles.map((role) => ({
150
- role_id: role.id,
132
+ role_code: role.code,
151
133
  name: role.name,
152
134
  permission: moduleAccesses
153
- .filter((access) => access.role_id === role.id)
135
+ .filter((access) => access.role_code === role.code)
154
136
  .map((access) => ({
155
137
  action: access.action_type,
156
138
  access: access.access_flag,
157
- module_id: access.module_id,
139
+ code: access.module_code,
158
140
  level_type: access.level_type,
159
- app_id: access.app_id,
160
- code: access.module.module_code,
161
- appcode: access.app.code,
141
+ appcode: access.appcode,
162
142
  })),
163
143
  }));
164
144
  }
165
145
 
166
146
  async getAllModulesByLevel(mainModIds: string[], appcode: string, levelType) {
167
- const appMasterRepo = this.reflectionHelper.getRepoService('AppMaster');
168
-
169
- const appMaster = await appMasterRepo.find({
170
- where: {
171
- code: appcode
172
- }
173
- });
174
-
175
- if (!appMaster) {
176
- return {};
177
- }
178
-
179
147
  const mainModules =
180
148
  mainModIds.length === 1 && mainModIds[0] === '-1'
181
149
  ? await this.moduleRepo.find({
182
- where: { module_level: 'MAINMOD', app_id: appMaster[0].id },
183
- })
150
+ where: { module_level: 'MAINMOD', appcode },
151
+ })
184
152
  : await this.moduleRepo.find({
185
- where: { id: In(mainModIds), module_level: 'MAINMOD', app: { code: appcode } },
186
- });
153
+ where: { id: In(mainModIds), module_level: 'MAINMOD', appcode },
154
+ });
187
155
 
188
156
  if (!mainModules.length) return {};
189
157
 
@@ -197,7 +165,7 @@ export class ModuleAccessRepository {
197
165
  .join(' OR '),
198
166
  Object.fromEntries(wbsCodes.map((code) => [`code${code}`, `${code}%`])),
199
167
  )
200
- .andWhere('module.app_id = :app_id', { app_id: appMaster[0].id })
168
+ .andWhere('module.appcode = :appcode', { appcode })
201
169
  .andWhere('module.module_code != :excludedCode', {
202
170
  excludedCode: 'all_organization_adm_org',
203
171
  })
@@ -207,10 +175,10 @@ export class ModuleAccessRepository {
207
175
  (mod) => mod.module_code != 'all_organization_adm_org',
208
176
  );
209
177
 
210
- const modules = allModules.map((m) => m.id);
178
+ const moduleCodes = allModules.map((m) => m.module_code);
211
179
 
212
180
  const allActions = await this.moduleActionRepo.find({
213
- where: { module_id: In(modules) },
181
+ where: { module_code: In(moduleCodes) },
214
182
  });
215
183
 
216
184
  // Map actions by module_code with VIEW action first
@@ -219,11 +187,11 @@ export class ModuleAccessRepository {
219
187
  if (!acc[action.module_code]) acc[action.module_code] = [];
220
188
 
221
189
  const actionItem = {
222
- action: action.action_code,
190
+ action: action.action_type,
223
191
  name: action.action_name,
224
192
  };
225
193
 
226
- if (action.action_code === 'VIEW') {
194
+ if (action.action_type === 'VIEW') {
227
195
  acc[action.module_code].unshift(actionItem); // ➕ Add VIEW at start
228
196
  } else {
229
197
  acc[action.module_code].push(actionItem); // ➕ Add others at end
@@ -247,11 +215,10 @@ export class ModuleAccessRepository {
247
215
  (mod) =>
248
216
  mod.wbs_code.startsWith(`${parentWbs}.`) &&
249
217
  mod.wbs_code.split('.').length ===
250
- parentWbs.split('.').length + 1,
218
+ parentWbs.split('.').length + 1,
251
219
  )
252
220
  .map((mod) => ({
253
221
  name: mod.name,
254
- module_id: mod.id,
255
222
  code: mod.module_code,
256
223
  permission: actionMap[mod.module_code] || [],
257
224
  submod: buildHierarchy(mod.wbs_code),
@@ -261,7 +228,6 @@ export class ModuleAccessRepository {
261
228
  .filter((mod) => mod.level_type === lvl)
262
229
  .map((mod) => ({
263
230
  name: mod.name,
264
- module_id: mod.id,
265
231
  code: mod.module_code,
266
232
  permission: actionMap[mod.module_code] || [],
267
233
  submod: buildHierarchy(mod.wbs_code),
@@ -288,16 +254,10 @@ export class ModuleAccessRepository {
288
254
  for (const access of accessList) {
289
255
  const existing = await this.moduleAccessRepo.findOne({
290
256
  where: {
291
- role: {
292
- code: access.role_code,
293
- },
294
- module: {
295
- module_code: access.module_code,
296
- },
257
+ role_code: access.role_code,
258
+ module_code: access.module_code,
297
259
  action_type: access.action_type,
298
- app: {
299
- code: access.appcode,
300
- },
260
+ appcode: access.appcode,
301
261
  level_type: access.level_type,
302
262
  },
303
263
  });
@@ -307,7 +267,7 @@ export class ModuleAccessRepository {
307
267
  await this.moduleAccessRepo.save(existing);
308
268
  } else {
309
269
  await this.moduleAccessRepo.save(
310
- this.moduleAccessRepo.create(access),
270
+ await this.moduleAccessRepo.create(access),
311
271
  );
312
272
  }
313
273
  }
@@ -325,10 +285,13 @@ export class ModuleAccessRepository {
325
285
 
326
286
  if (!module) throw new BadRequestException('Module not found');
327
287
 
288
+ const roles = await this.roleRepo.find({ where: { id: In(roleIds) } });
289
+ const roleCodes = roles.map((role) => role.code);
290
+
328
291
  const actions = await this.moduleAccessRepo.find({
329
292
  where: {
330
- module_id: module.id,
331
- role_id: In(roleIds),
293
+ module_code: moduleCode,
294
+ role_code: In(roleCodes),
332
295
  access_flag: 1,
333
296
  },
334
297
  });
@@ -338,16 +301,16 @@ export class ModuleAccessRepository {
338
301
  return {
339
302
  entity_type: module.entity_type,
340
303
  title: module.title,
304
+ ui_config: module.ui_config || {},
341
305
  action: uniqueActions,
342
306
  };
343
307
  }
344
-
345
- async getModuleAccessByRoles(roleIds: number[], app_id: number) {
308
+ async getModuleAccessByRoles(roleIds: number[], appcode: string) {
346
309
  // Step 1: Get role codes from sso_role
347
310
  const roles = await this.roleRepo.find({
348
311
  where: {
349
312
  id: In(roleIds),
350
- app_id,
313
+ appcode,
351
314
  },
352
315
  select: ['id', 'code'],
353
316
  });
@@ -366,7 +329,7 @@ export class ModuleAccessRepository {
366
329
  'access.appcode AS appcode',
367
330
  ])
368
331
  .where('access.role_code IN (:...roleCodes)', { roleCodes })
369
- .andWhere('access.app_id = :app_id', { app_id })
332
+ .andWhere('access.appcode = :appcode', { appcode })
370
333
  .getRawMany();
371
334
 
372
335
  // Step 3: Format output
@@ -1,43 +1,45 @@
1
1
  import { Injectable } from '@nestjs/common';
2
2
  import { MenuRepository } from '../repository/menu.repository';
3
3
  import { MenuData } from '../entity/menu.entity';
4
+ import { DataSource } from 'typeorm';
5
+ import { UserRoleMapping } from 'src/module/user/entity/user-role-mapping.entity';
4
6
 
5
7
  @Injectable()
6
8
  export class MenuService {
7
9
  constructor(
8
10
  private readonly menuRepository: MenuRepository,
9
- ) {
10
- }
11
+ private readonly datasource: DataSource,
12
+ ) {}
11
13
 
12
14
  /**
13
15
  * Fetch and construct menu hierarchy for a given user.
14
16
  */
15
17
  async getUserMenu(
16
18
  userId: number,
17
- app_id: number,
19
+ appcode: string,
18
20
  levelType: 'ORG' | 'SCH',
19
21
  levelId: number,
20
22
  ): Promise<{ menu: any[] }> {
21
23
  // Step 1: Resolve roles (with fallback logic inside)
22
24
  const roleCodes = await this.menuRepository.resolveUserRoles(
23
25
  userId,
24
- app_id,
26
+ appcode,
25
27
  levelType,
26
28
  levelId,
27
29
  );
28
30
  if (!roleCodes.length) return { menu: [] };
29
31
 
30
32
  // Step 2: Get accessible modules
31
- const modules = await this.menuRepository.getAccessibleModules(
33
+ const moduleCodes = await this.menuRepository.getAccessibleModules(
32
34
  roleCodes,
33
- app_id,
35
+ appcode,
34
36
  );
35
- if (!modules.length) return { menu: [] };
37
+ if (!moduleCodes.length) return { menu: [] };
36
38
 
37
39
  // Step 3: Get menu items for the given level type
38
40
  const menuItems = await this.menuRepository.getMenuItems(
39
- modules,
40
- app_id,
41
+ moduleCodes,
42
+ appcode,
41
43
  levelType,
42
44
  );
43
45
 
@@ -74,7 +76,7 @@ export class MenuService {
74
76
  }
75
77
 
76
78
  // get user roles
77
- async getUserRoles(userId: number, app_id: number): Promise<any> {
78
- return this.menuRepository.getUserRoles(userId, app_id);
79
+ async getUserRoles(userId: number, appcode: string): Promise<any> {
80
+ return this.menuRepository.getUserRoles(userId, appcode);
79
81
  }
80
82
  }
@@ -1,21 +1,27 @@
1
- import { BadRequestException, Injectable } from '@nestjs/common';
1
+ import { BadRequestException, Inject, Injectable } from '@nestjs/common';
2
2
  import { ModuleAccessRepository } from '../repository/module-access.repository';
3
- import { IsNull, Not, Or, Repository } from 'typeorm';
3
+ import { RoleRepository } from 'src/module/user/repository/role.repository';
4
+ import { RoleService } from '../../user/service/role.service';
5
+ import {
6
+ ENTITYTYPE_ROLE,
7
+ STATUS_INACTIVE,
8
+ } from '../../../constant/global.constant';
9
+ import { Role } from '../../user/entity/role.entity';
10
+ import { DataSource, EntityManager } from 'typeorm';
4
11
  import { UserData } from 'src/module/user/entity/user.entity';
5
12
  import { MenuRepository } from '../repository/menu.repository';
13
+ import { ListMasterService } from 'src/module/listmaster/service/list-master.service';
6
14
  import { ReflectionHelper } from '../../../utils/service/reflection-helper.service';
7
- import { Role } from '../../user/entity/role.entity';
8
- import { InjectRepository } from '@nestjs/typeorm';
9
- import { StatusConstant } from '../../../constant/status.constant';
10
15
 
11
16
  @Injectable()
12
17
  export class ModuleAccessService {
13
18
  constructor(
14
19
  private readonly moduleAccessRepository: ModuleAccessRepository,
15
20
  private readonly menuRepository: MenuRepository,
21
+ private readonly dataSource: DataSource,
22
+ @Inject('ListMasterService')
23
+ private readonly listMasterService: ListMasterService,
16
24
  private readonly reflectionHelper: ReflectionHelper,
17
- @InjectRepository(Role)
18
- private readonly roleRepo: Repository<Role>
19
25
  ) {
20
26
  }
21
27
 
@@ -36,26 +42,25 @@ export class ModuleAccessService {
36
42
  level_id?: number;
37
43
  include?: boolean;
38
44
  }) {
45
+ const query = this.dataSource
46
+ .createQueryBuilder()
47
+ .select('*')
48
+ .from('sso_role', 'role')
49
+ .where('role.appcode = :appcode', { appcode });
39
50
 
40
- const where: any = {
41
- app: {
42
- code: appcode
43
- }
44
- };
45
-
51
+ // Only add this condition if `include` is false (exclude factory roles)
46
52
  if (!include) {
47
- where.is_factory = Or(IsNull(), Not(1));
53
+ query.andWhere('(role.is_factory IS NULL OR role.is_factory != 1)');
48
54
  }
49
55
 
50
56
  if (level_type && level_id) {
51
- where.level_type = level_type;
52
- where.level_id = String(level_id);
57
+ query.andWhere('role.level_type = :level_type', { level_type });
58
+ query.andWhere('role.level_id = :level_id', {
59
+ level_id: String(level_id),
60
+ });
53
61
  }
54
62
 
55
- const roles = await this.roleRepo.find({
56
- where,
57
- });
58
-
63
+ const roles = await query.getRawMany();
59
64
 
60
65
  return roles.map((role) => ({
61
66
  label: role.name,
@@ -83,7 +88,7 @@ export class ModuleAccessService {
83
88
  levelType: string,
84
89
  ): Promise<Record<string, any[]>> {
85
90
  if (!appcode) {
86
- throw new BadRequestException('App code is required');
91
+ throw new BadRequestException('Appcode is required');
87
92
  }
88
93
 
89
94
  return this.moduleAccessRepository.getAllModulesByLevel(
@@ -125,19 +130,21 @@ export class ModuleAccessService {
125
130
 
126
131
  async getUserPermissions({
127
132
  userId,
128
- app_id,
133
+ appcode,
129
134
  level_type,
130
135
  level_id,
136
+ enterprise_id,
131
137
  }: {
132
138
  userId: number;
133
- app_id: number;
139
+ appcode: string;
134
140
  level_type: string;
135
141
  level_id: number;
142
+ enterprise_id: number;
136
143
  }) {
137
144
  // Step 1: Resolve roles
138
145
  const roleCodes = await this.menuRepository.resolveUserRoles(
139
146
  userId,
140
- app_id,
147
+ appcode,
141
148
  level_type,
142
149
  level_id,
143
150
  );
@@ -152,7 +159,7 @@ export class ModuleAccessService {
152
159
  const allPermissions =
153
160
  await this.moduleAccessRepository.getModuleAccessByRoles(
154
161
  roleIds,
155
- app_id,
162
+ appcode,
156
163
  );
157
164
 
158
165
  // Step 3: If level_type is SCH, check school status using raw query
@@ -165,7 +172,12 @@ export class ModuleAccessService {
165
172
  },
166
173
  });
167
174
 
168
- if (!school || school.status === StatusConstant.INACTIVE) {
175
+ const resolveStatus = await this.listMasterService.getResolvedListCode(
176
+ STATUS_INACTIVE,
177
+ enterprise_id || 0,
178
+ );
179
+
180
+ if (!school || school.status === resolveStatus.id) {
169
181
  // Return only VIEW permissions
170
182
  return allPermissions.filter((perm) => perm.action === 'VIEW');
171
183
  }
@@ -1,58 +1,8 @@
1
- import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
1
+ import { BaseEntity } from 'src/module/meta/entity/base-entity.entity';
2
+ import { Column, Entity } from 'typeorm';
2
3
 
3
4
  @Entity({ name: 'frm_notification' })
4
- export class NotificationData {
5
- @PrimaryGeneratedColumn({ type: 'bigint' })
6
- id: number;
7
-
8
- @Column({ name: 'entity_type', type: 'varchar', length: 100, nullable: true })
9
- entity_type: string;
10
-
11
- @Column({ name: 'name', type: 'varchar', length: 100, nullable: true })
12
- name: string;
13
-
14
- @Column({ name: 'status', type: 'varchar', nullable: true, length: 100 })
15
- status: string;
16
-
17
- @Column({ name: 'parent_type', type: 'varchar', length: 100, nullable: true })
18
- parent_type: string;
19
-
20
- @Column({ name: 'parent_id', type: 'bigint', nullable: true })
21
- parent_id: number;
22
-
23
- @Column({ name: 'code', type: 'varchar', length: 100, nullable: true })
24
- code: string;
25
-
26
- @Column({ name: 'created_by', type: 'bigint', nullable: true })
27
- created_by: number;
28
-
29
- @Column({
30
- name: 'created_date',
31
- nullable: true,
32
- })
33
- created_date: Date;
34
-
35
- @Column({ name: 'modified_by', type: 'bigint', nullable: true })
36
- modified_by: number;
37
-
38
- @Column({ name: 'modified_date', nullable: true })
39
- modified_date: Date;
40
-
41
- @Column({ name: 'enterprise_id', type: 'int', nullable: true })
42
- enterprise_id: number;
43
-
44
- @Column({ name: 'organization_id', type: 'int', nullable: true })
45
- organization_id: number;
46
-
47
- @Column({ name: 'appcode', type: 'varchar', length: 100, nullable: true })
48
- appcode: string;
49
-
50
- @Column({ name: 'level_id', type: 'varchar', length: 100, nullable: true })
51
- level_id: string;
52
-
53
- @Column({ name: 'level_type', type: 'varchar', length: 100, nullable: true })
54
- level_type: string;
55
-
5
+ export class NotificationData extends BaseEntity {
56
6
  @Column({ name: 'user_id', type: 'int', nullable: true })
57
7
  user_id: number | null;
58
8
 
@@ -15,6 +15,7 @@ import { IcsMeetingModule } from '../ics/ics.module';
15
15
  import { NotificationData } from './entity/notification.entity';
16
16
  import { NotificationsController } from './controller/notification.controller';
17
17
  import { NotificationsService } from './service/notification.service';
18
+ import { EntityModule } from '../meta/entity.module';
18
19
  import { FirebaseAdminProvider } from './firebase-admin.config';
19
20
 
20
21
  @Module({
@@ -48,6 +49,7 @@ import { FirebaseAdminProvider } from './firebase-admin.config';
48
49
  AuthModule,
49
50
  UserModule,
50
51
  IcsMeetingModule,
52
+ EntityModule,
51
53
  ],
52
54
  providers: [
53
55
  OtpService,
@@ -10,6 +10,7 @@ import { ReflectionHelper } from 'src/utils/service/reflection-helper.service';
10
10
  export class NotificationsService {
11
11
  constructor(
12
12
  private readonly entityManager: EntityManager,
13
+ private readonly mediaDataService: MediaDataService,
13
14
  private readonly configService: ConfigService,
14
15
  private readonly reflectionHelper: ReflectionHelper,
15
16
  @Inject('FIREBASE_ADMIN') private readonly firebaseAdmin: typeof admin,
@@ -1,5 +1,5 @@
1
1
  import { DataSource } from 'typeorm';
2
- import { Injectable } from '@nestjs/common';
2
+ import { BadRequestException, Injectable } from '@nestjs/common';
3
3
  import { ConfigService } from '@nestjs/config';
4
4
  import { ClockIDGenService } from '../../../utils/service/clockIDGenUtil.service';
5
5
  import { Otp } from '../entity/otp.entity';
@@ -16,8 +16,7 @@ export class OtpService {
16
16
  private readonly loginService: LoginService,
17
17
  private readonly emailService: EmailService,
18
18
  private readonly dataSource: DataSource,
19
- ) {
20
- }
19
+ ) {}
21
20
 
22
21
  VERIFY_OTP = this.configService.get('VERIFY_OTP') || 'true';
23
22
  DEFAULT_OTP = this.configService.get('DEFAULT_OTP') || '123456';
@@ -22,7 +22,8 @@ export class LoginController {
22
22
  constructor(
23
23
  private loginService: LoginService,
24
24
  private userSessionService: UserSessionService,
25
- private configService: ConfigService
25
+ private configService: ConfigService,
26
+ private integrationService: IntegrationService,
26
27
  ) {}
27
28
 
28
29
  @Post('login')
@@ -85,12 +86,12 @@ export class LoginController {
85
86
  const actualState = state.replace('gmail_config:', '');
86
87
 
87
88
  // Forward to communication service for Gmail config handling using already exchanged tokens
88
- // const result = await this.integrationService.handleGmailTokensCallback(
89
- // email,
90
- // googleAccessToken,
91
- // googleRefreshToken,
92
- // actualState,
93
- // );
89
+ const result = await this.integrationService.handleGmailTokensCallback(
90
+ email,
91
+ googleAccessToken,
92
+ googleRefreshToken,
93
+ actualState,
94
+ );
94
95
 
95
96
  return res.send(
96
97
  `<html><body><script>
@@ -18,6 +18,15 @@ export class UserController {
18
18
  @Inject('UserService') private readonly userService: UserService,
19
19
  ) {}
20
20
 
21
+ @Post('user/signup')
22
+ async signup(
23
+ @Body(new ValidationPipe()) createUserDto: CreateUserDto,
24
+ @Res() res: Response,
25
+ ) {
26
+ const result = await this.userService.createEntity(createUserDto, null);
27
+ res.status(HttpStatus.OK).json(result);
28
+ }
29
+
21
30
  @Post('check-email')
22
31
  @HttpCode(HttpStatus.OK)
23
32
  async checkEmail(@Body() body, @Res() res: Response) {