diff --git a/src/main/java/com/kns/tenquest/controller/TemplateController.java b/src/main/java/com/kns/tenquest/controller/TemplateController.java
index d97b336..318e698 100644
--- a/src/main/java/com/kns/tenquest/controller/TemplateController.java
+++ b/src/main/java/com/kns/tenquest/controller/TemplateController.java
@@ -1,24 +1,16 @@
-
package com.kns.tenquest.controller;
-import com.kns.tenquest.DtoList;
import com.kns.tenquest.ENV;
import com.kns.tenquest.RequestWrapper.TemplateWrapper;
-import com.kns.tenquest.dto.ResponseDto;
import com.kns.tenquest.dto.ServiceResult;
-import com.kns.tenquest.dto.TemplateDocDto;
import com.kns.tenquest.dto.TemplateDto;
import com.kns.tenquest.response.Response;
-import com.kns.tenquest.response.Response_Deprecated;
-import com.kns.tenquest.response.ResponseStatus;
import com.kns.tenquest.service.TemplateDocService;
import com.kns.tenquest.service.TemplateService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
-import java.util.NoSuchElementException;
-
@Controller
@CrossOrigin(origins = "*", allowedHeaders = "*")
@RequestMapping(ENV.API_PREFIX)
@@ -28,6 +20,13 @@ public class TemplateController {
private final TemplateService templateService;
private final TemplateDocService templateDocService;
+ /**
+ * Request: [GET] /api/v1/templates
+ * @apiNote 등록된 모든 회원 정보를 조회한다.
+ * @see com.kns.tenquest.service.TemplateService#getAllTemplates()
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 모든 템플릿 정보를 담은 Response를 반환한다.
+ **/
@ResponseBody
@GetMapping("/templates")
public Response apiGetAllTemplates() {
@@ -37,6 +36,14 @@ public Response apiGetAllTemplates() {
new Response().Ok().data(sr.getData());
}
+ /**
+ * Request: [GET] /api/v1/templates/${memberId}
+ * @apiNote 특정 회원이 생성한 모든 템플릿 정보를 조회한다.
+ * @param memberId 조회할 회원의 `회원 식별자(memberId)`
+ * @see com.kns.tenquest.service.TemplateService#getAllTemplatesByMember(String)
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 요청한 회원이 생성한 모든 템플릿 정보를 담은 Response를 반환한다.
+ **/
@ResponseBody
@GetMapping("/templates/{memberId}")
public Response apiGetAllMemberTemplates(@PathVariable("memberId")String memberId){
@@ -46,6 +53,13 @@ public Response apiGetAllMemberTemplates(@PathVariable("memberId")String memberI
new Response().Ok().data(sr.getData());
}
+ /**
+ * Request: [GET] /api/v1/template-docs
+ * @apiNote 등록된 모든 템플릿 도큐먼트 정보를 조회한다.
+ * @see com.kns.tenquest.service.TemplateDocService#getAllTemplateDocs()
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 등록된 모든 템플릿 도큐먼트 정보를 담은 Response를 반환한다.
+ **/
@ResponseBody
@GetMapping("/template-docs")
public Response apiGetAllTemplateDocs(){
@@ -55,8 +69,16 @@ public Response apiGetAllTemplateDocs(){
new Response().Ok().data(sr.getData());
}
+ /**
+ * Request: [GET] /api/v1/templates/template-id?value=${templateId}
+ * @apiNote 특정 템플릿에 대한 정보를 조회한다.
+ * @param templateId 조회할 템플릿의 `템플릿 식별자(templateId)`
+ * @see com.kns.tenquest.service.TemplateService#getTemplate(String)
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 요청한 템플릿 정보를 담은 Response를 반환한다.
+ **/
@ResponseBody
- @GetMapping("templates/template-id")
+ @GetMapping("/templates/template-id")
public Response apiGetTemplate(@RequestParam("value") String templateId){
ServiceResult sr = templateService.getTemplate(templateId);
return sr.isFailed() ?
@@ -64,6 +86,15 @@ public Response apiGetTemplate(@RequestParam("value") String templateId){
new Response().Ok().data(sr.getData());
}
+ /**
+ * Request: [POST] /api/v1/templates/${memberId}
+ * @apiNote 템플릿을 생성한다.
+ * @param memberId 템플릿을 생성할 회원의 `회원 식별자(memberId)`
+ * @param requestWrapper 생성할 템플릿 정보를 담은 Request Body
+ * @see com.kns.tenquest.service.TemplateDocService#getAllTemplateDocs()
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 생성된 템플릿 정보를 담은 Response를 반환한다.
+ **/
@ResponseBody
@PostMapping("/templates/{memberId}")
public Response apiCreateTemplate(@RequestBody TemplateWrapper requestWrapper, @PathVariable("memberId")String memberId) {
@@ -73,7 +104,16 @@ public Response apiCreateTemplate(@RequestBody TemplateWrapper requestWrapper, @
new Response().Ok().data(sr.getData());
}
-
+ /**
+ * Request: [PUT] /api/v1/templates/${memberId}/template-id?value=${templateId}
+ * @apiNote 특정 멤버가 생성한 템플릿을 수정한다.
+ * @param memberId 템플릿을 생성한 회원의 `회원 식별자(memberId)`
+ * @param templateId 수정할 템플릿의 `템플릿 식별자(templateId)`
+ * @param templateDto 생성할 템플릿 정보를 담은 Request Body
+ * @see com.kns.tenquest.service.TemplateDocService#getAllTemplateDocs()
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 수정된 템플릿 정보를 담은 Response를 반환한다.
+ **/
@PutMapping("/templates/{memberId}/template-id")
public Response apiTemplateUpdate(@PathVariable("memberId") String memberId, @RequestParam("value") String templateId, @RequestBody TemplateDto templateDto) {
ServiceResult sr = templateService.templateUpdate(memberId,templateId, templateDto);
@@ -82,6 +122,15 @@ public Response apiTemplateUpdate(@PathVariable("memberId") String memberId, @Re
new Response().Ok().data(sr.getData());
}
+
+ /**
+ * Request: [DELETE] /api/v1/templates/${memberId}/template-id?value=${templateId}
+ * @apiNote 특정 멤버가 생성한 템플릿을 삭제한다.
+ * @param memberId 템플릿을 생성한 회원의 `회원 식별자(memberId)`
+ * @param templateId 삭제할 템플릿의 `템플릿 식별자(templateId)`
+ * @return com.kns.tenquest.response.Response
+ * 성공 시, 삭제된 템플릿 정보를 담은 Response를 반환한다.
+ */
@DeleteMapping("/templates/{memberId}/template-id")
public Response apiTemplateDelete(@PathVariable("memberId") String memberId, @RequestParam("value") String templateId) {
ServiceResult sr = templateService.templateDelete(memberId, templateId);