Add ApiOperation decorators to visitor password controller endpoints

This commit is contained in:
faris Aljohari
2024-11-23 22:52:11 -06:00
parent 25e331f59e
commit 2069b92e6d

View File

@ -8,7 +8,7 @@ import {
Get, Get,
Req, Req,
} from '@nestjs/common'; } from '@nestjs/common';
import { ApiTags, ApiBearerAuth } from '@nestjs/swagger'; import { ApiTags, ApiBearerAuth, ApiOperation } from '@nestjs/swagger';
import { import {
AddDoorLockOfflineMultipleDto, AddDoorLockOfflineMultipleDto,
AddDoorLockOfflineOneTimeDto, AddDoorLockOfflineOneTimeDto,
@ -17,19 +17,29 @@ import {
} from '../dtos/temp-pass.dto'; } from '../dtos/temp-pass.dto';
import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard'; import { JwtAuthGuard } from '@app/common/guards/jwt.auth.guard';
import { EnableDisableStatusEnum } from '@app/common/constants/days.enum'; import { EnableDisableStatusEnum } from '@app/common/constants/days.enum';
import { ControllerRoute } from '@app/common/constants/controller-route';
@ApiTags('Visitor Password Module') @ApiTags('Visitor Password Module')
@Controller({ @Controller({
version: EnableDisableStatusEnum.ENABLED, version: EnableDisableStatusEnum.ENABLED,
path: 'visitor-password', path: ControllerRoute.VISITOR_PASSWORD.ROUTE,
}) })
export class VisitorPasswordController { export class VisitorPasswordController {
constructor( constructor(
private readonly visitorPasswordService: VisitorPasswordService, private readonly visitorPasswordService: VisitorPasswordService,
) {} ) {}
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Post('temporary-password/online/multiple-time') @Post('temporary-password/online/multiple-time')
@ApiOperation({
summary:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_ONLINE_TEMP_PASSWORD_MULTIPLE_TIME_SUMMARY,
description:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_ONLINE_TEMP_PASSWORD_MULTIPLE_TIME_DESCRIPTION,
})
async addOnlineTemporaryPasswordMultipleTime( async addOnlineTemporaryPasswordMultipleTime(
@Body() addDoorLockOnlineMultipleDto: AddDoorLockOnlineMultipleDto, @Body() addDoorLockOnlineMultipleDto: AddDoorLockOnlineMultipleDto,
@Req() req: any, @Req() req: any,
@ -46,9 +56,18 @@ export class VisitorPasswordController {
data: temporaryPasswords, data: temporaryPasswords,
}; };
} }
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Post('temporary-password/online/one-time') @Post('temporary-password/online/one-time')
@ApiOperation({
summary:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_ONLINE_TEMP_PASSWORD_ONE_TIME_SUMMARY,
description:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_ONLINE_TEMP_PASSWORD_ONE_TIME_DESCRIPTION,
})
async addOnlineTemporaryPassword( async addOnlineTemporaryPassword(
@Body() addDoorLockOnlineOneTimeDto: AddDoorLockOnlineOneTimeDto, @Body() addDoorLockOnlineOneTimeDto: AddDoorLockOnlineOneTimeDto,
@Req() req: any, @Req() req: any,
@ -65,9 +84,18 @@ export class VisitorPasswordController {
data: temporaryPasswords, data: temporaryPasswords,
}; };
} }
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Post('temporary-password/offline/one-time') @Post('temporary-password/offline/one-time')
@ApiOperation({
summary:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_OFFLINE_TEMP_PASSWORD_ONE_TIME_SUMMARY,
description:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_OFFLINE_TEMP_PASSWORD_ONE_TIME_DESCRIPTION,
})
async addOfflineOneTimeTemporaryPassword( async addOfflineOneTimeTemporaryPassword(
@Body() addDoorLockOfflineOneTimeDto: AddDoorLockOfflineOneTimeDto, @Body() addDoorLockOfflineOneTimeDto: AddDoorLockOfflineOneTimeDto,
@Req() req: any, @Req() req: any,
@ -84,9 +112,18 @@ export class VisitorPasswordController {
data: temporaryPassword, data: temporaryPassword,
}; };
} }
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Post('temporary-password/offline/multiple-time') @Post('temporary-password/offline/multiple-time')
@ApiOperation({
summary:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_OFFLINE_TEMP_PASSWORD_MULTIPLE_TIME_SUMMARY,
description:
ControllerRoute.VISITOR_PASSWORD.ACTIONS
.ADD_OFFLINE_TEMP_PASSWORD_MULTIPLE_TIME_DESCRIPTION,
})
async addOfflineMultipleTimeTemporaryPassword( async addOfflineMultipleTimeTemporaryPassword(
@Body() @Body()
addDoorLockOfflineMultipleDto: AddDoorLockOfflineMultipleDto, addDoorLockOfflineMultipleDto: AddDoorLockOfflineMultipleDto,
@ -104,15 +141,29 @@ export class VisitorPasswordController {
data: temporaryPassword, data: temporaryPassword,
}; };
} }
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Get() @Get()
@ApiOperation({
summary:
ControllerRoute.VISITOR_PASSWORD.ACTIONS.GET_VISITOR_PASSWORD_SUMMARY,
description:
ControllerRoute.VISITOR_PASSWORD.ACTIONS.GET_VISITOR_PASSWORD_DESCRIPTION,
})
async GetVisitorPassword() { async GetVisitorPassword() {
return await this.visitorPasswordService.getPasswords(); return await this.visitorPasswordService.getPasswords();
} }
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Get('/devices') @Get('/devices')
@ApiOperation({
summary:
ControllerRoute.VISITOR_PASSWORD.ACTIONS.GET_VISITOR_DEVICES_SUMMARY,
description:
ControllerRoute.VISITOR_PASSWORD.ACTIONS.GET_VISITOR_DEVICES_DESCRIPTION,
})
async GetVisitorDevices() { async GetVisitorDevices() {
return await this.visitorPasswordService.getAllPassDevices(); return await this.visitorPasswordService.getAllPassDevices();
} }