mirror of
https://github.com/SyncrowIOT/backend.git
synced 2025-11-26 08:54:54 +00:00
39 lines
1.3 KiB
TypeScript
39 lines
1.3 KiB
TypeScript
import { ControllerRoute } from '@app/common/constants/controller-route';
|
|
import { Body, Controller, Param, Post, UseGuards } from '@nestjs/common';
|
|
import { ApiBearerAuth, ApiOperation, ApiTags } from '@nestjs/swagger';
|
|
import { BaseResponseDto } from '@app/common/dto/base.response.dto';
|
|
import { ValidationService } from '../services';
|
|
import { ValidateSpacesDto } from '../dtos/validation.space.dto';
|
|
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
|
|
import { ProjectParam } from '../dtos';
|
|
|
|
@ApiTags('Space Module')
|
|
@Controller({
|
|
version: '1',
|
|
path: ControllerRoute.SPACE_VALIDATION.ROUTE,
|
|
})
|
|
export class SpaceValidationController {
|
|
constructor(private readonly validationService: ValidationService) {}
|
|
|
|
@ApiBearerAuth()
|
|
@UseGuards(JwtAuthGuard)
|
|
@ApiOperation({
|
|
summary:
|
|
ControllerRoute.SPACE_VALIDATION.ACTIONS
|
|
.VALIDATE_SPACE_WITH_DEVICES_OR_SUBSPACES_SUMMARY,
|
|
description:
|
|
ControllerRoute.SPACE_VALIDATION.ACTIONS
|
|
.VALIDATE_SPACE_WITH_DEVICES_OR_SUBSPACES_DESCRIPTION,
|
|
})
|
|
@Post('validate')
|
|
async validateSpaces(
|
|
@Body() validateSpacesDto: ValidateSpacesDto,
|
|
@Param() projectParam: ProjectParam,
|
|
): Promise<BaseResponseDto> {
|
|
return this.validationService.validateSpacesWithDevicesOrSubspaces(
|
|
validateSpacesDto,
|
|
projectParam,
|
|
);
|
|
}
|
|
}
|