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