Add ApiOperation decorators and update controller path

This commit is contained in:
faris Aljohari
2024-11-23 22:51:37 -06:00
parent 977cc6fb07
commit b904c1a338

View File

@ -8,7 +8,7 @@ import {
Put, Put,
UseGuards, UseGuards,
} from '@nestjs/common'; } from '@nestjs/common';
import { ApiBearerAuth, ApiTags } from '@nestjs/swagger'; import { ApiBearerAuth, ApiTags, ApiOperation } from '@nestjs/swagger';
import { UserNotificationService } from '../services/user-notification.service'; import { UserNotificationService } from '../services/user-notification.service';
import { import {
UserNotificationAddDto, UserNotificationAddDto,
@ -17,11 +17,12 @@ import {
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('User Notification Module') @ApiTags('User Notification Module')
@Controller({ @Controller({
version: EnableDisableStatusEnum.ENABLED, version: EnableDisableStatusEnum.ENABLED,
path: 'user-notification/subscription', path: ControllerRoute.USER_NOTIFICATION.ROUTE,
}) })
export class UserNotificationController { export class UserNotificationController {
constructor( constructor(
@ -31,6 +32,11 @@ export class UserNotificationController {
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Post() @Post()
@ApiOperation({
summary: ControllerRoute.USER_NOTIFICATION.ACTIONS.ADD_SUBSCRIPTION_SUMMARY,
description:
ControllerRoute.USER_NOTIFICATION.ACTIONS.ADD_SUBSCRIPTION_DESCRIPTION,
})
async addUserSubscription( async addUserSubscription(
@Body() userNotificationAddDto: UserNotificationAddDto, @Body() userNotificationAddDto: UserNotificationAddDto,
) { ) {
@ -47,6 +53,12 @@ export class UserNotificationController {
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Get(':userUuid') @Get(':userUuid')
@ApiOperation({
summary:
ControllerRoute.USER_NOTIFICATION.ACTIONS.FETCH_SUBSCRIPTIONS_SUMMARY,
description:
ControllerRoute.USER_NOTIFICATION.ACTIONS.FETCH_SUBSCRIPTIONS_DESCRIPTION,
})
async fetchUserSubscriptions(@Param('userUuid') userUuid: string) { async fetchUserSubscriptions(@Param('userUuid') userUuid: string) {
const userDetails = const userDetails =
await this.userNotificationService.fetchUserSubscriptions(userUuid); await this.userNotificationService.fetchUserSubscriptions(userUuid);
@ -56,9 +68,16 @@ export class UserNotificationController {
data: { ...userDetails }, data: { ...userDetails },
}; };
} }
@ApiBearerAuth() @ApiBearerAuth()
@UseGuards(JwtAuthGuard) @UseGuards(JwtAuthGuard)
@Put() @Put()
@ApiOperation({
summary:
ControllerRoute.USER_NOTIFICATION.ACTIONS.UPDATE_SUBSCRIPTION_SUMMARY,
description:
ControllerRoute.USER_NOTIFICATION.ACTIONS.UPDATE_SUBSCRIPTION_DESCRIPTION,
})
async updateUserSubscription( async updateUserSubscription(
@Body() userNotificationUpdateDto: UserNotificationUpdateDto, @Body() userNotificationUpdateDto: UserNotificationUpdateDto,
) { ) {