????
Current Path : C:/inetpub/vhost/invest.gdtsolutions.vn/api/dist/apps/users/ |
Current File : C:/inetpub/vhost/invest.gdtsolutions.vn/api/dist/apps/users/users.service.js |
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); 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; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var __param = (this && this.__param) || function (paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); } }; Object.defineProperty(exports, "__esModule", { value: true }); exports.UsersSubscriber = exports.UsersService = void 0; const common_1 = require("@nestjs/common"); const crud_typeorm_1 = require("@dataui/crud-typeorm"); const typeorm_1 = require("@nestjs/typeorm"); const typeorm_2 = require("typeorm"); const user_entity_1 = require("./entities/user.entity"); const password_1 = require("../../utils/password"); let UsersService = class UsersService extends crud_typeorm_1.TypeOrmCrudService { constructor(repo) { super(repo); } async getUserPermissions(userId) { const user = await this.findOne({ where: { id: userId }, relations: ['roles'], select: ['firstName', 'lastName', 'username', 'id'], }); const permissionSet = new Set(); for (const role of user.roles) { role.permissions.forEach((p) => permissionSet.add(p)); } user.permissions = Array.from(permissionSet); return user; } }; exports.UsersService = UsersService; exports.UsersService = UsersService = __decorate([ (0, common_1.Injectable)(), __param(0, (0, typeorm_1.InjectRepository)(user_entity_1.User)), __metadata("design:paramtypes", [typeorm_2.Repository]) ], UsersService); let UsersSubscriber = class UsersSubscriber { constructor(dataSource) { dataSource.subscribers.push(this); } listenTo() { return user_entity_1.User; } beforeInsert(evt) { if (evt.entity.password) { evt.entity.password = (0, password_1.hashPassword)(evt.entity.password); } } beforeUpdate(evt) { if (evt.entity.password && evt.entity.password !== evt.databaseEntity.password) { evt.entity.password = (0, password_1.hashPassword)(evt.entity.password); } } }; exports.UsersSubscriber = UsersSubscriber; exports.UsersSubscriber = UsersSubscriber = __decorate([ (0, typeorm_2.EventSubscriber)(), __metadata("design:paramtypes", [typeorm_2.DataSource]) ], UsersSubscriber); //# sourceMappingURL=users.service.js.map