From 5e3ad8a52313c8d43affdc3708e19cc053e2f474 Mon Sep 17 00:00:00 2001 From: faris Aljohari <83524184+farisaljohari@users.noreply.github.com> Date: Sun, 5 May 2024 18:40:44 +0300 Subject: [PATCH] Update device permission guard and user device permission service --- src/guards/device.permission.guard.ts | 8 ++++---- .../services/user-device-permission.service.ts | 14 ++++++++------ .../user-device-permission.module.ts | 8 +++----- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/guards/device.permission.guard.ts b/src/guards/device.permission.guard.ts index 3fc80af..1ec21a9 100644 --- a/src/guards/device.permission.guard.ts +++ b/src/guards/device.permission.guard.ts @@ -1,6 +1,6 @@ import { PermissionType } from '@app/common/constants/permission-type.enum'; import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard'; -import { DeviceUserTypeRepository } from '@app/common/modules/device/repositories'; +import { DeviceUserPermissionRepository } from '@app/common/modules/device-user-permission/repositories'; import { PermissionTypeRepository } from '@app/common/modules/permission/repositories'; import { Injectable, @@ -18,7 +18,7 @@ import { Reflector } from '@nestjs/core'; export class DevicePermissionGuard implements CanActivate { constructor( private reflector: Reflector, - private readonly deviceUserTypeRepository: DeviceUserTypeRepository, + private readonly deviceUserPermissionRepository: DeviceUserPermissionRepository, private readonly permissionTypeRepository: PermissionTypeRepository, ) {} @@ -52,7 +52,7 @@ export class DevicePermissionGuard implements CanActivate { requirePermission, ) { const [userPermissionDetails, permissionDetails] = await Promise.all([ - this.deviceUserTypeRepository.findOne({ + this.deviceUserPermissionRepository.findOne({ where: { deviceUuid: deviceId, userUuid: userId }, }), this.permissionTypeRepository.findOne({ @@ -64,7 +64,7 @@ export class DevicePermissionGuard implements CanActivate { if (!userPermissionDetails) { throw new BadRequestException('User Permission Details Not Found'); } - if (userPermissionDetails.permissionTypeUuid !== permissionDetails.uuid) { + if (userPermissionDetails.permissionType.uuid !== permissionDetails.uuid) { throw new BadRequestException( `User Does not have a ${requirePermission}`, ); diff --git a/src/user-device-permission/services/user-device-permission.service.ts b/src/user-device-permission/services/user-device-permission.service.ts index e50d59f..64073a1 100644 --- a/src/user-device-permission/services/user-device-permission.service.ts +++ b/src/user-device-permission/services/user-device-permission.service.ts @@ -1,16 +1,16 @@ -import { DeviceUserTypeRepository } from '@app/common/modules/device/repositories'; import { Injectable } from '@nestjs/common'; import { UserDevicePermissionAddDto } from '../dtos/user-device-permission.add.dto'; import { UserDevicePermissionEditDto } from '../dtos/user-device-permission.edit.dto'; +import { DeviceUserPermissionRepository } from '@app/common/modules/device-user-permission/repositories'; @Injectable() export class UserDevicePermissionService { constructor( - private readonly deviceUserTypeRepository: DeviceUserTypeRepository, + private readonly deviceUserPermissionRepository: DeviceUserPermissionRepository, ) {} async addUserPermission(userDevicePermissionDto: UserDevicePermissionAddDto) { - return await this.deviceUserTypeRepository.save({ + return await this.deviceUserPermissionRepository.save({ userUuid: userDevicePermissionDto.userId, deviceUuid: userDevicePermissionDto.deviceId, permissionTypeUuid: userDevicePermissionDto.permissionTypeId, @@ -21,16 +21,18 @@ export class UserDevicePermissionService { userId: string, userDevicePermissionEditDto: UserDevicePermissionEditDto, ) { - return await this.deviceUserTypeRepository.update( + return await this.deviceUserPermissionRepository.update( { userUuid: userId }, { deviceUuid: userDevicePermissionEditDto.deviceId, - permissionTypeUuid: userDevicePermissionEditDto.permissionTypeId, + permissionType: { + uuid: userDevicePermissionEditDto.permissionTypeId, + }, }, ); } async fetchuserPermission() { - return await this.deviceUserTypeRepository.find(); + return await this.deviceUserPermissionRepository.find(); } } diff --git a/src/user-device-permission/user-device-permission.module.ts b/src/user-device-permission/user-device-permission.module.ts index edd9991..b7e5dbd 100644 --- a/src/user-device-permission/user-device-permission.module.ts +++ b/src/user-device-permission/user-device-permission.module.ts @@ -1,18 +1,16 @@ import { DeviceRepositoryModule } from '@app/common/modules/device'; -import { - DeviceRepository, - DeviceUserTypeRepository, -} from '@app/common/modules/device/repositories'; +import { DeviceRepository } from '@app/common/modules/device/repositories'; import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; import { UserDevicePermissionService } from './services/user-device-permission.service'; import { UserDevicePermissionController } from './controllers/user-device-permission.controller'; +import { DeviceUserPermissionRepository } from '@app/common/modules/device-user-permission/repositories'; @Module({ imports: [ConfigModule, DeviceRepositoryModule], controllers: [UserDevicePermissionController], providers: [ - DeviceUserTypeRepository, + DeviceUserPermissionRepository, DeviceRepository, UserDevicePermissionService, ],