mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-11-26 16:54:54 +00:00
Replace JwtAuthGuard with PermissionsGuard and add specific permissions
This commit is contained in:
@ -1,10 +1,11 @@
|
||||
import { ControllerRoute } from '@app/common/constants/controller-route';
|
||||
import { Controller, Get, Param, UseGuards } from '@nestjs/common';
|
||||
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
import { GetSpaceParam } from '../dtos';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { SpaceDeviceService } from '../services';
|
||||
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
||||
import { Permissions } from 'src/decorators/permissions.decorator';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
@ -15,7 +16,8 @@ export class SpaceDeviceController {
|
||||
constructor(private readonly spaceDeviceService: SpaceDeviceService) {}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('VIEW_DEVICE_IN_SPACE')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE_DEVICES.ACTIONS.LIST_SPACE_DEVICE_SUMMARY,
|
||||
description:
|
||||
|
||||
@ -1,11 +1,12 @@
|
||||
import { ControllerRoute } from '@app/common/constants/controller-route';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
import { Controller, Get, Param, Query, UseGuards } from '@nestjs/common';
|
||||
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { SpaceSceneService } from '../services';
|
||||
import { GetSceneDto } from '../../scene/dtos';
|
||||
import { GetSpaceParam } from '../dtos';
|
||||
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
||||
import { Permissions } from 'src/decorators/permissions.decorator';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
@ -16,7 +17,8 @@ export class SpaceSceneController {
|
||||
constructor(private readonly sceneService: SpaceSceneService) {}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SCENES_VIEW')
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SPACE_SCENE.ACTIONS.GET_TAP_TO_RUN_SCENE_BY_SPACE_SUMMARY,
|
||||
|
||||
@ -3,8 +3,9 @@ import { Controller, Delete, Param, Post, UseGuards } from '@nestjs/common';
|
||||
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { SpaceUserService } from '../services';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
import { UserSpaceParam } from '../dtos';
|
||||
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
||||
import { Permissions } from 'src/decorators/permissions.decorator';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
@ -16,7 +17,8 @@ export class SpaceUserController {
|
||||
|
||||
@ApiBearerAuth()
|
||||
@Post('/:userUuid')
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('ASSIGN_USER_TO_SPACE')
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SPACE_USER.ACTIONS.ASSOCIATE_SPACE_USER_DESCRIPTION,
|
||||
@ -31,7 +33,8 @@ export class SpaceUserController {
|
||||
|
||||
@ApiBearerAuth()
|
||||
@Delete('/:userUuid')
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('DELETE_USER_FROM_SPACE')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE_USER.ACTIONS.DISSOCIATE_SPACE_USER_SUMMARY,
|
||||
description:
|
||||
|
||||
@ -11,10 +11,11 @@ import {
|
||||
Put,
|
||||
UseGuards,
|
||||
} from '@nestjs/common';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
import { AddSpaceDto, CommunitySpaceParam, UpdateSpaceDto } from '../dtos';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { GetSpaceParam } from '../dtos/get.space.param';
|
||||
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
||||
import { Permissions } from 'src/decorators/permissions.decorator';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
@ -25,7 +26,8 @@ export class SpaceController {
|
||||
constructor(private readonly spaceService: SpaceService) {}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_ADD')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.CREATE_SPACE_SUMMARY,
|
||||
description: ControllerRoute.SPACE.ACTIONS.CREATE_SPACE_DESCRIPTION,
|
||||
@ -42,7 +44,8 @@ export class SpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_VIEW')
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SPACE.ACTIONS.GET_COMMUNITY_SPACES_HIERARCHY_SUMMARY,
|
||||
@ -57,7 +60,8 @@ export class SpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_DELETE')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.DELETE_SPACE_SUMMARY,
|
||||
description: ControllerRoute.SPACE.ACTIONS.DELETE_SPACE_DESCRIPTION,
|
||||
@ -68,7 +72,8 @@ export class SpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_UPDATE')
|
||||
@Put('/:spaceUuid')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.UPDATE_SPACE_SUMMARY,
|
||||
@ -82,7 +87,8 @@ export class SpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_VIEW')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.GET_SPACE_SUMMARY,
|
||||
description: ControllerRoute.SPACE.ACTIONS.GET_SPACE_DESCRIPTION,
|
||||
@ -93,7 +99,8 @@ export class SpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_VIEW')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.GET_HEIRARCHY_SUMMARY,
|
||||
description: ControllerRoute.SPACE.ACTIONS.GET_HEIRARCHY_DESCRIPTION,
|
||||
@ -107,7 +114,8 @@ export class SpaceController {
|
||||
|
||||
//should it be post?
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SPACE_MEMBER_ADD')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.CREATE_INVITATION_CODE_SPACE_SUMMARY,
|
||||
description:
|
||||
|
||||
@ -1,5 +1,4 @@
|
||||
import { ControllerRoute } from '@app/common/constants/controller-route';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
import {
|
||||
Controller,
|
||||
Delete,
|
||||
@ -12,6 +11,8 @@ import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { DeviceSubSpaceParam, GetSubSpaceParam } from '../../dtos';
|
||||
import { SubspaceDeviceService } from 'src/space/services';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
||||
import { Permissions } from 'src/decorators/permissions.decorator';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
@ -22,7 +23,8 @@ export class SubSpaceDeviceController {
|
||||
constructor(private readonly subspaceDeviceService: SubspaceDeviceService) {}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('VIEW_DEVICE_IN_SUBSPACE')
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SUBSPACE_DEVICE.ACTIONS.LIST_SUBSPACE_DEVICE_SUMMARY,
|
||||
@ -37,7 +39,8 @@ export class SubSpaceDeviceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('ASSIGN_DEVICE_TO_SUBSPACE')
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SUBSPACE_DEVICE.ACTIONS.ASSOCIATE_SUBSPACE_DEVICE_SUMMARY,
|
||||
@ -53,7 +56,8 @@ export class SubSpaceDeviceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('DELETE_DEVICE_FROM_SUBSPACE')
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SUBSPACE_DEVICE.ACTIONS
|
||||
|
||||
@ -14,8 +14,9 @@ import { SubSpaceService } from '../../services';
|
||||
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { AddSubspaceDto, GetSpaceParam, GetSubSpaceParam } from '../../dtos';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
import { PaginationRequestGetListDto } from '@app/common/dto/pagination.request.dto';
|
||||
import { PermissionsGuard } from 'src/guards/permissions.guard';
|
||||
import { Permissions } from 'src/decorators/permissions.decorator';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
@ -26,7 +27,8 @@ export class SubSpaceController {
|
||||
constructor(private readonly subSpaceService: SubSpaceService) {}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SUBSPACE_ADD')
|
||||
@Post()
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SUBSPACE.ACTIONS.CREATE_SUBSPACE_SUMMARY,
|
||||
@ -40,7 +42,8 @@ export class SubSpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SUBSPACE_VIEW')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SUBSPACE.ACTIONS.LIST_SUBSPACES_SUMMARY,
|
||||
description: ControllerRoute.SUBSPACE.ACTIONS.LIST_SUBSPACES_DESCRIPTION,
|
||||
@ -54,7 +57,8 @@ export class SubSpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SUBSPACE_VIEW')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SUBSPACE.ACTIONS.GET_SUBSPACE_SUMMARY,
|
||||
description: ControllerRoute.SUBSPACE.ACTIONS.GET_SUBSPACE_DESCRIPTION,
|
||||
@ -65,7 +69,8 @@ export class SubSpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SUBSPACE_UPDATE')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SUBSPACE.ACTIONS.UPDATE_SUBSPACE_SUMMARY,
|
||||
description: ControllerRoute.SUBSPACE.ACTIONS.UPDATE_SUBSPACE_DESCRIPTION,
|
||||
@ -79,7 +84,8 @@ export class SubSpaceController {
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@UseGuards(PermissionsGuard)
|
||||
@Permissions('SUBSPACE_DELETE')
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SUBSPACE.ACTIONS.DELETE_SUBSPACE_SUMMARY,
|
||||
description: ControllerRoute.SUBSPACE.ACTIONS.DELETE_SUBSPACE_DESCRIPTION,
|
||||
|
||||
Reference in New Issue
Block a user