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