From 9952d26f68e8c221aa0e1f16f6e799df82b2be3e Mon Sep 17 00:00:00 2001 From: wlgh1553 Date: Tue, 4 Feb 2025 17:41:24 +0900 Subject: [PATCH] docs: add question enhancement API swagger MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: shl0501 Co-authored-by: 유영재 --- apps/server/src/ai/ai.controller.ts | 4 ++++ apps/server/src/ai/dto/improve-question.dto.ts | 2 +- apps/server/src/ai/swagger/ai.swagger.ts | 0 .../src/ai/swagger/improve-question.swagger.ts | 18 ++++++++++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) delete mode 100644 apps/server/src/ai/swagger/ai.swagger.ts create mode 100644 apps/server/src/ai/swagger/improve-question.swagger.ts diff --git a/apps/server/src/ai/ai.controller.ts b/apps/server/src/ai/ai.controller.ts index 46bd1d6..f735ddc 100644 --- a/apps/server/src/ai/ai.controller.ts +++ b/apps/server/src/ai/ai.controller.ts @@ -1,7 +1,9 @@ import { Body, Controller, Post, UseGuards } from '@nestjs/common'; +import { ApiBody } from '@nestjs/swagger'; import { AiService } from './ai.service'; import { ImproveQuestionDto } from './dto/improve-question.dto'; +import { ImproveQuestionSwagger } from './swagger/improve-question.swagger'; import { SessionTokenValidationGuard } from '@common/guards/session-token-validation.guard'; @Controller('ai') @@ -9,6 +11,8 @@ export class AiController { constructor(private readonly aiService: AiService) {} @Post('question-improve') + @ImproveQuestionSwagger() + @ApiBody({ type: ImproveQuestionDto }) @UseGuards(SessionTokenValidationGuard) public async improveQuestion(@Body() improveQuestionDto: ImproveQuestionDto) { const { body: userContent } = improveQuestionDto; diff --git a/apps/server/src/ai/dto/improve-question.dto.ts b/apps/server/src/ai/dto/improve-question.dto.ts index e940bb7..56c07bb 100644 --- a/apps/server/src/ai/dto/improve-question.dto.ts +++ b/apps/server/src/ai/dto/improve-question.dto.ts @@ -5,7 +5,7 @@ import { BaseDto } from '@common/base.dto'; export class ImproveQuestionDto extends BaseDto { @ApiProperty({ - example: '이것은 질문의 내용입니다.', + example: '리마큐가 뭐임?', description: '질문 본문 내용', required: true, }) diff --git a/apps/server/src/ai/swagger/ai.swagger.ts b/apps/server/src/ai/swagger/ai.swagger.ts deleted file mode 100644 index e69de29..0000000 diff --git a/apps/server/src/ai/swagger/improve-question.swagger.ts b/apps/server/src/ai/swagger/improve-question.swagger.ts new file mode 100644 index 0000000..29eff75 --- /dev/null +++ b/apps/server/src/ai/swagger/improve-question.swagger.ts @@ -0,0 +1,18 @@ +import { applyDecorators } from '@nestjs/common'; +import { ApiOperation, ApiResponse } from '@nestjs/swagger'; + +export const ImproveQuestionSwagger = () => + applyDecorators( + ApiOperation({ summary: '질문 개선' }), + ApiResponse({ + status: 201, + description: '질문 개선 성공', + schema: { + example: { + result: { + question: '리마큐(Remacu)란 무엇인가요?', + }, + }, + }, + }), + );