rez_core 2.0.47 → 2.0.49

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 (34) hide show
  1. package/dist/module/auth/strategies/jwt.strategy.js +1 -1
  2. package/dist/module/auth/strategies/jwt.strategy.js.map +1 -1
  3. package/dist/module/user/controller/login.controller.d.ts +10 -1
  4. package/dist/module/user/controller/login.controller.js +21 -2
  5. package/dist/module/user/controller/login.controller.js.map +1 -1
  6. package/dist/module/user/dto/create-user.dto.d.ts +1 -0
  7. package/dist/module/user/dto/create-user.dto.js.map +1 -1
  8. package/dist/module/user/repository/role.repository.d.ts +6 -0
  9. package/dist/module/user/repository/role.repository.js +27 -0
  10. package/dist/module/user/repository/role.repository.js.map +1 -1
  11. package/dist/module/user/repository/user-role-mapping.repository.d.ts +5 -1
  12. package/dist/module/user/repository/user-role-mapping.repository.js +37 -2
  13. package/dist/module/user/repository/user-role-mapping.repository.js.map +1 -1
  14. package/dist/module/user/service/role.service.js +8 -5
  15. package/dist/module/user/service/role.service.js.map +1 -1
  16. package/dist/module/user/service/user-role-mapping.service.d.ts +3 -0
  17. package/dist/module/user/service/user-role-mapping.service.js +24 -1
  18. package/dist/module/user/service/user-role-mapping.service.js.map +1 -1
  19. package/dist/module/user/service/user-session.service.d.ts +10 -1
  20. package/dist/module/user/service/user-session.service.js +24 -2
  21. package/dist/module/user/service/user-session.service.js.map +1 -1
  22. package/dist/module/user/service/user.service.js +57 -23
  23. package/dist/module/user/service/user.service.js.map +1 -1
  24. package/dist/tsconfig.build.tsbuildinfo +1 -1
  25. package/package.json +1 -1
  26. package/src/module/auth/strategies/jwt.strategy.ts +2 -2
  27. package/src/module/user/controller/login.controller.ts +32 -1
  28. package/src/module/user/dto/create-user.dto.ts +2 -0
  29. package/src/module/user/repository/role.repository.ts +46 -2
  30. package/src/module/user/repository/user-role-mapping.repository.ts +54 -1
  31. package/src/module/user/service/role.service.ts +10 -6
  32. package/src/module/user/service/user-role-mapping.service.ts +60 -0
  33. package/src/module/user/service/user-session.service.ts +140 -11
  34. package/src/module/user/service/user.service.ts +75 -65
@@ -24,7 +24,7 @@ let JwtStrategy = class JwtStrategy extends (0, passport_1.PassportStrategy)(pas
24
24
  this.configService = configService;
25
25
  }
26
26
  async validate(payload) {
27
- const { userId, sessionToken, appcode, email_id, organization_id, enterprise_id, level_id, level_type } = payload;
27
+ const { userId, sessionToken, appcode, email_id, organization_id, enterprise_id, level_id, level_type, } = payload;
28
28
  let userData = {
29
29
  id: userId,
30
30
  sessionToken: sessionToken,
@@ -1 +1 @@
1
- {"version":3,"file":"jwt.strategy.js","sourceRoot":"","sources":["../../../../src/module/auth/strategies/jwt.strategy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAoD;AACpD,+CAAoD;AACpD,2CAAmE;AAKnE,2CAA+C;AAGxC,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,IAAA,2BAAgB,EAAC,uBAAQ,CAAC;IACzD,YAA6B,aAA4B;QACvD,KAAK,CAAC;YACJ,cAAc,EAAE,yBAAU,CAAC,2BAA2B,EAAE;YACxD,gBAAgB,EAAE,KAAK;YACvB,WAAW,EAAE,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;SAC7C,CAAC,CAAC;QALwB,kBAAa,GAAb,aAAa,CAAe;IAMzD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAO;QACpB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,eAAe,EACf,aAAa,EACb,QAAQ,EACR,UAAU,EACX,GAAG,OAAO,CAAC;QAeZ,IAAI,QAAQ,GAAG;YACb,EAAE,EAAE,MAAM;YACV,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,QAAQ;YAClB,eAAe,EAAE,eAAe;YAChC,aAAa,EAAE,aAAa;YAC5B,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,UAAU;SACvB,CAAC;QAEF,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;CACF,CAAA;AA/CY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAEiC,sBAAa;GAD9C,WAAW,CA+CvB"}
1
+ {"version":3,"file":"jwt.strategy.js","sourceRoot":"","sources":["../../../../src/module/auth/strategies/jwt.strategy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAoD;AACpD,+CAAoD;AACpD,2CAAmE;AAKnE,2CAA+C;AAGxC,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,IAAA,2BAAgB,EAAC,uBAAQ,CAAC;IACzD,YAA6B,aAA4B;QACvD,KAAK,CAAC;YACJ,cAAc,EAAE,yBAAU,CAAC,2BAA2B,EAAE;YACxD,gBAAgB,EAAE,KAAK;YACvB,WAAW,EAAE,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;SAC7C,CAAC,CAAC;QALwB,kBAAa,GAAb,aAAa,CAAe;IAMzD,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAO;QACpB,MAAM,EACJ,MAAM,EACN,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,eAAe,EACf,aAAa,EACb,QAAQ,EACR,UAAU,GACX,GAAG,OAAO,CAAC;QAeZ,IAAI,QAAQ,GAAG;YACb,EAAE,EAAE,MAAM;YACV,YAAY,EAAE,YAAY;YAC1B,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,QAAQ;YAClB,eAAe,EAAE,eAAe;YAChC,aAAa,EAAE,aAAa;YAC5B,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,UAAU;SACvB,CAAC;QAEF,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;CACF,CAAA;AA/CY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;qCAEiC,sBAAa;GAD9C,WAAW,CA+CvB"}
@@ -1,12 +1,21 @@
1
1
  import { LoginService } from '../service/login.service';
2
2
  import { Request, Response } from 'express';
3
+ import { UserSessionService } from '../service/user-session.service';
3
4
  export declare class LoginController {
4
5
  private loginService;
5
- constructor(loginService: LoginService);
6
+ private userSessionService;
7
+ constructor(loginService: LoginService, userSessionService: UserSessionService);
6
8
  login(body: any, res: Response): Promise<Response<any, Record<string, any>>>;
7
9
  logout(request: Request & {
8
10
  user: any;
9
11
  }, response: Response): Promise<void>;
10
12
  googleLogin(): Promise<void>;
11
13
  googleAuthRedirect(req: any): Promise<string>;
14
+ switchCurrentLevel(req: Request & {
15
+ user: any;
16
+ }, data: {
17
+ level_id: string;
18
+ level_type: string;
19
+ appcode: string;
20
+ }): Promise<any>;
12
21
  }
@@ -17,9 +17,11 @@ const common_1 = require("@nestjs/common");
17
17
  const login_service_1 = require("../service/login.service");
18
18
  const google_auth_guard_1 = require("../../../module/auth/guards/google-auth.guard");
19
19
  const jwt_guard_1 = require("../../auth/guards/jwt.guard");
20
+ const user_session_service_1 = require("../service/user-session.service");
20
21
  let LoginController = class LoginController {
21
- constructor(loginService) {
22
+ constructor(loginService, userSessionService) {
22
23
  this.loginService = loginService;
24
+ this.userSessionService = userSessionService;
23
25
  }
24
26
  async login(body, res) {
25
27
  const { email_id, password, appcode } = body;
@@ -38,6 +40,13 @@ let LoginController = class LoginController {
38
40
  let { email, name } = req.user.userData;
39
41
  return this.loginService.loginWithGoogle(email, name);
40
42
  }
43
+ async switchCurrentLevel(req, data) {
44
+ const userId = req.user.userData.id;
45
+ const currentUserLevelType = req.user.userData.level_type;
46
+ const currentUserLevelId = req.user.userData.level_id;
47
+ const currentUserOrganization_id = req.user.userData.organization_id;
48
+ return await this.userSessionService.switchCurrentLevelService(userId, currentUserLevelType, currentUserLevelId, currentUserOrganization_id, data);
49
+ }
41
50
  };
42
51
  exports.LoginController = LoginController;
43
52
  __decorate([
@@ -72,8 +81,18 @@ __decorate([
72
81
  __metadata("design:paramtypes", [Object]),
73
82
  __metadata("design:returntype", Promise)
74
83
  ], LoginController.prototype, "googleAuthRedirect", null);
84
+ __decorate([
85
+ (0, common_1.UseGuards)(jwt_guard_1.JwtAuthGuard),
86
+ (0, common_1.Post)('switch'),
87
+ __param(0, (0, common_1.Req)()),
88
+ __param(1, (0, common_1.Body)()),
89
+ __metadata("design:type", Function),
90
+ __metadata("design:paramtypes", [Object, Object]),
91
+ __metadata("design:returntype", Promise)
92
+ ], LoginController.prototype, "switchCurrentLevel", null);
75
93
  exports.LoginController = LoginController = __decorate([
76
94
  (0, common_1.Controller)('auth'),
77
- __metadata("design:paramtypes", [login_service_1.LoginService])
95
+ __metadata("design:paramtypes", [login_service_1.LoginService,
96
+ user_session_service_1.UserSessionService])
78
97
  ], LoginController);
79
98
  //# sourceMappingURL=login.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"login.controller.js","sourceRoot":"","sources":["../../../../src/module/user/controller/login.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,4DAAwD;AACxD,qFAAgF;AAChF,2DAA2D;AAIpD,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YAAoB,YAA0B;QAA1B,iBAAY,GAAZ,YAAY,CAAc;IAAG,CAAC;IAG5C,AAAN,KAAK,CAAC,KAAK,CAAS,IAAI,EAAS,GAAa;QAC5C,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1E,OAAO,GAAG,CAAC,MAAM,CAAC,mBAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAIK,AAAN,KAAK,CAAC,MAAM,CACH,OAAgC,EAChC,QAAkB;QAEzB,IAAI,WAAW,GAAQ,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC7C,QAAQ;aACL,MAAM,CAAC,mBAAU,CAAC,EAAE,CAAC;aACrB,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;IACpE,CAAC;IAIK,AAAN,KAAK,CAAC,WAAW;IAEjB,CAAC;IAKK,AAAN,KAAK,CAAC,kBAAkB,CAAQ,GAAG;QACjC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAGxC,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;CACF,CAAA;AArCY,0CAAe;AAIpB;IADL,IAAA,aAAI,EAAC,OAAO,CAAC;IACD,WAAA,IAAA,aAAI,GAAE,CAAA;IAAQ,WAAA,IAAA,YAAG,GAAE,CAAA;;;;4CAI/B;AAIK;IAFL,IAAA,kBAAS,EAAC,wBAAY,CAAC;IACvB,IAAA,aAAI,EAAC,QAAQ,CAAC;IAEZ,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,YAAG,GAAE,CAAA;;;;6CAMP;AAIK;IAFL,IAAA,YAAG,EAAC,QAAQ,CAAC;IACb,IAAA,kBAAS,EAAC,mCAAe,CAAC;;;;kDAG1B;AAKK;IAFL,IAAA,YAAG,EAAC,iBAAiB,CAAC;IACtB,IAAA,kBAAS,EAAC,mCAAe,CAAC;IACD,WAAA,IAAA,YAAG,GAAE,CAAA;;;;yDAK9B;0BApCU,eAAe;IAD3B,IAAA,mBAAU,EAAC,MAAM,CAAC;qCAEiB,4BAAY;GADnC,eAAe,CAqC3B"}
1
+ {"version":3,"file":"login.controller.js","sourceRoot":"","sources":["../../../../src/module/user/controller/login.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CASwB;AACxB,4DAAwD;AACxD,qFAAgF;AAChF,2DAA2D;AAG3D,0EAAqE;AAG9D,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACU,YAA0B,EAC1B,kBAAsC;QADtC,iBAAY,GAAZ,YAAY,CAAc;QAC1B,uBAAkB,GAAlB,kBAAkB,CAAoB;IAC7C,CAAC;IAGE,AAAN,KAAK,CAAC,KAAK,CAAS,IAAI,EAAS,GAAa;QAC5C,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1E,OAAO,GAAG,CAAC,MAAM,CAAC,mBAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAIK,AAAN,KAAK,CAAC,MAAM,CACH,OAAgC,EAChC,QAAkB;QAEzB,IAAI,WAAW,GAAQ,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC7C,QAAQ;aACL,MAAM,CAAC,mBAAU,CAAC,EAAE,CAAC;aACrB,IAAI,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;IACpE,CAAC;IAIK,AAAN,KAAK,CAAC,WAAW;IAEjB,CAAC;IAKK,AAAN,KAAK,CAAC,kBAAkB,CAAQ,GAAG;QACjC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;QAGxC,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAIK,AAAN,KAAK,CAAC,kBAAkB,CACf,GAA4B,EAEnC,IAIC;QAED,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QAEpC,MAAM,oBAAoB,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC1D,MAAM,kBAAkB,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACtD,MAAM,0BAA0B,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;QAErE,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,yBAAyB,CAC5D,MAAM,EACN,oBAAoB,EACpB,kBAAkB,EAClB,0BAA0B,EAC1B,IAAI,CACL,CAAC;IACJ,CAAC;CACF,CAAA;AAlEY,0CAAe;AAOpB;IADL,IAAA,aAAI,EAAC,OAAO,CAAC;IACD,WAAA,IAAA,aAAI,GAAE,CAAA;IAAQ,WAAA,IAAA,YAAG,GAAE,CAAA;;;;4CAI/B;AAIK;IAFL,IAAA,kBAAS,EAAC,wBAAY,CAAC;IACvB,IAAA,aAAI,EAAC,QAAQ,CAAC;IAEZ,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,YAAG,GAAE,CAAA;;;;6CAMP;AAIK;IAFL,IAAA,YAAG,EAAC,QAAQ,CAAC;IACb,IAAA,kBAAS,EAAC,mCAAe,CAAC;;;;kDAG1B;AAKK;IAFL,IAAA,YAAG,EAAC,iBAAiB,CAAC;IACtB,IAAA,kBAAS,EAAC,mCAAe,CAAC;IACD,WAAA,IAAA,YAAG,GAAE,CAAA;;;;yDAK9B;AAIK;IAFL,IAAA,kBAAS,EAAC,wBAAY,CAAC;IACvB,IAAA,aAAI,EAAC,QAAQ,CAAC;IAEZ,WAAA,IAAA,YAAG,GAAE,CAAA;IACL,WAAA,IAAA,aAAI,GAAE,CAAA;;;;yDAoBR;0BAjEU,eAAe;IAD3B,IAAA,mBAAU,EAAC,MAAM,CAAC;qCAGO,4BAAY;QACN,yCAAkB;GAHrC,eAAe,CAkE3B"}
@@ -13,4 +13,5 @@ export declare class CreateUserDto extends BaseEntity {
13
13
  is_customer: number;
14
14
  appcode: string;
15
15
  is_factory: number;
16
+ access: any[];
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"create-user.dto.js","sourceRoot":"","sources":["../../../../src/module/user/dto/create-user.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAgE;AAChE,6EAAkE;AAClE,uEAAoE;AACpE,yDAA2C;AAE3C,MAAa,aAAc,SAAQ,+BAAU;IAC3C;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,iCAAe,CAAC;IACrC,CAAC;CAkDF;AAtDD,sCAsDC;AA5CC;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACrE,IAAA,0BAAM,GAAE;;iDACU;AAMnB;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACpE,IAAA,0BAAM,GAAE;;gDACS;AAQlB;IANC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EACN,sEAAsE,EACtE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CACjC;;+CACgB;AAYjB;IAVC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EACN,sEAAsE,EACtE;QACE,OAAO,EACL,gJAAgJ;KACnJ,CACF;IACA,IAAA,0BAAM,GAAE;;+CACQ;AAMjB;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EAAC,aAAa,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACjE,IAAA,0BAAM,GAAE;;6CACM;AAGf;IADC,IAAA,0BAAM,GAAE;;4CACI"}
1
+ {"version":3,"file":"create-user.dto.js","sourceRoot":"","sources":["../../../../src/module/user/dto/create-user.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAgE;AAChE,6EAAkE;AAClE,uEAAoE;AACpE,yDAA2C;AAE3C,MAAa,aAAc,SAAQ,+BAAU;IAC3C;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,iCAAe,CAAC;IACrC,CAAC;CAoDF;AAxDD,sCAwDC;AA9CC;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACrE,IAAA,0BAAM,GAAE;;iDACU;AAMnB;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACpE,IAAA,0BAAM,GAAE;;gDACS;AAQlB;IANC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EACN,sEAAsE,EACtE,EAAE,OAAO,EAAE,mBAAmB,EAAE,CACjC;;+CACgB;AAYjB;IAVC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EACN,sEAAsE,EACtE;QACE,OAAO,EACL,gJAAgJ;KACnJ,CACF;IACA,IAAA,0BAAM,GAAE;;+CACQ;AAMjB;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,EAAC,aAAa,EAAE,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACjE,IAAA,0BAAM,GAAE;;6CACM;AAGf;IADC,IAAA,0BAAM,GAAE;;4CACI"}
@@ -9,4 +9,10 @@ export declare class RoleRepository {
9
9
  organization_id?: number;
10
10
  }): Promise<boolean>;
11
11
  find(data: any): Promise<Role[] | null>;
12
+ isRoleNameWithLevelExists(name: string, options?: {
13
+ excludeRoleId?: number;
14
+ organization_id?: number;
15
+ level_type?: string;
16
+ level_id?: number;
17
+ }): Promise<boolean>;
12
18
  }
@@ -50,6 +50,33 @@ let RoleRepository = class RoleRepository {
50
50
  },
51
51
  });
52
52
  }
53
+ async isRoleNameWithLevelExists(name, options) {
54
+ const query = this.roleRepo
55
+ .createQueryBuilder('role')
56
+ .where('role.name = :name', { name });
57
+ if (options?.excludeRoleId) {
58
+ query.andWhere('role.id != :excludeRoleId', {
59
+ excludeRoleId: options.excludeRoleId,
60
+ });
61
+ }
62
+ if (options?.organization_id !== undefined) {
63
+ query.andWhere('role.organization_id = :organization_id', {
64
+ organization_id: options.organization_id,
65
+ });
66
+ }
67
+ if (options?.level_type) {
68
+ query.andWhere('role.level_type = :level_type', {
69
+ level_type: options.level_type,
70
+ });
71
+ }
72
+ if (options?.level_id !== undefined) {
73
+ query.andWhere('role.level_id = :level_id', {
74
+ level_id: options.level_id,
75
+ });
76
+ }
77
+ const existingRole = await query.getOne();
78
+ return !!existingRole;
79
+ }
53
80
  };
54
81
  exports.RoleRepository = RoleRepository;
55
82
  exports.RoleRepository = RoleRepository = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"role.repository.js","sourceRoot":"","sources":["../../../../src/module/user/repository/role.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAiE;AACjE,qCAAqC;AACrC,6CAAmD;AACnD,uDAA6C;AAKtC,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,YAEmB,QAA0B;QAA1B,aAAQ,GAAR,QAAQ,CAAkB;IAC1C,CAAC;IAEJ,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAC3B,IAAY,EACZ,OAA8D;QAE9D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ;aACxB,kBAAkB,CAAC,MAAM,CAAC;aAC1B,KAAK,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAExC,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,KAAK,CAAC,QAAQ,CAAC,2BAA2B,EAAE;gBAC1C,aAAa,EAAE,OAAO,CAAC,aAAa;aACrC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,EAAE,eAAe,KAAK,SAAS,EAAE,CAAC;YAC3C,KAAK,CAAC,QAAQ,CAAC,yCAAyC,EAAE;gBACxD,eAAe,EAAE,OAAO,CAAC,eAAe;aACzC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1C,OAAO,CAAC,CAAC,YAAY,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAI;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACxB,KAAK,EAAE;gBACL,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrE,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC/D,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;aACtE;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA3CY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,0BAAgB,EAAC,kBAAI,CAAC,CAAA;qCACI,oBAAU;GAH5B,cAAc,CA2C1B"}
1
+ {"version":3,"file":"role.repository.js","sourceRoot":"","sources":["../../../../src/module/user/repository/role.repository.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,16 @@ export declare class UserRoleMappingRepository {
4
4
  private readonly userRoleMappingRepository;
5
5
  constructor(userRoleMappingRepository: Repository<UserRoleMapping>);
6
6
  save(userRoleMapping: UserRoleMapping): Promise<UserRoleMapping | null>;
7
+ update(id: number, userRoleMapping: UserRoleMapping): Promise<UserRoleMapping | null>;
7
8
  findByUserId(userId: number): Promise<UserRoleMapping[] | null>;
8
9
  getDefaultForUser(userId: number): Promise<UserRoleMapping | null>;
9
- findByUserIdAndRoleId(userId: number, roleId: number): Promise<UserRoleMapping | null>;
10
+ findByUserIdAndRoleId(userId: number, roleId: number, appcode?: string, level_id?: string, level_type?: string): Promise<UserRoleMapping | null>;
11
+ findByUSRId(usrId: number): Promise<UserRoleMapping | null>;
10
12
  delete(userId: number, roleId: number): Promise<void>;
11
13
  deleteByUserId(userId: number): Promise<void>;
12
14
  findDistinctAppcodeByUserId(userId: number): Promise<{
13
15
  appcode: string[];
14
16
  }>;
17
+ findByUserIdAndAppCode(userId: number, appCode: string): Promise<UserRoleMapping | null>;
18
+ findByUserIdAndAppCodeAndLevel(userId: number, appCode: string, levelType: string, levelId: string): Promise<UserRoleMapping | null>;
15
19
  }
@@ -24,6 +24,10 @@ let UserRoleMappingRepository = class UserRoleMappingRepository {
24
24
  async save(userRoleMapping) {
25
25
  return await this.userRoleMappingRepository.save(userRoleMapping);
26
26
  }
27
+ async update(id, userRoleMapping) {
28
+ await this.userRoleMappingRepository.update(id, userRoleMapping);
29
+ return await this.userRoleMappingRepository.findOneBy({ id });
30
+ }
27
31
  async findByUserId(userId) {
28
32
  return await this.userRoleMappingRepository.find({
29
33
  where: { user_id: userId },
@@ -34,9 +38,25 @@ let UserRoleMappingRepository = class UserRoleMappingRepository {
34
38
  where: { user_id: userId, is_default: 1 },
35
39
  });
36
40
  }
37
- async findByUserIdAndRoleId(userId, roleId) {
41
+ async findByUserIdAndRoleId(userId, roleId, appcode, level_id, level_type) {
38
42
  return await this.userRoleMappingRepository.findOne({
39
- where: { user_id: userId, role_id: roleId },
43
+ where: {
44
+ user_id: userId,
45
+ role_id: roleId,
46
+ appcode,
47
+ level_id,
48
+ level_type,
49
+ },
50
+ });
51
+ }
52
+ async findByUSRId(usrId) {
53
+ if (usrId) {
54
+ return null;
55
+ }
56
+ return await this.userRoleMappingRepository.findOne({
57
+ where: {
58
+ id: usrId,
59
+ },
40
60
  });
41
61
  }
42
62
  async delete(userId, roleId) {
@@ -57,6 +77,21 @@ let UserRoleMappingRepository = class UserRoleMappingRepository {
57
77
  const appcodeArray = result.map((row) => row.appcode);
58
78
  return { appcode: appcodeArray };
59
79
  }
80
+ async findByUserIdAndAppCode(userId, appCode) {
81
+ return await this.userRoleMappingRepository.findOne({
82
+ where: { user_id: userId, appcode: appCode },
83
+ });
84
+ }
85
+ async findByUserIdAndAppCodeAndLevel(userId, appCode, levelType, levelId) {
86
+ return await this.userRoleMappingRepository.findOne({
87
+ where: {
88
+ user_id: userId,
89
+ appcode: appCode,
90
+ level_type: levelType,
91
+ level_id: levelId,
92
+ },
93
+ });
94
+ }
60
95
  };
61
96
  exports.UserRoleMappingRepository = UserRoleMappingRepository;
62
97
  exports.UserRoleMappingRepository = UserRoleMappingRepository = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"user-role-mapping.repository.js","sourceRoot":"","sources":["../../../../src/module/user/repository/user-role-mapping.repository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAmD;AACnD,iFAAqE;AACrE,qCAAqC;AAG9B,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IACpC,YAEmB,yBAAsD;QAAtD,8BAAyB,GAAzB,yBAAyB,CAA6B;IACtE,CAAC;IAEJ,KAAK,CAAC,IAAI,CACR,eAAgC;QAEhC,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC;YAC/C,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;SAC3B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAAc;QACpC,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;YAClD,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE;SAC1C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,MAAc,EACd,MAAc;QAEd,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC;YAClD,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,MAAc;QACzC,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;YAC1C,OAAO,EAAE,MAAM;YACf,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,MAAc;QAEd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,yBAAyB;aAChD,kBAAkB,CAAC,KAAK,CAAC;aACzB,MAAM,CAAC,sBAAsB,EAAE,SAAS,CAAC;aACzC,KAAK,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,CAAC;aAC1C,UAAU,EAAE,CAAC;QAEhB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEtD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;IACnC,CAAC;CACF,CAAA;AAzDY,8DAAyB;oCAAzB,yBAAyB;IADrC,IAAA,mBAAU,GAAE;IAGR,WAAA,IAAA,0BAAgB,EAAC,0CAAe,CAAC,CAAA;qCACU,oBAAU;GAH7C,yBAAyB,CAyDrC"}
1
+ {"version":3,"file":"user-role-mapping.repository.js","sourceRoot":"","sources":["../../../../src/module/user/repository/user-role-mapping.repository.ts"],"names":[],"mappings":"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"}
@@ -29,13 +29,16 @@ let RoleService = class RoleService extends entity_service_impl_service_1.Entity
29
29
  }
30
30
  async createEntity(entityData, loggedInUser, manager, appcode) {
31
31
  let role = entityData;
32
- if (appcode) {
33
- role.appcode = appcode;
32
+ if (loggedInUser?.level_type && loggedInUser?.level_id) {
33
+ role.level_type = loggedInUser.level_type;
34
+ role.level_id = loggedInUser.level_id;
34
35
  }
35
- if (await this.roleRepository.isRoleNameExists(role.name, {
36
- organization_id: entityData.organization_id,
36
+ if (await this.roleRepository.isRoleNameWithLevelExists(role.name, {
37
+ organization_id: loggedInUser?.organization_id || undefined,
38
+ level_type: loggedInUser?.level_type,
39
+ level_id: parseInt(loggedInUser?.level_id || '', 10),
37
40
  })) {
38
- throw new common_1.BadRequestException('Role name already exists.');
41
+ throw new common_1.BadRequestException('Role code already exists.');
39
42
  }
40
43
  const sourceRole = role.copy_from_role_id
41
44
  ? await this.getEntityData(global_constant_1.ENTITYTYPE_ROLE, role.copy_from_role_id)
@@ -1 +1 @@
1
- {"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/role.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/role.service.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,9 @@ export declare class UserRoleMappingService {
4
4
  private readonly userRoleMappingRepository;
5
5
  constructor(userRoleMappingRepository: UserRoleMappingRepository);
6
6
  assignUserRole(userRoleMapping: UserRoleMapping): Promise<UserRoleMapping | null | undefined>;
7
+ updateAssignedRole(userRoleMapping: UserRoleMapping): Promise<UserRoleMapping | null>;
7
8
  findByUserId(userId: number): Promise<UserRoleMapping[] | null>;
8
9
  deleteByUserId(userId: number): Promise<void>;
10
+ getUserByIdAndAppCode(userId: number, appCode: string): Promise<UserRoleMapping | null>;
11
+ getUserByIdAppCodeAndLevel(userId: number, appCode: string, levelType: string, levelId: string): Promise<UserRoleMapping | null>;
9
12
  }
@@ -17,17 +17,40 @@ let UserRoleMappingService = class UserRoleMappingService {
17
17
  this.userRoleMappingRepository = userRoleMappingRepository;
18
18
  }
19
19
  async assignUserRole(userRoleMapping) {
20
- const existing = await this.userRoleMappingRepository.findByUserIdAndRoleId(userRoleMapping.user_id, userRoleMapping.role_id);
20
+ const existing = await this.userRoleMappingRepository.findByUserIdAndRoleId(userRoleMapping.user_id, userRoleMapping.role_id, userRoleMapping.appcode, userRoleMapping.level_id, userRoleMapping.level_type);
21
21
  if (!existing) {
22
22
  return await this.userRoleMappingRepository.save(userRoleMapping);
23
23
  }
24
24
  }
25
+ async updateAssignedRole(userRoleMapping) {
26
+ if (userRoleMapping.id) {
27
+ const existing = await this.userRoleMappingRepository.findByUSRId(userRoleMapping.id);
28
+ if (existing) {
29
+ existing.appcode = userRoleMapping.appcode;
30
+ existing.level_id = userRoleMapping.level_id;
31
+ existing.level_type = userRoleMapping.level_type;
32
+ existing.role_id = userRoleMapping.role_id;
33
+ return await this.userRoleMappingRepository.save(existing);
34
+ }
35
+ }
36
+ const duplicate = await this.userRoleMappingRepository.findByUserIdAndRoleId(userRoleMapping.user_id, userRoleMapping.role_id, userRoleMapping.appcode, userRoleMapping.level_id, userRoleMapping.level_type);
37
+ if (duplicate) {
38
+ return duplicate;
39
+ }
40
+ return await this.userRoleMappingRepository.save(userRoleMapping);
41
+ }
25
42
  async findByUserId(userId) {
26
43
  return await this.userRoleMappingRepository.findByUserId(userId);
27
44
  }
28
45
  async deleteByUserId(userId) {
29
46
  await this.userRoleMappingRepository.deleteByUserId(userId);
30
47
  }
48
+ async getUserByIdAndAppCode(userId, appCode) {
49
+ return await this.userRoleMappingRepository.findByUserIdAndAppCode(userId, appCode);
50
+ }
51
+ async getUserByIdAppCodeAndLevel(userId, appCode, levelType, levelId) {
52
+ return await this.userRoleMappingRepository.findByUserIdAndAppCodeAndLevel(userId, appCode, levelType, levelId);
53
+ }
31
54
  };
32
55
  exports.UserRoleMappingService = UserRoleMappingService;
33
56
  exports.UserRoleMappingService = UserRoleMappingService = __decorate([
@@ -1 +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"}
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,EACvB,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,QAAQ,EACxB,eAAe,CAAC,UAAU,CAC3B,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,kBAAkB,CAAC,eAAgC;QAEvD,IAAI,eAAe,CAAC,EAAE,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAC/D,eAAe,CAAC,EAAE,CACnB,CAAC;YACF,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;gBAC3C,QAAQ,CAAC,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC;gBAC7C,QAAQ,CAAC,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC;gBACjD,QAAQ,CAAC,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;gBAE3C,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAGD,MAAM,SAAS,GACb,MAAM,IAAI,CAAC,yBAAyB,CAAC,qBAAqB,CACxD,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,QAAQ,EACxB,eAAe,CAAC,UAAU,CAC3B,CAAC;QAEJ,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACpE,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;IAED,KAAK,CAAC,qBAAqB,CACzB,MAAc,EACd,OAAe;QAEf,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,sBAAsB,CAChE,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,0BAA0B,CAC9B,MAAc,EACd,OAAe,EACf,SAAiB,EACjB,OAAe;QAEf,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,8BAA8B,CACxE,MAAM,EACN,OAAO,EACP,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;CACF,CAAA;AAnFY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;qCAGmC,wDAAyB;GAF5D,sBAAsB,CAmFlC"}
@@ -3,13 +3,22 @@ import { ClockIDGenService } from '../../../utils/service/clockIDGenUtil.service
3
3
  import { UserSessionRepository } from '../repository/userSession.repository';
4
4
  import { JwtAuthService } from 'src/module/auth/services/jwt.service';
5
5
  import { ConfigService } from '@nestjs/config';
6
+ import { UserRoleMappingService } from './user-role-mapping.service';
7
+ import { DataSource } from 'typeorm';
6
8
  export declare class UserSessionService {
7
9
  private readonly userSessionRepository;
8
10
  private readonly jwtAuthService;
9
11
  private readonly clockIDGenService;
10
12
  private configService;
11
- constructor(userSessionRepository: UserSessionRepository, jwtAuthService: JwtAuthService, clockIDGenService: ClockIDGenService, configService: ConfigService);
13
+ private readonly userRoleMappingService;
14
+ private readonly dataSource;
15
+ constructor(userSessionRepository: UserSessionRepository, jwtAuthService: JwtAuthService, clockIDGenService: ClockIDGenService, configService: ConfigService, userRoleMappingService: UserRoleMappingService, dataSource: DataSource);
12
16
  createSession(user: any, appcode?: string, accessInfo?: any): Promise<string>;
13
17
  findBySessionKey(sessionKey: string): Promise<UserSession | null>;
14
18
  updateSession(userSession: UserSession): Promise<void>;
19
+ switchCurrentLevelService(userId: number, currentUserLevelType: string, currentUserLevelId: string, currentUserOrgId: number, data: any): Promise<{
20
+ success: boolean;
21
+ access_token: string;
22
+ appcode: string;
23
+ }>;
15
24
  }
@@ -16,12 +16,16 @@ const common_1 = require("@nestjs/common");
16
16
  const userSession_repository_1 = require("../repository/userSession.repository");
17
17
  const jwt_service_1 = require("../../auth/services/jwt.service");
18
18
  const config_1 = require("@nestjs/config");
19
+ const user_role_mapping_service_1 = require("./user-role-mapping.service");
20
+ const typeorm_1 = require("typeorm");
19
21
  let UserSessionService = class UserSessionService {
20
- constructor(userSessionRepository, jwtAuthService, clockIDGenService, configService) {
22
+ constructor(userSessionRepository, jwtAuthService, clockIDGenService, configService, userRoleMappingService, dataSource) {
21
23
  this.userSessionRepository = userSessionRepository;
22
24
  this.jwtAuthService = jwtAuthService;
23
25
  this.clockIDGenService = clockIDGenService;
24
26
  this.configService = configService;
27
+ this.userRoleMappingService = userRoleMappingService;
28
+ this.dataSource = dataSource;
25
29
  }
26
30
  async createSession(user, appcode, accessInfo) {
27
31
  const sessionToken = this.clockIDGenService.idGenerator('SES');
@@ -38,6 +42,8 @@ let UserSessionService = class UserSessionService {
38
42
  sessionToken,
39
43
  appcode,
40
44
  email_id: user.email_id,
45
+ level_type: user.level_type,
46
+ level_id: user.level_id,
41
47
  organization_id: user.organization_id,
42
48
  enterprise_id: user.enterprise_id,
43
49
  };
@@ -58,6 +64,20 @@ let UserSessionService = class UserSessionService {
58
64
  async updateSession(userSession) {
59
65
  await this.userSessionRepository.saveSession(userSession);
60
66
  }
67
+ async switchCurrentLevelService(userId, currentUserLevelType, currentUserLevelId, currentUserOrgId, data) {
68
+ let payload;
69
+ payload = {
70
+ id: userId,
71
+ level_id: currentUserLevelId,
72
+ level_type: currentUserLevelType,
73
+ appcode: data.appcode,
74
+ };
75
+ return {
76
+ success: true,
77
+ access_token: this.jwtAuthService.generateJwt(payload),
78
+ appcode: data.appcode,
79
+ };
80
+ }
61
81
  };
62
82
  exports.UserSessionService = UserSessionService;
63
83
  exports.UserSessionService = UserSessionService = __decorate([
@@ -65,6 +85,8 @@ exports.UserSessionService = UserSessionService = __decorate([
65
85
  __metadata("design:paramtypes", [userSession_repository_1.UserSessionRepository,
66
86
  jwt_service_1.JwtAuthService,
67
87
  clockIDGenUtil_service_1.ClockIDGenService,
68
- config_1.ConfigService])
88
+ config_1.ConfigService,
89
+ user_role_mapping_service_1.UserRoleMappingService,
90
+ typeorm_1.DataSource])
69
91
  ], UserSessionService);
70
92
  //# sourceMappingURL=user-session.service.js.map
@@ -1 +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,iEAAsE;AACtE,2CAA+C;AAGxC,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,YACmB,qBAA4C,EAC5C,cAA8B,EAC9B,iBAAoC,EAC7C,aAA4B;QAHnB,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,mBAAc,GAAd,cAAc,CAAgB;QAC9B,sBAAiB,GAAjB,iBAAiB,CAAmB;QAC7C,kBAAa,GAAb,aAAa,CAAe;IACnC,CAAC;IACJ,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,OAAgB,EAAE,UAAgB;QAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE/D,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;QAEpC,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QACvE,WAAW,CAAC,WAAW,GAAG,IAAI,IAAI,CAChC,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CACjD,CAAC;QAEF,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE1D,MAAM,OAAO,GAAQ;YACnB,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,YAAY;YACZ,OAAO;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC;QAGF,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;YAC3C,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;YACvC,OAAO,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;YACrC,OAAO,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QAC3C,CAAC;QAED,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,WAAW,CAAC;IACrB,CAAC;IAGD,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;AAxDY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;qCAG+B,8CAAqB;QAC5B,4BAAc;QACX,0CAAiB;QAC9B,sBAAa;GAL3B,kBAAkB,CAwD9B"}
1
+ {"version":3,"file":"user-session.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/user-session.service.ts"],"names":[],"mappings":"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"}
@@ -16,14 +16,12 @@ exports.UserService = void 0;
16
16
  const role_service_1 = require("./role.service");
17
17
  const common_1 = require("@nestjs/common");
18
18
  const entity_service_impl_service_1 = require("../../meta/service/entity-service-impl.service");
19
- const user_entity_1 = require("../entity/user.entity");
20
19
  const user_repository_1 = require("../repository/user.repository");
21
20
  const encryptUtil_service_1 = require("../../../utils/service/encryptUtil.service");
22
21
  const clockIDGenUtil_service_1 = require("../../../utils/service/clockIDGenUtil.service");
23
22
  const global_constant_1 = require("../../../constant/global.constant");
24
23
  const user_role_mapping_service_1 = require("./user-role-mapping.service");
25
24
  const user_role_mapping_entity_1 = require("../entity/user-role-mapping.entity");
26
- const class_transformer_1 = require("class-transformer");
27
25
  const config_1 = require("@nestjs/config");
28
26
  const user_app_mapping_service_1 = require("../../meta/service/user-app-mapping.service");
29
27
  let UserService = class UserService extends entity_service_impl_service_1.EntityServiceImpl {
@@ -64,21 +62,34 @@ let UserService = class UserService extends entity_service_impl_service_1.Entity
64
62
  userData.invitation_status = 'SENT';
65
63
  userData.status = global_constant_1.STATUS_ACTIVE;
66
64
  const savedData = await super.createEntity(userData, loggedInUser);
67
- userData.roles.push('1');
68
- userData.roles.push('2');
69
- if (userData.roles) {
70
- let roles = userData.roles;
71
- await this.userRoleMappingService.deleteByUserId(userData.id);
72
- for (const role in roles) {
73
- let userRoleMapping = new user_role_mapping_entity_1.UserRoleMapping(savedData.id, Number(roles[role]));
74
- await this.userRoleMappingService.assignUserRole(userRoleMapping);
65
+ const insertPromises = [];
66
+ for (const entry of userData.access || []) {
67
+ const { level_type, level_ids, app_code, role_id } = entry;
68
+ if (!level_type ||
69
+ !Array.isArray(level_ids) ||
70
+ !level_ids.length ||
71
+ !app_code ||
72
+ !role_id) {
73
+ throw new common_1.BadRequestException('Invalid access level entry');
74
+ }
75
+ for (const levelId of level_ids) {
76
+ const userRoleMapping = new user_role_mapping_entity_1.UserRoleMapping(savedData.id, role_id);
77
+ userRoleMapping.level_type = level_type;
78
+ userRoleMapping.level_id = String(levelId);
79
+ userRoleMapping.appcode = app_code;
80
+ userRoleMapping.organization_id = loggedInUser?.organization_id || 0;
81
+ insertPromises.push(this.userRoleMappingService.assignUserRole(userRoleMapping));
75
82
  }
76
83
  }
77
- const appcodedata = ['CRM', 'ERP'];
78
- if (savedData.id) {
79
- for (const app of appcodedata) {
80
- await this.userAppMappingService.assignUserAppMapping(savedData.id, app);
84
+ try {
85
+ if (insertPromises.length > 0) {
86
+ await Promise.all(insertPromises);
81
87
  }
88
+ console.log('Access levels added successfully');
89
+ }
90
+ catch (error) {
91
+ console.error('Error adding access levels:', error);
92
+ throw new common_1.BadRequestException('Failed to add access levels');
82
93
  }
83
94
  return savedData;
84
95
  }
@@ -112,16 +123,39 @@ let UserService = class UserService extends entity_service_impl_service_1.Entity
112
123
  if (decryptedPassword === userDto.password) {
113
124
  throw new common_1.BadRequestException('New password cannot be the same as the current password');
114
125
  }
115
- const encryptedPassword = encryptUtil_service_1.EncryptUtilService.encryptGCM(userDto.password, this.masterKey, this.masterIv);
116
- userDto.password = encryptedPassword;
126
+ userDto.password = encryptUtil_service_1.EncryptUtilService.encryptGCM(userDto.password, this.masterKey, this.masterIv);
117
127
  }
118
- const userData = (0, class_transformer_1.plainToInstance)(user_entity_1.UserData, userDto);
119
- const savedData = await super.updateEntity(userData, loggedInUserData);
120
- if (userDto.roles) {
121
- await this.userRoleMappingService.deleteByUserId(savedData.id);
122
- for (const role of userDto.roles) {
123
- const userRoleMapping = new user_role_mapping_entity_1.UserRoleMapping(savedData.id, Number(role));
124
- await this.userRoleMappingService.assignUserRole(userRoleMapping);
128
+ const updatedUserData = { ...userDto };
129
+ delete updatedUserData.access;
130
+ const savedData = await super.updateEntity(updatedUserData, loggedInUserData);
131
+ if (userDto.access && userDto.access.length > 0) {
132
+ const insertPromises = [];
133
+ for (const entry of userDto.access) {
134
+ const { id, level_type, level_ids, app_code, role_id } = entry;
135
+ if (!level_type ||
136
+ typeof level_ids !== 'number' ||
137
+ !app_code ||
138
+ !role_id) {
139
+ throw new common_1.BadRequestException('Invalid access level entry');
140
+ }
141
+ const userRoleMapping = new user_role_mapping_entity_1.UserRoleMapping(savedData.id, role_id);
142
+ if (id) {
143
+ userRoleMapping.id = id;
144
+ }
145
+ userRoleMapping.role_id = role_id;
146
+ userRoleMapping.appcode = app_code;
147
+ userRoleMapping.level_id = String(level_ids);
148
+ userRoleMapping.level_type = level_type;
149
+ userRoleMapping.organization_id = loggedInUserData.organization_id || 0;
150
+ insertPromises.push(this.userRoleMappingService.updateAssignedRole(userRoleMapping));
151
+ }
152
+ try {
153
+ await Promise.all(insertPromises);
154
+ console.log('Access levels updated successfully');
155
+ }
156
+ catch (error) {
157
+ console.error('Error updating access levels:', error);
158
+ throw new common_1.BadRequestException('Failed to update access levels');
125
159
  }
126
160
  }
127
161
  return savedData;
@@ -1 +1 @@
1
- {"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/user.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.service.js","sourceRoot":"","sources":["../../../../src/module/user/service/user.service.ts"],"names":[],"mappings":"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"}