From f31ac71823abc8eb624f48b69c307d444828902e Mon Sep 17 00:00:00 2001 From: minahYu Date: Sun, 24 Nov 2024 20:48:41 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20=EA=B8=B0=EC=97=85=EC=A0=95=EB=B3=B4=20?= =?UTF-8?q?=EC=9E=85=EB=A0=A5=20API=20=EA=B4=80=EB=A0=A8=20Swagger=20?= =?UTF-8?q?=EB=AA=85=EC=84=B8=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/ConsultingController.java | 20 +++++++++++++++++++ .../web/dto/request/CompanyInfoRequest.java | 14 +++++++++---- .../web/dto/response/ConsultingResponse.java | 3 +++ 3 files changed, 33 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/controller/ConsultingController.java b/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/controller/ConsultingController.java index 72a73e2..aca4b46 100644 --- a/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/controller/ConsultingController.java +++ b/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/controller/ConsultingController.java @@ -6,6 +6,11 @@ import com.swOnCampus.AIPlatform.domain.member.entity.Member; import com.swOnCampus.AIPlatform.global.annotation.LoginMember; import com.swOnCampus.AIPlatform.global.response.ApiResponse; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.media.Content; +import io.swagger.v3.oas.annotations.media.Schema; +import io.swagger.v3.oas.annotations.responses.ApiResponses; +import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -15,6 +20,7 @@ import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; +@Tag(name = "기업정보 입력에 따른 컨설팅 결과 API", description = "기업정보 입력/컨설팅 요약 결과 조회 관련 API") @RequiredArgsConstructor @RestController @RequestMapping("/api/v1/consulting") @@ -22,6 +28,20 @@ public class ConsultingController { private final CompanyService companyService; + @Operation(summary = "기업정보 입력 API 요청", description = "AI 컨설팅에 필요한 기업정보 입력 API 요청") + @ApiResponses(value = { + @io.swagger.v3.oas.annotations.responses.ApiResponse( + responseCode = "COMMON200", + description = "요청 성공", + content = { + @Content( + schema = @Schema( + implementation = CompanyInfoRequest.class + ) + ) + } + ) + }) @PostMapping() public ResponseEntity> createConsulting( @LoginMember Member member, diff --git a/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/request/CompanyInfoRequest.java b/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/request/CompanyInfoRequest.java index 5abc32e..1b07b79 100644 --- a/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/request/CompanyInfoRequest.java +++ b/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/request/CompanyInfoRequest.java @@ -1,15 +1,21 @@ package com.swOnCampus.AIPlatform.domain.consulting.web.dto.request; +import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotBlank; public record CompanyInfoRequest( - @NotBlank(message="회사명을 입력해주세요.") + @Schema(description = "회사명을 입력해주세요.", example = "company") + @NotBlank(message = "회사명을 입력해주세요.") String name, - @NotBlank(message="기업규모를 입력해주세요.") + @Schema(description = "기업규모를 입력해주세요.", example = "Small") + @NotBlank(message = "기업규모를 입력해주세요.") String companySize, - @NotBlank(message="산업 분야를 입력해주세요.") + @Schema(description = "산업 분야를 입력해주세요.", example = "Retail") + @NotBlank(message = "산업 분야를 입력해주세요.") String industry, - @NotBlank(message="Pain Point를 입력해주세요.") + @Schema(description = "Pain point를 입력해주세요.", example = "String") + @NotBlank(message = "Pain Point를 입력해주세요.") String painPoint ) { + } diff --git a/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/response/ConsultingResponse.java b/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/response/ConsultingResponse.java index ede3888..654a7f4 100644 --- a/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/response/ConsultingResponse.java +++ b/src/main/java/com/swOnCampus/AIPlatform/domain/consulting/web/dto/response/ConsultingResponse.java @@ -1,6 +1,9 @@ package com.swOnCampus.AIPlatform.domain.consulting.web.dto.response; +import io.swagger.v3.oas.annotations.media.Schema; + public record ConsultingResponse( + @Schema(description = "컨설팅 요약 내용", example = "summary") String summary ) {