rez_core 6.5.23 → 6.5.26

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 +130 -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
@@ -0,0 +1,244 @@
1
+ import { Test, TestingModule } from '@nestjs/testing';
2
+ import { LinkedAttributesService } from '../service/linked_attributes.service';
3
+ import { DataSource } from 'typeorm';
4
+ import { EntityMasterService } from 'src/module/meta/service/entity-master.service';
5
+ import { AttributeMasterService } from 'src/module/meta/service/attribute-master.service';
6
+ import { SavedFilterService } from 'src/module/filter/service/saved-filter.service';
7
+ import { SavedFilterDetailRepository } from 'src/module/filter/repository/saved.filter-detail.repository';
8
+ import { EntityJSONService } from 'src/module/entity_json/service/entity_json.service';
9
+
10
+ describe('LinkedAttributesService - Phase 1 Tests', () => {
11
+ let service: LinkedAttributesService;
12
+ let dataSource: DataSource;
13
+ let entityMasterService: EntityMasterService;
14
+ let attributeMasterService: AttributeMasterService;
15
+
16
+ const mockDataSource = {
17
+ getRepository: jest.fn(),
18
+ transaction: jest.fn(),
19
+ };
20
+
21
+ const mockEntityMasterService = {
22
+ getEntityData: jest.fn(),
23
+ };
24
+
25
+ const mockAttributeMasterService = {
26
+ findAttributesByMappedEntityType: jest.fn(),
27
+ };
28
+
29
+ const mockSavedFilterService = {
30
+ createEntity: jest.fn(),
31
+ };
32
+
33
+ const mockSavedFilterDetailRepository = {
34
+ findByMappedFilterCode: jest.fn(),
35
+ };
36
+
37
+ const mockEntityJSONService = {
38
+ updateEntityJSON: jest.fn(),
39
+ };
40
+
41
+ const mockLoggedInUser = {
42
+ id: 1,
43
+ organization_id: 100,
44
+ level_type: 'ORG',
45
+ level_id: 100,
46
+ };
47
+
48
+ beforeEach(async () => {
49
+ const module: TestingModule = await Test.createTestingModule({
50
+ providers: [
51
+ LinkedAttributesService,
52
+ { provide: DataSource, useValue: mockDataSource },
53
+ { provide: EntityMasterService, useValue: mockEntityMasterService },
54
+ {
55
+ provide: AttributeMasterService,
56
+ useValue: mockAttributeMasterService,
57
+ },
58
+ { provide: 'SavedFilterService', useValue: mockSavedFilterService },
59
+ {
60
+ provide: SavedFilterDetailRepository,
61
+ useValue: mockSavedFilterDetailRepository,
62
+ },
63
+ { provide: EntityJSONService, useValue: mockEntityJSONService },
64
+ ],
65
+ }).compile();
66
+
67
+ service = module.get<LinkedAttributesService>(LinkedAttributesService);
68
+ dataSource = module.get<DataSource>(DataSource);
69
+ });
70
+
71
+ afterEach(() => {
72
+ jest.clearAllMocks();
73
+ });
74
+
75
+ describe('Task 1.1: generateAttributeKey', () => {
76
+ it('should generate correct attribute key format', () => {
77
+ const result = service.generateAttributeKey('LFMG', 'name', 1);
78
+ expect(result).toBe('LFMG__name__1');
79
+ });
80
+
81
+ it('should handle different sequences', () => {
82
+ expect(service.generateAttributeKey('LFMG', 'name', 1)).toBe(
83
+ 'LFMG__name__1',
84
+ );
85
+ expect(service.generateAttributeKey('LFMG', 'name', 2)).toBe(
86
+ 'LFMG__name__2',
87
+ );
88
+ expect(service.generateAttributeKey('LFMG', 'name', 99)).toBe(
89
+ 'LFMG__name__99',
90
+ );
91
+ });
92
+
93
+ it('should throw error for empty entity_type', () => {
94
+ expect(() => service.generateAttributeKey('', 'name', 1)).toThrow(
95
+ 'applicable_entity_type is required and cannot be empty',
96
+ );
97
+ });
98
+
99
+ it('should throw error for empty attribute_key', () => {
100
+ expect(() => service.generateAttributeKey('LFMG', '', 1)).toThrow(
101
+ 'applicable_attribute_key is required and cannot be empty',
102
+ );
103
+ });
104
+
105
+ it('should throw error for invalid sequence', () => {
106
+ expect(() => service.generateAttributeKey('LFMG', 'name', 0)).toThrow(
107
+ 'sequence must be a positive integer greater than 0',
108
+ );
109
+ expect(() => service.generateAttributeKey('LFMG', 'name', -1)).toThrow(
110
+ 'sequence must be a positive integer greater than 0',
111
+ );
112
+ expect(() => service.generateAttributeKey('LFMG', 'name', 1.5)).toThrow(
113
+ 'sequence must be a positive integer greater than 0',
114
+ );
115
+ });
116
+
117
+ it('should trim whitespace from inputs', () => {
118
+ expect(() =>
119
+ service.generateAttributeKey(' ', 'name', 1),
120
+ ).toThrow();
121
+ expect(() =>
122
+ service.generateAttributeKey('LFMG', ' ', 1),
123
+ ).toThrow();
124
+ });
125
+ });
126
+
127
+ describe('Task 1.2: Validation Engine', () => {
128
+ it('should validate required fields', async () => {
129
+ const payload = {
130
+ field_name: '',
131
+ mapped_entity_type: 'LEAD',
132
+ applicable_entity_type: 'LFMG',
133
+ applicable_attribute_key: 'name',
134
+ organization_id: 100,
135
+ };
136
+
137
+ const result = await service.validateLinkedAttribute(
138
+ payload,
139
+ mockLoggedInUser,
140
+ );
141
+
142
+ expect(result.valid).toBe(false);
143
+ expect(result.errors).toContain(
144
+ "Required field 'field_name' is missing or empty",
145
+ );
146
+ });
147
+
148
+ it('should validate entity type exists', async () => {
149
+ mockEntityMasterService.getEntityData.mockRejectedValue(
150
+ new Error('Not found'),
151
+ );
152
+
153
+ const payload = {
154
+ field_name: 'Father Name',
155
+ mapped_entity_type: 'INVALID',
156
+ applicable_entity_type: 'LFMG',
157
+ applicable_attribute_key: 'name',
158
+ organization_id: 100,
159
+ };
160
+
161
+ const result = await service.validateLinkedAttribute(
162
+ payload,
163
+ mockLoggedInUser,
164
+ );
165
+
166
+ expect(result.valid).toBe(false);
167
+ expect(
168
+ result.errors.some((e) => e.includes('does not exist')),
169
+ ).toBe(true);
170
+ });
171
+
172
+ it('should pass validation for valid payload', async () => {
173
+ // Mock successful validations
174
+ mockEntityMasterService.getEntityData
175
+ .mockResolvedValueOnce({ id: 1 }) // mapped_entity_type
176
+ .mockResolvedValueOnce({ id: 2 }); // applicable_entity_type
177
+
178
+ mockAttributeMasterService.findAttributesByMappedEntityType.mockResolvedValue(
179
+ [{ attribute_key: 'name' }],
180
+ );
181
+
182
+ const mockRepository = {
183
+ createQueryBuilder: jest.fn().mockReturnValue({
184
+ where: jest.fn().mockReturnThis(),
185
+ andWhere: jest.fn().mockReturnThis(),
186
+ getOne: jest.fn().mockResolvedValue(null), // No duplicate
187
+ }),
188
+ };
189
+
190
+ mockDataSource.getRepository.mockReturnValue(mockRepository);
191
+
192
+ const payload = {
193
+ field_name: 'Father Name',
194
+ mapped_entity_type: 'LEAD',
195
+ applicable_entity_type: 'LFMG',
196
+ applicable_attribute_key: 'name',
197
+ organization_id: 100,
198
+ };
199
+
200
+ const result = await service.validateLinkedAttribute(
201
+ payload,
202
+ mockLoggedInUser,
203
+ );
204
+
205
+ expect(result.valid).toBe(true);
206
+ expect(result.errors).toHaveLength(0);
207
+ });
208
+ });
209
+
210
+ describe('Task 1.4: Smart Create Method', () => {
211
+ it('should throw BadRequestException on validation failure', async () => {
212
+ // Mock validation failure
213
+ mockEntityMasterService.getEntityData.mockRejectedValue(
214
+ new Error('Not found'),
215
+ );
216
+
217
+ const dto = {
218
+ field_name: 'Father Name',
219
+ mapped_entity_type: 'INVALID',
220
+ applicable_entity_type: 'LFMG',
221
+ applicable_attribute_key: 'name',
222
+ };
223
+
224
+ await expect(
225
+ service.createLinkedAttributeSmart(dto, mockLoggedInUser),
226
+ ).rejects.toThrow();
227
+ });
228
+ });
229
+
230
+ describe('Integration Tests', () => {
231
+ it('should handle end-to-end attribute key generation', () => {
232
+ // Test the full flow: sequence 1, 2, 3
233
+ expect(service.generateAttributeKey('LFMG', 'name', 1)).toBe(
234
+ 'LFMG__name__1',
235
+ );
236
+ expect(service.generateAttributeKey('LFMG', 'email', 1)).toBe(
237
+ 'LFMG__email__1',
238
+ );
239
+ expect(service.generateAttributeKey('CONTACT', 'phone', 1)).toBe(
240
+ 'CONTACT__phone__1',
241
+ );
242
+ });
243
+ });
244
+ });
@@ -212,6 +212,14 @@ export class ListMasterService {
212
212
  });
213
213
  }
214
214
 
215
+ if (loggedInUser?.appcode && sourceList === 'ROL') {
216
+ if (!this.skipLevelFilterEntities.includes(sourceList)) {
217
+ qb.andWhere(`${tableName}.appcode = :appcode`, {
218
+ appcode: loggedInUser.appcode,
219
+ });
220
+ }
221
+ }
222
+
215
223
  // ✅ Apply dynamic params
216
224
  for (const key in params) {
217
225
  qb.andWhere(`${tableName}.${key} = :${key}`, {
@@ -251,7 +259,7 @@ export class ListMasterService {
251
259
 
252
260
  const resolveInactiveStatus = await this.getResolvedListCode(
253
261
  STATUS_INACTIVE,
254
- loggedInUser?.enterprise_id || 0,
262
+ loggedInUser?.organization_id || 0,
255
263
  );
256
264
 
257
265
  // Fetch inactive records (with same filters but without status condition)
@@ -1,7 +1,17 @@
1
- import { Body, Controller, HttpCode, HttpStatus, Post, Query, Req, Res, UseGuards } from '@nestjs/common';
1
+ import {
2
+ Body,
3
+ Controller, HttpCode,
4
+ HttpStatus,
5
+ Post,
6
+ Query,
7
+ Req,
8
+ Res,
9
+ UseGuards,
10
+ } from '@nestjs/common';
2
11
  import { EntityTableService } from '../service/entity-table.service';
3
12
  import { Response } from 'express';
4
13
  import { JwtAuthGuard } from '../../auth/guards/jwt.guard';
14
+ import { PopulateMetaService } from '../service/populate-meta.service';
5
15
  import { EntityMasterService } from '../service/entity-master.service';
6
16
 
7
17
  @Controller('meta')
@@ -9,9 +19,9 @@ import { EntityMasterService } from '../service/entity-master.service';
9
19
  export class MetaController {
10
20
  constructor(
11
21
  private readonly entityTableService: EntityTableService,
22
+ private readonly populateMetaService: PopulateMetaService,
12
23
  private readonly entityMaster: EntityMasterService,
13
- ) {
14
- }
24
+ ) {}
15
25
 
16
26
  @Post('get-table-data')
17
27
  @HttpCode(HttpStatus.OK)
@@ -54,6 +64,18 @@ export class MetaController {
54
64
  });
55
65
  }
56
66
 
67
+ @Post('populate')
68
+ @HttpCode(HttpStatus.OK)
69
+ async populateMetaData(
70
+ @Query('organization_id') organizationId: number,
71
+ @Res() response: Response,
72
+ @Req() req: Request & { user: any },
73
+ ) {
74
+ const loggedInUser = req.user.userData;
75
+ const result =
76
+ await this.populateMetaService.populateMetaData(organizationId);
77
+ return response.status(HttpStatus.OK).json(result);
78
+ }
57
79
 
58
80
  @Post('operation-list')
59
81
  @HttpCode(HttpStatus.OK)
@@ -1,31 +1,15 @@
1
1
  import { Column, Entity, PrimaryGeneratedColumn } from 'typeorm';
2
+ import { BaseEntity } from './base-entity.entity';
2
3
 
3
4
  @Entity({ name: 'sso_app_master' })
4
- export class AppMaster {
5
+ export class AppMaster extends BaseEntity {
6
+ constructor() {
7
+ super();
8
+ this.entity_type = 'APM';
9
+ }
5
10
 
6
11
  @PrimaryGeneratedColumn()
7
12
  id: number;
8
-
9
- @Column({ name: 'name', type: 'varchar', length: 100, nullable: true })
10
- name: string;
11
-
12
- @Column({ name: 'status', type: 'varchar', nullable: true, length: 100 })
13
- status: string;
14
-
15
- @Column({ name: 'code', type: 'varchar', length: 100, nullable: true })
16
- code: string;
17
-
18
- @Column({ name: 'created_by', type: 'bigint', nullable: true })
19
- created_by: number;
20
-
21
- @Column({ name: 'created_date',nullable: true })
22
- created_date: Date;
23
-
24
- @Column({ name: 'modified_by', type: 'bigint', nullable: true })
25
- modified_by: number;
26
-
27
- @Column({ name: 'modified_date', nullable: true })
28
- modified_date: Date;
29
13
 
30
14
  @Column({ name: 'type', type: 'varchar', nullable: true })
31
15
  type: string;
@@ -47,4 +31,7 @@ export class AppMaster {
47
31
 
48
32
  @Column({ name: 'version', type: 'varchar', nullable: true })
49
33
  version: string;
34
+
35
+ @Column({ name: 'show_in_ui', type: 'boolean', nullable: true })
36
+ show_in_ui: string;
50
37
  }
@@ -3,7 +3,10 @@ import { ENTITYTYPE_ENTITYMASTER } from '../../../constant/global.constant';
3
3
  import { Column, Entity, Index } from 'typeorm';
4
4
 
5
5
  @Entity({ name: 'frm_entity_master' })
6
- @Index('idx_entity_master_mapped_type_org', ['mapped_entity_type', 'organization_id'])
6
+ @Index('idx_entity_master_mapped_type_org', [
7
+ 'mapped_entity_type',
8
+ 'organization_id',
9
+ ])
7
10
  export class EntityMaster extends BaseEntity {
8
11
  constructor() {
9
12
  super();
@@ -77,9 +80,12 @@ export class EntityMaster extends BaseEntity {
77
80
  @Column({ name: 'is_workflow', nullable: true })
78
81
  is_workflow: boolean;
79
82
 
80
- @Column({ name: 'doc_upload_path', nullable: true, length:50 })
83
+ @Column({ name: 'doc_upload_path', nullable: true, length: 50 })
81
84
  doc_upload_path: string;
82
85
 
83
- @Column({name: 'overwrite_path', type: 'int', nullable: true})
86
+ @Column({ name: 'overwrite_path', type: 'int', nullable: true })
84
87
  overwrite_path: number;
88
+
89
+ @Column({ name: 'is_flag_json', nullable: true })
90
+ is_flag_json: boolean;
85
91
  }
@@ -44,6 +44,7 @@ import { UserRoleMapping } from '../user/entity/user-role-mapping.entity';
44
44
  import { AppMasterService } from './service/app-master.service';
45
45
  import { AppMasterRespository } from './repository/app-master.repository';
46
46
  import { AppMaster } from './entity/app-master.entity';
47
+ import { PopulateMetaService } from './service/populate-meta.service';
47
48
  import { AttributeMasterController } from './controller/attribute-master.controller';
48
49
  import { EntityDynamicController } from './controller/entity-dynamic.controller';
49
50
  import { EntityDynamicService } from './service/entity-dynamic.service';
@@ -79,6 +80,7 @@ import { EntityRelationRepository } from './repository/entity-relation.repositor
79
80
  ]),
80
81
  forwardRef(() => ListMasterModule),
81
82
  forwardRef(() => FilterModule),
83
+ forwardRef(() => require('../entity_json/entity_json.module').EntityJSONModule),
82
84
  UtilsModule,
83
85
  forwardRef(() => WorkflowAutomationModule),
84
86
 
@@ -95,6 +97,7 @@ import { EntityRelationRepository } from './repository/entity-relation.repositor
95
97
  MasterService,
96
98
  EntityTableRepository,
97
99
  EntityTableService,
100
+ PopulateMetaService,
98
101
  EntityTableColumnRepository,
99
102
  EntityTableColumnService,
100
103
  MediaDataRepository,
@@ -119,7 +122,7 @@ import { EntityRelationRepository } from './repository/entity-relation.repositor
119
122
  AppMasterService,
120
123
  ResolverService,
121
124
  EntityMasterRepository,
122
- EntityRelationRepository,
125
+ EntityRelationRepository
123
126
  ],
124
127
  exports: [
125
128
  EntityMasterService,
@@ -127,6 +130,7 @@ import { EntityRelationRepository } from './repository/entity-relation.repositor
127
130
  PreferenceService,
128
131
  EntityValidationService,
129
132
  EntityTableService,
133
+ PopulateMetaService,
130
134
  EntityTableColumnService,
131
135
  MediaDataService,
132
136
  EntityUpdateService,
@@ -143,7 +147,6 @@ import { EntityRelationRepository } from './repository/entity-relation.repositor
143
147
  EntityDynamicService,
144
148
  'CommonService',
145
149
  'EntityRelationService',
146
- AppMasterRespository,
147
150
  ],
148
151
  controllers: [
149
152
  EntityController,
@@ -157,8 +160,6 @@ import { EntityRelationRepository } from './repository/entity-relation.repositor
157
160
  EntityRelationController,
158
161
  EntityMasterController,
159
162
  EntityPublicController,
160
-
161
163
  ],
162
164
  })
163
- export class EntityModule {
164
- }
165
+ export class EntityModule {}
@@ -14,7 +14,7 @@ export class AppMasterRespository {
14
14
  appCode: string,
15
15
  ): Promise<AppMaster[] | null> {
16
16
  return await this.AppMasterRespository.find({
17
- where: { code: appCode },
17
+ where: { appcode: appCode },
18
18
  });
19
19
  }
20
20
  }
@@ -1,12 +1,18 @@
1
- import { Injectable } from '@nestjs/common';
1
+ import { forwardRef, Inject, Injectable } from '@nestjs/common';
2
2
  import { AttributeMasterRepository } from '../repository/attribute-master.repository';
3
3
  import { UserData } from 'src/module/user/entity/user.entity';
4
4
  import { AttributeMaster } from '../entity/attribute-master.entity';
5
+ import { EntityMasterRepository } from '../repository/entity-master.repository';
6
+ import { EntityJSONService } from 'src/module/entity_json/service/entity_json.service';
5
7
 
6
8
  @Injectable()
7
9
  export class AttributeMasterService {
8
10
  constructor(
9
11
  private readonly attributeMasterRepository: AttributeMasterRepository,
12
+ @Inject(forwardRef(() => EntityMasterRepository))
13
+ private readonly entityMasterRepository: EntityMasterRepository,
14
+ @Inject(forwardRef(() => EntityJSONService))
15
+ private readonly entityJSONService: EntityJSONService,
10
16
  ) {
11
17
  }
12
18
 
@@ -24,6 +30,7 @@ export class AttributeMasterService {
24
30
  attributeData: AttributeMaster,
25
31
  loggedInUser: UserData,
26
32
  ): Promise<AttributeMaster> {
33
+ attributeData.organization_id = loggedInUser.organization_id;
27
34
  attributeData.enterprise_id = loggedInUser.enterprise_id;
28
35
  attributeData.level_type = loggedInUser.level_type;
29
36
  attributeData.level_id = loggedInUser.level_id;
@@ -85,6 +92,7 @@ export class AttributeMasterService {
85
92
  id: number,
86
93
  loggedInUser: UserData,
87
94
  ): Promise<AttributeMaster | null> {
95
+ attributeData.organization_id = loggedInUser.organization_id;
88
96
  attributeData.enterprise_id = loggedInUser.enterprise_id;
89
97
  attributeData.level_type = loggedInUser.level_type;
90
98
  attributeData.level_id = loggedInUser.level_id;
@@ -127,4 +135,26 @@ export class AttributeMasterService {
127
135
  loggedInUser.enterprise_id
128
136
  );
129
137
  }
138
+
139
+ async getAttributes(entityType: string, loggedInUser: any) {
140
+
141
+
142
+ const entityData = await this.entityMasterRepository.getEntityByMappedEntityType(
143
+ entityType,
144
+ loggedInUser.enterprise_id,
145
+ );
146
+
147
+ if (entityData && entityData.is_flag_json) {
148
+ return this.entityJSONService.getAttributeForFlatJSON(
149
+ entityType,
150
+ loggedInUser,
151
+ 'filter_attribute',
152
+ );
153
+ }
154
+
155
+ return await this.findAttributesByMappedEntityType(
156
+ entityType,
157
+ loggedInUser,
158
+ );
159
+ }
130
160
  }
@@ -17,6 +17,7 @@ export class EntityMasterService {
17
17
  private readonly dataSource: DataSource,
18
18
  @Inject('ListMasterService')
19
19
  private readonly listMasterService: ListMasterService,
20
+ @Inject(forwardRef(() => SavedFilterRepositoryService))
20
21
  private readonly savedFilterRepoService: SavedFilterRepositoryService,
21
22
  ) {}
22
23
 
@@ -1,14 +1,18 @@
1
- import { Injectable } from '@nestjs/common';
1
+ import { Inject, Injectable, forwardRef } from '@nestjs/common';
2
2
  import { EntityServiceImpl } from './entity-service-impl.service';
3
3
  import { EntityMasterRepository } from '../repository/entity-master.repository';
4
+ import { ReflectionHelper } from '../../../utils/service/reflection-helper.service';
4
5
  import { EntityRelationRepository } from '../repository/entity-relation.repository';
5
6
 
6
7
  @Injectable()
7
- export class EntityRelationService extends EntityServiceImpl {
8
- constructor(private entityMasterRepo: EntityMasterRepository,
9
- private entityRelationRepository: EntityRelationRepository) {
10
- super();
11
- }
8
+ export class EntityRelationService {
9
+ constructor(
10
+ @Inject(forwardRef(() => EntityMasterRepository))
11
+ private entityMasterRepo: EntityMasterRepository,
12
+ @Inject(forwardRef(() => ReflectionHelper))
13
+ private readonly reflectionHelper: ReflectionHelper,
14
+ private entityRelationRepository: EntityRelationRepository
15
+ ) {}
12
16
 
13
17
  async getEntityRelations(
14
18
  entityType: string,
@@ -14,24 +14,14 @@ import { ResolverService } from './resolver.service';
14
14
 
15
15
  @Injectable()
16
16
  export class EntityServiceImpl implements EntityService<BaseEntity> {
17
- @Inject(forwardRef(() => EntityMasterService))
18
- protected readonly entityMasterService: EntityMasterService;
19
-
20
- @Inject(forwardRef(() => EntityTableColumnService))
17
+ @Inject() protected readonly entityMasterService: EntityMasterService;
18
+ @Inject()
21
19
  protected readonly entityTableColumnService: EntityTableColumnService;
22
-
23
- @Inject(forwardRef(() => EntityTableService))
24
- protected readonly entityTableService: EntityTableService;
25
-
26
- @Inject(forwardRef(() => ReflectionHelper))
27
- protected readonly reflectionHelper: ReflectionHelper;
28
-
29
- @Inject(forwardRef(() => LoggingService))
30
- protected readonly loggingService: LoggingService;
31
-
32
- @Inject(forwardRef(() => EntityValidationService))
20
+ @Inject() protected readonly entityTableService: EntityTableService;
21
+ @Inject() protected readonly reflectionHelper: ReflectionHelper;
22
+ @Inject() protected readonly loggingService: LoggingService;
23
+ @Inject()
33
24
  protected readonly entityValidationService: EntityValidationService;
34
-
35
25
  @Inject(forwardRef(() => ResolverService))
36
26
  protected readonly resolverService: ResolverService;
37
27
 
@@ -87,19 +77,21 @@ export class EntityServiceImpl implements EntityService<BaseEntity> {
87
77
  const statusList = await listMasterItemsRepo.findOne({
88
78
  where: {
89
79
  code: STATUS_ACTIVE,
90
- enterprise_id: loggedInUser?.enterprise_id || 0,
80
+ organization_id: loggedInUser?.organization_id || 0,
91
81
  },
92
82
  select: ['id'],
93
83
  });
94
84
 
95
85
  console.log('Status List:', statusList); // Debug log
96
86
  console.log(
97
- `status_code,${STATUS_ACTIVE},statusList, ${loggedInUser?.enterprise_id}`,
87
+ `status_code,${STATUS_ACTIVE},statusList, ${loggedInUser?.organization_id}`,
98
88
  ); // Debug log
99
89
 
100
90
  entityData.created_date = new Date();
101
91
  if (loggedInUser) {
102
92
  entityData.created_by = loggedInUser.id;
93
+ if (!entityData.organization_id)
94
+ entityData.organization_id = loggedInUser.organization_id;
103
95
  if (!entityData.enterprise_id)
104
96
  entityData.enterprise_id = loggedInUser.enterprise_id;
105
97
  if (!entityData.level_type)
@@ -299,6 +291,8 @@ export class EntityServiceImpl implements EntityService<BaseEntity> {
299
291
  entityData.modified_date = new Date();
300
292
  if (loggedInUser) {
301
293
  entityData.modified_by = loggedInUser.id;
294
+ if (!entityData.organization_id && entityData.entity_type !== 'ORG')
295
+ entityData.organization_id = loggedInUser.organization_id;
302
296
  if (!entityData.enterprise_id)
303
297
  entityData.enterprise_id = loggedInUser.enterprise_id;
304
298
  }
@@ -350,6 +344,7 @@ export class EntityServiceImpl implements EntityService<BaseEntity> {
350
344
  entityType: string,
351
345
  entityId: number,
352
346
  loggedInUser: UserData,
347
+ format_disable?: boolean,
353
348
  ): Promise<any> {
354
349
  const entityData = await this.entityMasterService.getEntityData(
355
350
  entityType,
@@ -367,7 +362,7 @@ export class EntityServiceImpl implements EntityService<BaseEntity> {
367
362
  }
368
363
  const data = await repoService.findOne({ where: { id: entityId } });
369
364
 
370
- return this.resolverService.getResolvedData(loggedInUser, data, entityType);
365
+ return this.resolverService.getResolvedData(loggedInUser, data, entityType,format_disable);
371
366
  }
372
367
 
373
368
  async getResolvedEntityDataByDataSource(