rez_core 0.0.1

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 (345) hide show
  1. package/.env +6 -0
  2. package/.husky/pre-commit +0 -0
  3. package/.prettierrc +4 -0
  4. package/README.md +99 -0
  5. package/dist/app.controller.d.ts +6 -0
  6. package/dist/app.controller.js +34 -0
  7. package/dist/app.controller.js.map +1 -0
  8. package/dist/app.module.d.ts +2 -0
  9. package/dist/app.module.js +32 -0
  10. package/dist/app.module.js.map +1 -0
  11. package/dist/app.service.d.ts +3 -0
  12. package/dist/app.service.js +20 -0
  13. package/dist/app.service.js.map +1 -0
  14. package/dist/config/config.module.d.ts +2 -0
  15. package/dist/config/config.module.js +29 -0
  16. package/dist/config/config.module.js.map +1 -0
  17. package/dist/config/database.config.d.ts +4 -0
  18. package/dist/config/database.config.js +30 -0
  19. package/dist/config/database.config.js.map +1 -0
  20. package/dist/constant/global.constant.d.ts +9 -0
  21. package/dist/constant/global.constant.js +13 -0
  22. package/dist/constant/global.constant.js.map +1 -0
  23. package/dist/constant/status.constant.d.ts +4 -0
  24. package/dist/constant/status.constant.js +9 -0
  25. package/dist/constant/status.constant.js.map +1 -0
  26. package/dist/core.module.d.ts +4 -0
  27. package/dist/core.module.js +51 -0
  28. package/dist/core.module.js.map +1 -0
  29. package/dist/decorators/roles.decorator.d.ts +1 -0
  30. package/dist/decorators/roles.decorator.js +7 -0
  31. package/dist/decorators/roles.decorator.js.map +1 -0
  32. package/dist/index.d.ts +1 -0
  33. package/dist/index.js +18 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/main.d.ts +1 -0
  36. package/dist/main.js +36 -0
  37. package/dist/main.js.map +1 -0
  38. package/dist/module/auth/auth.module.d.ts +2 -0
  39. package/dist/module/auth/auth.module.js +49 -0
  40. package/dist/module/auth/auth.module.js.map +1 -0
  41. package/dist/module/auth/guards/google-auth.guard.d.ts +6 -0
  42. package/dist/module/auth/guards/google-auth.guard.js +21 -0
  43. package/dist/module/auth/guards/google-auth.guard.js.map +1 -0
  44. package/dist/module/auth/guards/jwt.guard.d.ts +10 -0
  45. package/dist/module/auth/guards/jwt.guard.js +36 -0
  46. package/dist/module/auth/guards/jwt.guard.js.map +1 -0
  47. package/dist/module/auth/guards/role.guard.d.ts +9 -0
  48. package/dist/module/auth/guards/role.guard.js +59 -0
  49. package/dist/module/auth/guards/role.guard.js.map +1 -0
  50. package/dist/module/auth/services/auth.service.d.ts +12 -0
  51. package/dist/module/auth/services/auth.service.js +43 -0
  52. package/dist/module/auth/services/auth.service.js.map +1 -0
  53. package/dist/module/auth/services/jwt.service.d.ts +6 -0
  54. package/dist/module/auth/services/jwt.service.js +28 -0
  55. package/dist/module/auth/services/jwt.service.js.map +1 -0
  56. package/dist/module/auth/strategies/google.strategy.d.ts +7 -0
  57. package/dist/module/auth/strategies/google.strategy.js +36 -0
  58. package/dist/module/auth/strategies/google.strategy.js.map +1 -0
  59. package/dist/module/auth/strategies/jwt.strategy.d.ts +14 -0
  60. package/dist/module/auth/strategies/jwt.strategy.js +54 -0
  61. package/dist/module/auth/strategies/jwt.strategy.js.map +1 -0
  62. package/dist/module/auth/strategies/local.strategy.d.ts +7 -0
  63. package/dist/module/auth/strategies/local.strategy.js +30 -0
  64. package/dist/module/auth/strategies/local.strategy.js.map +1 -0
  65. package/dist/module/dev/dev.module.d.ts +2 -0
  66. package/dist/module/dev/dev.module.js +25 -0
  67. package/dist/module/dev/dev.module.js.map +1 -0
  68. package/dist/module/dev/service/dev.service.d.ts +5 -0
  69. package/dist/module/dev/service/dev.service.js +25 -0
  70. package/dist/module/dev/service/dev.service.js.map +1 -0
  71. package/dist/module/enterprise/enterprise.module.d.ts +2 -0
  72. package/dist/module/enterprise/enterprise.module.js +19 -0
  73. package/dist/module/enterprise/enterprise.module.js.map +1 -0
  74. package/dist/module/enterprise/entity/enterprise.entity.d.ts +13 -0
  75. package/dist/module/enterprise/entity/enterprise.entity.js +64 -0
  76. package/dist/module/enterprise/entity/enterprise.entity.js.map +1 -0
  77. package/dist/module/enterprise/entity/organization.entity.d.ts +26 -0
  78. package/dist/module/enterprise/entity/organization.entity.js +120 -0
  79. package/dist/module/enterprise/entity/organization.entity.js.map +1 -0
  80. package/dist/module/master/controller/master.controller.d.ts +6 -0
  81. package/dist/module/master/controller/master.controller.js +43 -0
  82. package/dist/module/master/controller/master.controller.js.map +1 -0
  83. package/dist/module/master/service/master.service.d.ts +9 -0
  84. package/dist/module/master/service/master.service.js +50 -0
  85. package/dist/module/master/service/master.service.js.map +1 -0
  86. package/dist/module/meta/controller/entity.controller.d.ts +14 -0
  87. package/dist/module/meta/controller/entity.controller.js +98 -0
  88. package/dist/module/meta/controller/entity.controller.js.map +1 -0
  89. package/dist/module/meta/dto/entity-list-data.dto.d.ts +5 -0
  90. package/dist/module/meta/dto/entity-list-data.dto.js +7 -0
  91. package/dist/module/meta/dto/entity-list-data.dto.js.map +1 -0
  92. package/dist/module/meta/dto/entity-tab.dto.d.ts +4 -0
  93. package/dist/module/meta/dto/entity-tab.dto.js +7 -0
  94. package/dist/module/meta/dto/entity-tab.dto.js.map +1 -0
  95. package/dist/module/meta/entity/attribute-master.entity.d.ts +17 -0
  96. package/dist/module/meta/entity/attribute-master.entity.js +97 -0
  97. package/dist/module/meta/entity/attribute-master.entity.js.map +1 -0
  98. package/dist/module/meta/entity/base-entity.entity.d.ts +17 -0
  99. package/dist/module/meta/entity/base-entity.entity.js +91 -0
  100. package/dist/module/meta/entity/base-entity.entity.js.map +1 -0
  101. package/dist/module/meta/entity/entity-master.entity.d.ts +12 -0
  102. package/dist/module/meta/entity/entity-master.entity.js +86 -0
  103. package/dist/module/meta/entity/entity-master.entity.js.map +1 -0
  104. package/dist/module/meta/entity/entity-table-column.entity.d.ts +0 -0
  105. package/dist/module/meta/entity/entity-table-column.entity.js +1 -0
  106. package/dist/module/meta/entity/entity-table-column.entity.js.map +1 -0
  107. package/dist/module/meta/entity/entity-table.entity.d.ts +0 -0
  108. package/dist/module/meta/entity/entity-table.entity.js +1 -0
  109. package/dist/module/meta/entity/entity-table.entity.js.map +1 -0
  110. package/dist/module/meta/entity/preference.entity.d.ts +12 -0
  111. package/dist/module/meta/entity/preference.entity.js +89 -0
  112. package/dist/module/meta/entity/preference.entity.js.map +1 -0
  113. package/dist/module/meta/entity.module.d.ts +2 -0
  114. package/dist/module/meta/entity.module.js +45 -0
  115. package/dist/module/meta/entity.module.js.map +1 -0
  116. package/dist/module/meta/repository/attribute-master.repository.d.ts +7 -0
  117. package/dist/module/meta/repository/attribute-master.repository.js +41 -0
  118. package/dist/module/meta/repository/attribute-master.repository.js.map +1 -0
  119. package/dist/module/meta/repository/entity-table-column.repository.d.ts +7 -0
  120. package/dist/module/meta/repository/entity-table-column.repository.js +39 -0
  121. package/dist/module/meta/repository/entity-table-column.repository.js.map +1 -0
  122. package/dist/module/meta/repository/entity-table.repository.d.ts +7 -0
  123. package/dist/module/meta/repository/entity-table.repository.js +36 -0
  124. package/dist/module/meta/repository/entity-table.repository.js.map +1 -0
  125. package/dist/module/meta/repository/preference.repository.d.ts +7 -0
  126. package/dist/module/meta/repository/preference.repository.js +36 -0
  127. package/dist/module/meta/repository/preference.repository.js.map +1 -0
  128. package/dist/module/meta/service/entity-list.service.d.ts +15 -0
  129. package/dist/module/meta/service/entity-list.service.js +111 -0
  130. package/dist/module/meta/service/entity-list.service.js.map +1 -0
  131. package/dist/module/meta/service/entity-master.service.d.ts +7 -0
  132. package/dist/module/meta/service/entity-master.service.js +40 -0
  133. package/dist/module/meta/service/entity-master.service.js.map +1 -0
  134. package/dist/module/meta/service/entity-service-impl.service.d.ts +17 -0
  135. package/dist/module/meta/service/entity-service-impl.service.js +87 -0
  136. package/dist/module/meta/service/entity-service-impl.service.js.map +1 -0
  137. package/dist/module/meta/service/entity-table-column.service.d.ts +6 -0
  138. package/dist/module/meta/service/entity-table-column.service.js +33 -0
  139. package/dist/module/meta/service/entity-table-column.service.js.map +1 -0
  140. package/dist/module/meta/service/entity-table.service.d.ts +6 -0
  141. package/dist/module/meta/service/entity-table.service.js +28 -0
  142. package/dist/module/meta/service/entity-table.service.js.map +1 -0
  143. package/dist/module/meta/service/entity.service.d.ts +10 -0
  144. package/dist/module/meta/service/entity.service.js +3 -0
  145. package/dist/module/meta/service/entity.service.js.map +1 -0
  146. package/dist/module/meta/service/preference.service.d.ts +10 -0
  147. package/dist/module/meta/service/preference.service.js +37 -0
  148. package/dist/module/meta/service/preference.service.js.map +1 -0
  149. package/dist/module/module/controller/menu.controller.d.ts +8 -0
  150. package/dist/module/module/controller/menu.controller.js +41 -0
  151. package/dist/module/module/controller/menu.controller.js.map +1 -0
  152. package/dist/module/module/controller/module-access.controller.d.ts +13 -0
  153. package/dist/module/module/controller/module-access.controller.js +49 -0
  154. package/dist/module/module/controller/module-access.controller.js.map +1 -0
  155. package/dist/module/module/entity/menu.entity.d.ts +14 -0
  156. package/dist/module/module/entity/menu.entity.js +65 -0
  157. package/dist/module/module/entity/menu.entity.js.map +1 -0
  158. package/dist/module/module/entity/module-access.entity.d.ts +8 -0
  159. package/dist/module/module/entity/module-access.entity.js +44 -0
  160. package/dist/module/module/entity/module-access.entity.js.map +1 -0
  161. package/dist/module/module/entity/module-action.entity.d.ts +7 -0
  162. package/dist/module/module/entity/module-action.entity.js +40 -0
  163. package/dist/module/module/entity/module-action.entity.js.map +1 -0
  164. package/dist/module/module/entity/module.entity.d.ts +11 -0
  165. package/dist/module/module/entity/module.entity.js +53 -0
  166. package/dist/module/module/entity/module.entity.js.map +1 -0
  167. package/dist/module/module/module.module.d.ts +2 -0
  168. package/dist/module/module/module.module.js +53 -0
  169. package/dist/module/module/module.module.js.map +1 -0
  170. package/dist/module/module/repository/menu.repository.d.ts +9 -0
  171. package/dist/module/module/repository/menu.repository.js +64 -0
  172. package/dist/module/module/repository/menu.repository.js.map +1 -0
  173. package/dist/module/module/repository/module-access.repository.d.ts +15 -0
  174. package/dist/module/module/repository/module-access.repository.js +82 -0
  175. package/dist/module/module/repository/module-access.repository.js.map +1 -0
  176. package/dist/module/module/service/menu.service.d.ts +9 -0
  177. package/dist/module/module/service/menu.service.js +55 -0
  178. package/dist/module/module/service/menu.service.js.map +1 -0
  179. package/dist/module/module/service/module-access.service.d.ts +13 -0
  180. package/dist/module/module/service/module-access.service.js +40 -0
  181. package/dist/module/module/service/module-access.service.js.map +1 -0
  182. package/dist/module/user/controller/login.controller.d.ts +14 -0
  183. package/dist/module/user/controller/login.controller.js +80 -0
  184. package/dist/module/user/controller/login.controller.js.map +1 -0
  185. package/dist/module/user/controller/user.controller.d.ts +8 -0
  186. package/dist/module/user/controller/user.controller.js +42 -0
  187. package/dist/module/user/controller/user.controller.js.map +1 -0
  188. package/dist/module/user/dto/create-user.dto.d.ts +10 -0
  189. package/dist/module/user/dto/create-user.dto.js +64 -0
  190. package/dist/module/user/dto/create-user.dto.js.map +1 -0
  191. package/dist/module/user/entity/role.entity.d.ts +7 -0
  192. package/dist/module/user/entity/role.entity.js +39 -0
  193. package/dist/module/user/entity/role.entity.js.map +1 -0
  194. package/dist/module/user/entity/user-role-mapping.entity.d.ts +7 -0
  195. package/dist/module/user/entity/user-role-mapping.entity.js +41 -0
  196. package/dist/module/user/entity/user-role-mapping.entity.js.map +1 -0
  197. package/dist/module/user/entity/user-session.entity.d.ts +11 -0
  198. package/dist/module/user/entity/user-session.entity.js +86 -0
  199. package/dist/module/user/entity/user-session.entity.js.map +1 -0
  200. package/dist/module/user/entity/user.entity.d.ts +12 -0
  201. package/dist/module/user/entity/user.entity.js +59 -0
  202. package/dist/module/user/entity/user.entity.js.map +1 -0
  203. package/dist/module/user/repository/role.repository.d.ts +7 -0
  204. package/dist/module/user/repository/role.repository.js +34 -0
  205. package/dist/module/user/repository/role.repository.js.map +1 -0
  206. package/dist/module/user/repository/user-role-mapping.repository.d.ts +12 -0
  207. package/dist/module/user/repository/user-role-mapping.repository.js +55 -0
  208. package/dist/module/user/repository/user-role-mapping.repository.js.map +1 -0
  209. package/dist/module/user/repository/user.repository.d.ts +10 -0
  210. package/dist/module/user/repository/user.repository.js +49 -0
  211. package/dist/module/user/repository/user.repository.js.map +1 -0
  212. package/dist/module/user/repository/userSession.repository.d.ts +10 -0
  213. package/dist/module/user/repository/userSession.repository.js +45 -0
  214. package/dist/module/user/repository/userSession.repository.js.map +1 -0
  215. package/dist/module/user/service/login.service.d.ts +18 -0
  216. package/dist/module/user/service/login.service.js +69 -0
  217. package/dist/module/user/service/login.service.js.map +1 -0
  218. package/dist/module/user/service/role.service.d.ts +10 -0
  219. package/dist/module/user/service/role.service.js +34 -0
  220. package/dist/module/user/service/role.service.js.map +1 -0
  221. package/dist/module/user/service/user-role-mapping.service.d.ts +9 -0
  222. package/dist/module/user/service/user-role-mapping.service.js +37 -0
  223. package/dist/module/user/service/user-role-mapping.service.js.map +1 -0
  224. package/dist/module/user/service/user-session.service.d.ts +13 -0
  225. package/dist/module/user/service/user-session.service.js +51 -0
  226. package/dist/module/user/service/user-session.service.js.map +1 -0
  227. package/dist/module/user/service/user.service.d.ts +17 -0
  228. package/dist/module/user/service/user.service.js +112 -0
  229. package/dist/module/user/service/user.service.js.map +1 -0
  230. package/dist/module/user/user.module.d.ts +2 -0
  231. package/dist/module/user/user.module.js +64 -0
  232. package/dist/module/user/user.module.js.map +1 -0
  233. package/dist/tsconfig.build.tsbuildinfo +1 -0
  234. package/dist/utils/service/base64util.service.d.ts +4 -0
  235. package/dist/utils/service/base64util.service.js +21 -0
  236. package/dist/utils/service/base64util.service.js.map +1 -0
  237. package/dist/utils/service/clockIDGenUtil.service.d.ts +8 -0
  238. package/dist/utils/service/clockIDGenUtil.service.js +31 -0
  239. package/dist/utils/service/clockIDGenUtil.service.js.map +1 -0
  240. package/dist/utils/service/dateUtil.service.d.ts +3 -0
  241. package/dist/utils/service/dateUtil.service.js +28 -0
  242. package/dist/utils/service/dateUtil.service.js.map +1 -0
  243. package/dist/utils/service/encryptUtil.service.d.ts +9 -0
  244. package/dist/utils/service/encryptUtil.service.js +112 -0
  245. package/dist/utils/service/encryptUtil.service.js.map +1 -0
  246. package/dist/utils/service/excel-helper.service.d.ts +7 -0
  247. package/dist/utils/service/excel-helper.service.js +44 -0
  248. package/dist/utils/service/excel-helper.service.js.map +1 -0
  249. package/dist/utils/service/excelUtil.service.d.ts +3 -0
  250. package/dist/utils/service/excelUtil.service.js +17 -0
  251. package/dist/utils/service/excelUtil.service.js.map +1 -0
  252. package/dist/utils/service/json-util.service.d.ts +3 -0
  253. package/dist/utils/service/json-util.service.js +24 -0
  254. package/dist/utils/service/json-util.service.js.map +1 -0
  255. package/dist/utils/service/loggingUtil.service.d.ts +4 -0
  256. package/dist/utils/service/loggingUtil.service.js +49 -0
  257. package/dist/utils/service/loggingUtil.service.js.map +1 -0
  258. package/dist/utils/service/reflection-helper.service.d.ts +9 -0
  259. package/dist/utils/service/reflection-helper.service.js +60 -0
  260. package/dist/utils/service/reflection-helper.service.js.map +1 -0
  261. package/dist/utils/utils.module.d.ts +2 -0
  262. package/dist/utils/utils.module.js +26 -0
  263. package/dist/utils/utils.module.js.map +1 -0
  264. package/eslint.config.mjs +35 -0
  265. package/nest-cli.json +8 -0
  266. package/package.json +97 -0
  267. package/src/app.controller.ts +12 -0
  268. package/src/app.service.ts +8 -0
  269. package/src/config/config.module.ts +18 -0
  270. package/src/config/database.config.ts +20 -0
  271. package/src/constant/global.constant.ts +10 -0
  272. package/src/constant/status.constant.ts +3 -0
  273. package/src/core.module.ts +40 -0
  274. package/src/decorators/roles.decorator.ts +4 -0
  275. package/src/index.ts +1 -0
  276. package/src/module/auth/auth.module.ts +36 -0
  277. package/src/module/auth/guards/google-auth.guard.ts +9 -0
  278. package/src/module/auth/guards/jwt.guard.ts +22 -0
  279. package/src/module/auth/guards/role.guard.ts +68 -0
  280. package/src/module/auth/services/auth.service.ts +29 -0
  281. package/src/module/auth/services/jwt.service.ts +11 -0
  282. package/src/module/auth/strategies/google.strategy.ts +29 -0
  283. package/src/module/auth/strategies/jwt.strategy.ts +43 -0
  284. package/src/module/auth/strategies/local.strategy.ts +13 -0
  285. package/src/module/dev/dev.module.ts +12 -0
  286. package/src/module/dev/service/dev.service.ts +7 -0
  287. package/src/module/enterprise/enterprise.module.ts +8 -0
  288. package/src/module/enterprise/entity/enterprise.entity.ts +37 -0
  289. package/src/module/enterprise/entity/organization.entity.ts +80 -0
  290. package/src/module/master/controller/master.controller.ts +22 -0
  291. package/src/module/master/service/master.service.ts +37 -0
  292. package/src/module/meta/controller/entity.controller.ts +108 -0
  293. package/src/module/meta/entity/attribute-master.entity.ts +67 -0
  294. package/src/module/meta/entity/base-entity.entity.ts +53 -0
  295. package/src/module/meta/entity/entity-master.entity.ts +62 -0
  296. package/src/module/meta/entity/entity-table-column.entity.ts +0 -0
  297. package/src/module/meta/entity/entity-table.entity.ts +0 -0
  298. package/src/module/meta/entity/preference.entity.ts +65 -0
  299. package/src/module/meta/entity.module.ts +32 -0
  300. package/src/module/meta/repository/attribute-master.repository.ts +28 -0
  301. package/src/module/meta/repository/preference.repository.ts +20 -0
  302. package/src/module/meta/service/entity-master.service.ts +26 -0
  303. package/src/module/meta/service/entity-service-impl.service.ts +131 -0
  304. package/src/module/meta/service/entity.service.ts +23 -0
  305. package/src/module/meta/service/preference.service.ts +24 -0
  306. package/src/module/module/controller/menu.controller.ts +15 -0
  307. package/src/module/module/controller/module-access.controller.ts +20 -0
  308. package/src/module/module/entity/menu.entity.ts +38 -0
  309. package/src/module/module/entity/module-access.entity.ts +22 -0
  310. package/src/module/module/entity/module-action.entity.ts +19 -0
  311. package/src/module/module/entity/module.entity.ts +29 -0
  312. package/src/module/module/module.module.ts +42 -0
  313. package/src/module/module/repository/menu.repository.ts +69 -0
  314. package/src/module/module/repository/module-access.repository.ts +66 -0
  315. package/src/module/module/service/menu.service.ts +61 -0
  316. package/src/module/module/service/module-access.service.ts +25 -0
  317. package/src/module/user/controller/login.controller.ts +55 -0
  318. package/src/module/user/controller/user.controller.ts +28 -0
  319. package/src/module/user/dto/create-user.dto.ts +52 -0
  320. package/src/module/user/entity/role.entity.ts +20 -0
  321. package/src/module/user/entity/user-role-mapping.entity.ts +21 -0
  322. package/src/module/user/entity/user-session.entity.ts +61 -0
  323. package/src/module/user/entity/user.entity.ts +35 -0
  324. package/src/module/user/repository/role.repository.ts +16 -0
  325. package/src/module/user/repository/user-role-mapping.repository.ts +44 -0
  326. package/src/module/user/repository/user.repository.ts +33 -0
  327. package/src/module/user/repository/userSession.repository.ts +33 -0
  328. package/src/module/user/service/login.service.ts +66 -0
  329. package/src/module/user/service/role.service.ts +29 -0
  330. package/src/module/user/service/user-role-mapping.service.ts +29 -0
  331. package/src/module/user/service/user-session.service.ts +41 -0
  332. package/src/module/user/service/user.service.ts +141 -0
  333. package/src/module/user/user.module.ts +51 -0
  334. package/src/utils/service/base64util.service.ts +19 -0
  335. package/src/utils/service/clockIDGenUtil.service.ts +21 -0
  336. package/src/utils/service/dateUtil.service.ts +17 -0
  337. package/src/utils/service/encryptUtil.service.ts +97 -0
  338. package/src/utils/service/excel-helper.service.ts +56 -0
  339. package/src/utils/service/excelUtil.service.ts +15 -0
  340. package/src/utils/service/json-util.service.ts +23 -0
  341. package/src/utils/service/loggingUtil.service.ts +56 -0
  342. package/src/utils/service/reflection-helper.service.ts +53 -0
  343. package/src/utils/utils.module.ts +14 -0
  344. package/tsconfig.build.json +4 -0
  345. package/tsconfig.json +23 -0
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.UserSessionRepository = void 0;
16
+ const typeorm_1 = require("typeorm");
17
+ const user_session_entity_1 = require("../entity/user-session.entity");
18
+ const common_1 = require("@nestjs/common");
19
+ const typeorm_2 = require("@nestjs/typeorm");
20
+ let UserSessionRepository = class UserSessionRepository {
21
+ constructor(userSessionRepo) {
22
+ this.userSessionRepo = userSessionRepo;
23
+ }
24
+ async findBySessionKey(sessionKey) {
25
+ return this.userSessionRepo.findOne({ where: { session_key: sessionKey } });
26
+ }
27
+ async findActiveSessionByUserId(userId) {
28
+ return this.userSessionRepo.findOne({
29
+ where: { user_id: userId, is_session_loggedout: 0 },
30
+ });
31
+ }
32
+ async saveSession(session) {
33
+ return this.userSessionRepo.save(session);
34
+ }
35
+ async logoutSession(sessionKey) {
36
+ await this.userSessionRepo.update({ session_key: sessionKey }, { is_session_loggedout: 1, logout_time: new Date() });
37
+ }
38
+ };
39
+ exports.UserSessionRepository = UserSessionRepository;
40
+ exports.UserSessionRepository = UserSessionRepository = __decorate([
41
+ (0, common_1.Injectable)(),
42
+ __param(0, (0, typeorm_2.InjectRepository)(user_session_entity_1.UserSession)),
43
+ __metadata("design:paramtypes", [typeorm_1.Repository])
44
+ ], UserSessionRepository);
45
+ //# sourceMappingURL=userSession.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"userSession.repository.js","sourceRoot":"","sources":["../../../../src/module/user/repository/userSession.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,qCAAqC;AACrC,uEAA4D;AAC5D,2CAA4C;AAC5C,6CAAmD;AAG5C,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,YAEU,eAAwC;QAAxC,oBAAe,GAAf,eAAe,CAAyB;IAC/C,CAAC;IAEJ,KAAK,CAAC,gBAAgB,CAAC,UAAkB;QACvC,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,MAAc;QAC5C,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;YAClC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,EAAE;SACpD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAoB;QACpC,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB;QACpC,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAC/B,EAAE,WAAW,EAAE,UAAU,EAAE,EAC3B,EAAE,oBAAoB,EAAE,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,EAAE,CACrD,CAAC;IACJ,CAAC;CACF,CAAA;AA1BY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,0BAAgB,EAAC,iCAAW,CAAC,CAAA;qCACL,oBAAU;GAH1B,qBAAqB,CA0BjC"}
@@ -0,0 +1,18 @@
1
+ import { UserSessionService } from './user-session.service';
2
+ import { UserService } from './user.service';
3
+ export declare class LoginService {
4
+ private readonly userService;
5
+ private userSessionService;
6
+ constructor(userService: UserService, userSessionService: UserSessionService);
7
+ masterKey: string;
8
+ masterIv: string;
9
+ login(email: string, password: string): Promise<{
10
+ accessToken: string;
11
+ }>;
12
+ loginWithGoogle(email: string, name: any): Promise<{
13
+ accessToken: string;
14
+ }>;
15
+ logout(sessionKey: string): Promise<{
16
+ message: string;
17
+ } | undefined>;
18
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.LoginService = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const encryptUtil_service_1 = require("../../../utils/service/encryptUtil.service");
18
+ const user_entity_1 = require("../entity/user.entity");
19
+ const user_session_service_1 = require("./user-session.service");
20
+ const user_service_1 = require("./user.service");
21
+ let LoginService = class LoginService {
22
+ constructor(userService, userSessionService) {
23
+ this.userService = userService;
24
+ this.userSessionService = userSessionService;
25
+ this.masterKey = process.env.master_key || '';
26
+ this.masterIv = process.env.master_iv || '';
27
+ }
28
+ async login(email, password) {
29
+ console.log(process.env.master_key);
30
+ const user = await this.userService.findByEmailId(email);
31
+ if (!user)
32
+ throw new common_1.BadRequestException('Invalid email or password');
33
+ const encryptedPassword = encryptUtil_service_1.EncryptUtilService.encryptGCM(password, this.masterKey, this.masterIv);
34
+ if (encryptedPassword !== user.password) {
35
+ throw new common_1.BadRequestException('Invalid email or password');
36
+ }
37
+ return this.userSessionService.createSession(user);
38
+ }
39
+ async loginWithGoogle(email, name) {
40
+ let user = await this.userService.findByEmailId(email);
41
+ if (!user) {
42
+ user = new user_entity_1.UserData();
43
+ user.email_id = email;
44
+ user.first_name = name.givenName;
45
+ user.last_name = name.familyName;
46
+ user.name = user.first_name + ' ' + user.last_name;
47
+ let savedUser = await this.userService.createEntity(user, null);
48
+ user = savedUser;
49
+ }
50
+ return this.userSessionService.createSession(user);
51
+ }
52
+ async logout(sessionKey) {
53
+ let userSession = await this.userSessionService.findBySessionKey(sessionKey);
54
+ if (userSession) {
55
+ userSession.is_session_loggedout = 1;
56
+ userSession.logout_time = new Date();
57
+ await this.userSessionService.updateSession(userSession);
58
+ return { message: 'Logged out successfully' };
59
+ }
60
+ }
61
+ };
62
+ exports.LoginService = LoginService;
63
+ exports.LoginService = LoginService = __decorate([
64
+ (0, common_1.Injectable)(),
65
+ __param(0, (0, common_1.Inject)('UserService')),
66
+ __metadata("design:paramtypes", [user_service_1.UserService,
67
+ user_session_service_1.UserSessionService])
68
+ ], LoginService);
69
+ //# sourceMappingURL=login.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"login.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/login.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAyE;AACzE,oFAAgF;AAChF,uDAAiD;AACjD,iEAA4D;AAC5D,iDAA6C;AAItC,IAAM,YAAY,GAAlB,MAAM,YAAY;IACvB,YACyB,WAAyC,EACxD,kBAAsC;QADN,gBAAW,GAAX,WAAW,CAAa;QACxD,uBAAkB,GAAlB,kBAAkB,CAAoB;QAGhD,cAAS,GAAW,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC;QACjD,aAAQ,GAAW,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,EAAE,CAAC;IAH5C,CAAC;IAKJ,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,QAAgB;QACzC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QACnC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,4BAAmB,CAAC,2BAA2B,CAAC,CAAC;QAEtE,MAAM,iBAAiB,GAAG,wCAAkB,CAAC,UAAU,CACrD,QAAQ,EACR,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,CACd,CAAC;QAEF,IAAI,iBAAiB,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,IAAI,4BAAmB,CAAC,2BAA2B,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,KAAa,EAAE,IAAI;QACvC,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAEvD,IAAI,CAAC,IAAI,EAAE,CAAC;YAEV,IAAI,GAAG,IAAI,sBAAQ,EAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;YAEjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;YACnD,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAEhE,IAAI,GAAG,SAAqB,CAAC;QAC/B,CAAC;QAGD,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,UAAkB;QAC7B,IAAI,WAAW,GACb,MAAM,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,WAAW,EAAE,CAAC;YAChB,WAAW,CAAC,oBAAoB,GAAG,CAAC,CAAC;YACrC,WAAW,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACzD,OAAO,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;QAChD,CAAC;IACH,CAAC;CACF,CAAA;AAzDY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,eAAM,EAAC,aAAa,CAAC,CAAA;qCAA+B,0BAAW;QACpC,yCAAkB;GAHrC,YAAY,CAyDxB"}
@@ -0,0 +1,10 @@
1
+ import { EntityServiceImpl } from '../../meta/service/entity-service-impl.service';
2
+ import { EntityMasterService } from '../../meta/service/entity-master.service';
3
+ import { ReflectionHelper } from '../../../utils/service/reflection-helper.service';
4
+ import { LoggingService } from '../../../utils/service/loggingUtil.service';
5
+ import { BaseEntity } from '../../meta/entity/base-entity.entity';
6
+ import { UserData } from '../entity/user.entity';
7
+ export declare class RoleService extends EntityServiceImpl {
8
+ constructor(entityMasterService: EntityMasterService, reflectionHelper: ReflectionHelper, loggingService: LoggingService);
9
+ createEntity(entityData: BaseEntity, loggedInUser: UserData | null): Promise<BaseEntity>;
10
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RoleService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const entity_service_impl_service_1 = require("../../meta/service/entity-service-impl.service");
15
+ const entity_master_service_1 = require("../../meta/service/entity-master.service");
16
+ const reflection_helper_service_1 = require("../../../utils/service/reflection-helper.service");
17
+ const loggingUtil_service_1 = require("../../../utils/service/loggingUtil.service");
18
+ let RoleService = class RoleService extends entity_service_impl_service_1.EntityServiceImpl {
19
+ constructor(entityMasterService, reflectionHelper, loggingService) {
20
+ super(entityMasterService, reflectionHelper, loggingService);
21
+ }
22
+ async createEntity(entityData, loggedInUser) {
23
+ let role = entityData;
24
+ return await super.createEntity(role, loggedInUser);
25
+ }
26
+ };
27
+ exports.RoleService = RoleService;
28
+ exports.RoleService = RoleService = __decorate([
29
+ (0, common_1.Injectable)(),
30
+ __metadata("design:paramtypes", [entity_master_service_1.EntityMasterService,
31
+ reflection_helper_service_1.ReflectionHelper,
32
+ loggingUtil_service_1.LoggingService])
33
+ ], RoleService);
34
+ //# sourceMappingURL=role.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/role.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,gGAAmF;AACnF,oFAA+E;AAC/E,gGAAoF;AACpF,oFAA4E;AAMrE,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,+CAAiB;IAChD,YACE,mBAAwC,EACxC,gBAAkC,EAClC,cAA8B;QAE9B,KAAK,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,UAAsB,EACtB,YAA6B;QAE7B,IAAI,IAAI,GAAG,UAAkB,CAAC;QAC9B,OAAO,MAAM,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACtD,CAAC;CAGF,CAAA;AAlBY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAGY,2CAAmB;QACtB,4CAAgB;QAClB,oCAAc;GAJrB,WAAW,CAkBvB"}
@@ -0,0 +1,9 @@
1
+ import { UserRoleMappingRepository } from '../repository/user-role-mapping.repository';
2
+ import { UserRoleMapping } from '../entity/user-role-mapping.entity';
3
+ export declare class UserRoleMappingService {
4
+ private readonly userRoleMappingRepository;
5
+ constructor(userRoleMappingRepository: UserRoleMappingRepository);
6
+ assignUserRole(userRoleMapping: UserRoleMapping): Promise<UserRoleMapping | null | undefined>;
7
+ findByUserId(userId: number): Promise<UserRoleMapping[] | null>;
8
+ deleteByUserId(userId: number): Promise<void>;
9
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UserRoleMappingService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const user_role_mapping_repository_1 = require("../repository/user-role-mapping.repository");
15
+ let UserRoleMappingService = class UserRoleMappingService {
16
+ constructor(userRoleMappingRepository) {
17
+ this.userRoleMappingRepository = userRoleMappingRepository;
18
+ }
19
+ async assignUserRole(userRoleMapping) {
20
+ const existing = await this.userRoleMappingRepository.findByUserIdAndRoleId(userRoleMapping.user_id, userRoleMapping.role_id);
21
+ if (!existing) {
22
+ return await this.userRoleMappingRepository.save(userRoleMapping);
23
+ }
24
+ }
25
+ async findByUserId(userId) {
26
+ return await this.userRoleMappingRepository.findByUserId(userId);
27
+ }
28
+ async deleteByUserId(userId) {
29
+ await this.userRoleMappingRepository.deleteByUserId(userId);
30
+ }
31
+ };
32
+ exports.UserRoleMappingService = UserRoleMappingService;
33
+ exports.UserRoleMappingService = UserRoleMappingService = __decorate([
34
+ (0, common_1.Injectable)(),
35
+ __metadata("design:paramtypes", [user_role_mapping_repository_1.UserRoleMappingRepository])
36
+ ], UserRoleMappingService);
37
+ //# sourceMappingURL=user-role-mapping.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-role-mapping.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/user-role-mapping.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6FAAuF;AAIhF,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IACjC,YACmB,yBAAoD;QAApD,8BAAyB,GAAzB,yBAAyB,CAA2B;IACpE,CAAC;IAEJ,KAAK,CAAC,cAAc,CAAC,eAAgC;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,qBAAqB,CACzE,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,OAAO,CACxB,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,MAAM,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;CACF,CAAA;AAvBY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;qCAGmC,wDAAyB;GAF5D,sBAAsB,CAuBlC"}
@@ -0,0 +1,13 @@
1
+ import { UserSession } from '../entity/user-session.entity';
2
+ import { UserSessionRepository } from '../repository/userSession.repository';
3
+ import { JwtAuthService } from '../../../module/auth/services/jwt.service';
4
+ export declare class UserSessionService {
5
+ private readonly userSessionRepository;
6
+ private readonly jwtAuthService;
7
+ constructor(userSessionRepository: UserSessionRepository, jwtAuthService: JwtAuthService);
8
+ createSession(user: any): Promise<{
9
+ accessToken: string;
10
+ }>;
11
+ findBySessionKey(sessionKey: string): Promise<UserSession | null>;
12
+ updateSession(userSession: UserSession): Promise<void>;
13
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UserSessionService = void 0;
13
+ const user_session_entity_1 = require("../entity/user-session.entity");
14
+ const clockIDGenUtil_service_1 = require("../../../utils/service/clockIDGenUtil.service");
15
+ const common_1 = require("@nestjs/common");
16
+ const userSession_repository_1 = require("../repository/userSession.repository");
17
+ const jwt_service_1 = require("../../../module/auth/services/jwt.service");
18
+ let UserSessionService = class UserSessionService {
19
+ constructor(userSessionRepository, jwtAuthService) {
20
+ this.userSessionRepository = userSessionRepository;
21
+ this.jwtAuthService = jwtAuthService;
22
+ }
23
+ async createSession(user) {
24
+ const sessionToken = clockIDGenUtil_service_1.ClockIDGenService.idGenerator('SES');
25
+ const userSession = new user_session_entity_1.UserSession();
26
+ userSession.user_id = user.id;
27
+ userSession.session_key = sessionToken;
28
+ userSession.is_session_loggedout = 0;
29
+ userSession.login_time = new Date();
30
+ userSession.expiry_date = new Date(Date.now() + 60 * 60 * 1000);
31
+ await this.userSessionRepository.saveSession(userSession);
32
+ const payload = { userId: user.id, sessionToken };
33
+ const accessToken = this.jwtAuthService.generateJwt(payload);
34
+ userSession.access_token = accessToken;
35
+ await this.userSessionRepository.saveSession(userSession);
36
+ return { accessToken };
37
+ }
38
+ async findBySessionKey(sessionKey) {
39
+ return await this.userSessionRepository.findBySessionKey(sessionKey);
40
+ }
41
+ async updateSession(userSession) {
42
+ await this.userSessionRepository.saveSession(userSession);
43
+ }
44
+ };
45
+ exports.UserSessionService = UserSessionService;
46
+ exports.UserSessionService = UserSessionService = __decorate([
47
+ (0, common_1.Injectable)(),
48
+ __metadata("design:paramtypes", [userSession_repository_1.UserSessionRepository,
49
+ jwt_service_1.JwtAuthService])
50
+ ], UserSessionService);
51
+ //# sourceMappingURL=user-session.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-session.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/user-session.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uEAA4D;AAC5D,0FAAkF;AAClF,2CAA4C;AAC5C,iFAA6E;AAC7E,2EAA2E;AAGpE,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,YACmB,qBAA4C,EAC5C,cAA8B;QAD9B,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,mBAAc,GAAd,cAAc,CAAgB;IAC9C,CAAC;IACJ,KAAK,CAAC,aAAa,CAAC,IAAI;QACtB,MAAM,YAAY,GAAG,0CAAiB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE1D,MAAM,WAAW,GAAQ,IAAI,iCAAW,EAAE,CAAC;QAC3C,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;QAC9B,WAAW,CAAC,WAAW,GAAG,YAAY,CAAC;QACvC,WAAW,CAAC,oBAAoB,GAAG,CAAC,CAAC;QACrC,WAAW,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QACpC,WAAW,CAAC,WAAW,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAEhE,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE1D,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE7D,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC;QACvC,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE1D,OAAO,EAAE,WAAW,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB;QACvC,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,WAAwB;QAC1C,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC5D,CAAC;CACF,CAAA;AAjCY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;qCAG+B,8CAAqB;QAC5B,4BAAc;GAHtC,kBAAkB,CAiC9B"}
@@ -0,0 +1,17 @@
1
+ import { EntityServiceImpl } from '../../meta/service/entity-service-impl.service';
2
+ import { EntityMasterService } from '../../meta/service/entity-master.service';
3
+ import { ReflectionHelper } from '../../../utils/service/reflection-helper.service';
4
+ import { LoggingService } from '../../../utils/service/loggingUtil.service';
5
+ import { UserData } from '../entity/user.entity';
6
+ import { BaseEntity } from '../../meta/entity/base-entity.entity';
7
+ import { UserRepository } from '../repository/user.repository';
8
+ import { UserRoleMappingService } from './user-role-mapping.service';
9
+ export declare class UserService extends EntityServiceImpl {
10
+ private userRepository;
11
+ private userRoleMappingService;
12
+ constructor(entityMasterService: EntityMasterService, reflectionHelper: ReflectionHelper, loggingService: LoggingService, userRepository: UserRepository, userRoleMappingService: UserRoleMappingService);
13
+ createEntity(entityData: BaseEntity, loggedInUser: UserData | null): Promise<BaseEntity>;
14
+ getEntityData(entityType: string, id: number): Promise<BaseEntity | null>;
15
+ updateEntity(entityData: BaseEntity, loggedInUserData: UserData): Promise<BaseEntity>;
16
+ findByEmailId(email_id: string): Promise<UserData | null>;
17
+ }
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.UserService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const entity_service_impl_service_1 = require("../../meta/service/entity-service-impl.service");
15
+ const entity_master_service_1 = require("../../meta/service/entity-master.service");
16
+ const reflection_helper_service_1 = require("../../../utils/service/reflection-helper.service");
17
+ const loggingUtil_service_1 = require("../../../utils/service/loggingUtil.service");
18
+ const user_entity_1 = require("../entity/user.entity");
19
+ const user_repository_1 = require("../repository/user.repository");
20
+ const encryptUtil_service_1 = require("../../../utils/service/encryptUtil.service");
21
+ const clockIDGenUtil_service_1 = require("../../../utils/service/clockIDGenUtil.service");
22
+ const global_constant_1 = require("../../../constant/global.constant");
23
+ const user_role_mapping_service_1 = require("./user-role-mapping.service");
24
+ const user_role_mapping_entity_1 = require("../entity/user-role-mapping.entity");
25
+ const class_transformer_1 = require("class-transformer");
26
+ let UserService = class UserService extends entity_service_impl_service_1.EntityServiceImpl {
27
+ constructor(entityMasterService, reflectionHelper, loggingService, userRepository, userRoleMappingService) {
28
+ super(entityMasterService, reflectionHelper, loggingService);
29
+ this.userRepository = userRepository;
30
+ this.userRoleMappingService = userRoleMappingService;
31
+ }
32
+ async createEntity(entityData, loggedInUser) {
33
+ let userData = entityData;
34
+ let existingUser = await this.userRepository.findByEmailId(userData.email_id);
35
+ if (existingUser) {
36
+ throw new common_1.BadRequestException('User already exists');
37
+ }
38
+ existingUser = await this.userRepository.findByMobile(userData.mobile);
39
+ if (existingUser) {
40
+ throw new common_1.BadRequestException('User already exists');
41
+ }
42
+ userData.name =
43
+ userData.first_name + userData.last_name ? userData.last_name : '';
44
+ let password;
45
+ if (userData.password) {
46
+ password = encryptUtil_service_1.EncryptUtilService.encryptGCM(userData.password, global_constant_1.masterKey, global_constant_1.masterIv);
47
+ }
48
+ else {
49
+ password = encryptUtil_service_1.EncryptUtilService.encryptGCM(clockIDGenUtil_service_1.ClockIDGenService.idGenerator(''), global_constant_1.masterKey, global_constant_1.masterIv);
50
+ }
51
+ userData.password = password;
52
+ let savedData = await super.createEntity(userData, loggedInUser);
53
+ if (userData.roles) {
54
+ let roles = userData.roles;
55
+ this.userRoleMappingService.deleteByUserId(userData.id);
56
+ for (const role in roles) {
57
+ let userRoleMapping = new user_role_mapping_entity_1.UserRoleMapping(savedData.id, Number(roles[role]));
58
+ await this.userRoleMappingService.assignUserRole(userRoleMapping);
59
+ }
60
+ }
61
+ return savedData;
62
+ }
63
+ async getEntityData(entityType, id) {
64
+ const user = await this.userRepository.findById(id);
65
+ if (user) {
66
+ let userRoleMappings = await this.userRoleMappingService.findByUserId(id);
67
+ if (userRoleMappings) {
68
+ let userDto = user;
69
+ let roles = [];
70
+ for (let i in userRoleMappings) {
71
+ const userRoleMapping = userRoleMappings[i];
72
+ const roleId = userRoleMapping.role_id;
73
+ const role = await super.getEntityData(global_constant_1.ENTITYTYPE_ROLE, roleId);
74
+ roles.push(role);
75
+ }
76
+ userDto.roles = roles;
77
+ }
78
+ return user;
79
+ }
80
+ return null;
81
+ }
82
+ async updateEntity(entityData, loggedInUserData) {
83
+ let userDto = entityData;
84
+ if (userDto.password) {
85
+ const password = encryptUtil_service_1.EncryptUtilService.encryptGCM(userDto.password, global_constant_1.masterKey, global_constant_1.masterIv);
86
+ userDto.password = password;
87
+ }
88
+ let userData = (0, class_transformer_1.plainToInstance)(user_entity_1.UserData, userDto, { excludeExtraneousValues: true });
89
+ let savedData = await super.updateEntity(userData, loggedInUserData);
90
+ if (userDto.roles) {
91
+ let roles = userDto.roles;
92
+ for (const role in roles) {
93
+ let userRoleMapping = new user_role_mapping_entity_1.UserRoleMapping(savedData.id, Number(roles[role]));
94
+ await this.userRoleMappingService.assignUserRole(userRoleMapping);
95
+ }
96
+ }
97
+ return savedData;
98
+ }
99
+ async findByEmailId(email_id) {
100
+ return await this.userRepository.findByEmailId(email_id);
101
+ }
102
+ };
103
+ exports.UserService = UserService;
104
+ exports.UserService = UserService = __decorate([
105
+ (0, common_1.Injectable)(),
106
+ __metadata("design:paramtypes", [entity_master_service_1.EntityMasterService,
107
+ reflection_helper_service_1.ReflectionHelper,
108
+ loggingUtil_service_1.LoggingService,
109
+ user_repository_1.UserRepository,
110
+ user_role_mapping_service_1.UserRoleMappingService])
111
+ ], UserService);
112
+ //# sourceMappingURL=user.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/user.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare class UserModule {
2
+ }
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.UserModule = void 0;
10
+ const common_1 = require("@nestjs/common");
11
+ const typeorm_1 = require("@nestjs/typeorm");
12
+ const user_entity_1 = require("./entity/user.entity");
13
+ const user_service_1 = require("./service/user.service");
14
+ const utils_module_1 = require("../../utils/utils.module");
15
+ const entity_module_1 = require("../meta/entity.module");
16
+ const user_repository_1 = require("./repository/user.repository");
17
+ const user_session_service_1 = require("./service/user-session.service");
18
+ const user_session_entity_1 = require("./entity/user-session.entity");
19
+ const login_controller_1 = require("./controller/login.controller");
20
+ const login_service_1 = require("./service/login.service");
21
+ const userSession_repository_1 = require("./repository/userSession.repository");
22
+ const jwt_1 = require("@nestjs/jwt");
23
+ const auth_module_1 = require("../auth/auth.module");
24
+ const user_controller_1 = require("./controller/user.controller");
25
+ const role_entity_1 = require("./entity/role.entity");
26
+ const role_service_1 = require("./service/role.service");
27
+ const user_role_mapping_entity_1 = require("./entity/user-role-mapping.entity");
28
+ const user_role_mapping_repository_1 = require("./repository/user-role-mapping.repository");
29
+ const user_role_mapping_service_1 = require("./service/user-role-mapping.service");
30
+ const role_repository_1 = require("./repository/role.repository");
31
+ let UserModule = class UserModule {
32
+ };
33
+ exports.UserModule = UserModule;
34
+ exports.UserModule = UserModule = __decorate([
35
+ (0, common_1.Module)({
36
+ imports: [
37
+ typeorm_1.TypeOrmModule.forFeature([user_entity_1.UserData, user_session_entity_1.UserSession, role_entity_1.Role, user_role_mapping_entity_1.UserRoleMapping]),
38
+ entity_module_1.EntityModule,
39
+ utils_module_1.UtilsModule,
40
+ auth_module_1.AuthModule,
41
+ ],
42
+ providers: [
43
+ { provide: 'UserService', useClass: user_service_1.UserService },
44
+ { provide: 'RoleService', useClass: role_service_1.RoleService },
45
+ user_repository_1.UserRepository,
46
+ user_session_service_1.UserSessionService,
47
+ login_service_1.LoginService,
48
+ userSession_repository_1.UserSessionRepository,
49
+ jwt_1.JwtService,
50
+ user_role_mapping_repository_1.UserRoleMappingRepository,
51
+ user_role_mapping_service_1.UserRoleMappingService,
52
+ role_repository_1.RoleRepository
53
+ ],
54
+ exports: [
55
+ 'UserService',
56
+ user_session_service_1.UserSessionService,
57
+ 'RoleService',
58
+ user_role_mapping_service_1.UserRoleMappingService,
59
+ role_repository_1.RoleRepository
60
+ ],
61
+ controllers: [login_controller_1.LoginController, user_controller_1.UserController],
62
+ })
63
+ ], UserModule);
64
+ //# sourceMappingURL=user.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.module.js","sourceRoot":"","sources":["../../../src/module/user/user.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,6CAAgD;AAChD,sDAAgD;AAChD,yDAAqD;AACrD,2DAAuD;AACvD,yDAAqD;AACrD,kEAA8D;AAC9D,yEAAoE;AACpE,sEAA2D;AAC3D,oEAAgE;AAChE,2DAAuD;AACvD,gFAA4E;AAC5E,qCAAyC;AACzC,qDAAiD;AACjD,kEAA8D;AAC9D,sDAA4C;AAC5C,yDAAqD;AACrD,gFAAoE;AACpE,4FAAsF;AACtF,mFAA6E;AAC7E,kEAA8D;AA8BvD,IAAM,UAAU,GAAhB,MAAM,UAAU;CAAG,CAAA;AAAb,gCAAU;qBAAV,UAAU;IA5BtB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,sBAAQ,EAAE,iCAAW,EAAE,kBAAI,EAAE,0CAAe,CAAC,CAAC;YACxE,4BAAY;YACZ,0BAAW;YACX,wBAAU;SACX;QACD,SAAS,EAAE;YACT,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,0BAAW,EAAE;YACjD,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,0BAAW,EAAE;YACjD,gCAAc;YACd,yCAAkB;YAClB,4BAAY;YACZ,8CAAqB;YACrB,gBAAU;YACV,wDAAyB;YACzB,kDAAsB;YACtB,gCAAc;SACf;QACD,OAAO,EAAE;YACP,aAAa;YACb,yCAAkB;YAClB,aAAa;YACb,kDAAsB;YACtB,gCAAc;SACf;QACD,WAAW,EAAE,CAAC,kCAAe,EAAE,gCAAc,CAAC;KAC/C,CAAC;GACW,UAAU,CAAG"}