mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-11-26 17:24:54 +00:00
space management without roles
This commit is contained in:
@ -1 +1,2 @@
|
||||
export * from './space.controller';
|
||||
export * from './space.controller';
|
||||
export * from './space-user.controller';
|
||||
|
||||
49
src/space/controllers/space-user.controller.ts
Normal file
49
src/space/controllers/space-user.controller.ts
Normal file
@ -0,0 +1,49 @@
|
||||
import { ControllerRoute } from '@app/common/constants/controller-route';
|
||||
import { Controller, Delete, Param, Post, UseGuards } from '@nestjs/common';
|
||||
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
||||
import { SpaceUserService } from '../services';
|
||||
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
||||
import { UserSpaceDto } from '@app/common/modules/user/dtos';
|
||||
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
||||
|
||||
@ApiTags('Space Module')
|
||||
@Controller({
|
||||
version: '1',
|
||||
path: ControllerRoute.SPACE_USER.ROUTE,
|
||||
})
|
||||
export class SpaceUserController {
|
||||
constructor(private readonly spaceUserService: SpaceUserService) {}
|
||||
|
||||
@Post('/:userUuid')
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@ApiOperation({
|
||||
summary:
|
||||
ControllerRoute.SPACE_USER.ACTIONS.ASSOCIATE_SPACE_USER_DESCRIPTION,
|
||||
description:
|
||||
ControllerRoute.SPACE_USER.ACTIONS.ASSOCIATE_SPACE_USER_DESCRIPTION,
|
||||
})
|
||||
async associateUserToSpace(
|
||||
@Param() params: UserSpaceDto,
|
||||
): Promise<BaseResponseDto> {
|
||||
return this.spaceUserService.associateUserToSpace(
|
||||
params.userUuid,
|
||||
params.spaceUuid,
|
||||
);
|
||||
}
|
||||
|
||||
@Delete('/:userUuid')
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE_USER.ACTIONS.DISSOCIATE_SPACE_USER_SUMMARY,
|
||||
description:
|
||||
ControllerRoute.SPACE_USER.ACTIONS.DISSOCIATE_SPACE_USER_DESCRIPTION,
|
||||
})
|
||||
async disassociateUserFromSpace(
|
||||
@Param() params: UserSpaceDto,
|
||||
): Promise<BaseResponseDto> {
|
||||
return this.spaceUserService.disassociateUserFromSpace(
|
||||
params.userUuid,
|
||||
params.spaceUuid,
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -94,6 +94,33 @@ export class SpaceController {
|
||||
})
|
||||
@Get('/:spaceUuid')
|
||||
async get(@Param() params: GetSpaceParam): Promise<BaseResponseDto> {
|
||||
return this.spaceService.findOne(params.spaceUuid, params.communityUuid);
|
||||
return this.spaceService.findOne(params.spaceUuid);
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.GET_HEIRARCHY_SUMMARY,
|
||||
description: ControllerRoute.SPACE.ACTIONS.GET_HEIRARCHY_DESCRIPTION,
|
||||
})
|
||||
@Get('/:spaceUuid/hierarchy')
|
||||
async getHierarchyUnderSpace(
|
||||
@Param() params: GetSpaceParam,
|
||||
): Promise<BaseResponseDto> {
|
||||
return this.spaceService.getSpacesHierarchyForSpace(params.spaceUuid);
|
||||
}
|
||||
|
||||
@ApiBearerAuth()
|
||||
@UseGuards(JwtAuthGuard)
|
||||
@ApiOperation({
|
||||
summary: ControllerRoute.SPACE.ACTIONS.CREATE_INVITATION_CODE_SPACE_SUMMARY,
|
||||
description:
|
||||
ControllerRoute.SPACE.ACTIONS.CREATE_INVITATION_CODE_SPACE_DESCRIPTION,
|
||||
})
|
||||
@Post(':spaceUuid/invitation-code')
|
||||
async generateSpaceInvitationCode(
|
||||
@Param() params: GetSpaceParam,
|
||||
): Promise<BaseResponseDto> {
|
||||
return this.spaceService.getSpaceInvitationCode(params.spaceUuid);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user