From 55982d76ee2706c4f69b5b5bf31eb7eaed2e3456 Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 월, 06 12월 2021 17:10:36 +0900
Subject: [PATCH] 이슈 제목 수정

---
 src/main/java/kr/wisestone/owl/web/controller/ApiController.java |   44 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/web/controller/ApiController.java b/src/main/java/kr/wisestone/owl/web/controller/ApiController.java
index 80ee790..f056a56 100644
--- a/src/main/java/kr/wisestone/owl/web/controller/ApiController.java
+++ b/src/main/java/kr/wisestone/owl/web/controller/ApiController.java
@@ -1,9 +1,12 @@
 package kr.wisestone.owl.web.controller;
 
 import kr.wisestone.owl.constant.Constants;
-import kr.wisestone.owl.service.GuideService;
-import kr.wisestone.owl.web.condition.GuideCondition;
-import kr.wisestone.owl.web.form.GuideForm;
+import kr.wisestone.owl.constant.MsgConstants;
+import kr.wisestone.owl.domain.Issue;
+import kr.wisestone.owl.exception.OwlRuntimeException;
+import kr.wisestone.owl.service.IssueService;
+import kr.wisestone.owl.util.ConvertUtil;
+import kr.wisestone.owl.web.form.IssueApiForm;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Pageable;
 import org.springframework.http.MediaType;
@@ -12,6 +15,7 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
 
 import java.util.HashMap;
 import java.util.Map;
@@ -20,22 +24,44 @@
 public class ApiController extends BaseController {
 
     @Autowired
-    private GuideService guideService;
+    private IssueService issueService;
 
-    //  �씠�뒋 異붽�
-    @RequestMapping(value = "api/issue", produces = MediaType.APPLICATION_JSON_VALUE)
+    //  �씠�뒋 異붽�(json 諛⑹떇�쑝濡� �뙆�씪�쟾�넚)
+//    @RequestMapping(value = "api/issue", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
+//    public
+//    @ResponseBody
+//    Map<String, Object> addIssue(@RequestBody Map<String, Map<String, Object>> params) {
+//        Map<String, Object> resJsonData = new HashMap<>();
+//
+//        IssueApiForm issueForm = IssueApiForm.make(params.get(Constants.REQ_KEY_CONTENT));
+//        Issue issue = this.issueService.addApiIssue(issueForm);
+//        //  踰꾩쟾 �깮�꽦
+//        this.issueService.addIssueVersion(issue.getId());
+//        return this.setSuccessMessage(resJsonData);
+//    }
+    @RequestMapping(value = "api/issue", method = RequestMethod.POST)
     public
     @ResponseBody
-    Map<String, Object> add(@RequestBody Map<String, Map<String, Object>> params) {
+    Map<String, Object> addIssue(MultipartHttpServletRequest request) throws OwlRuntimeException {
         Map<String, Object> resJsonData = new HashMap<>();
 
-        // todo
+        IssueApiForm issueForm = IssueApiForm.make(ConvertUtil.convertJsonToMap(request.getParameter(Constants.REQ_KEY_CONTENT)), request.getFiles("file"));
+        if (issueForm == null) {
+            throw new OwlRuntimeException(this.messageAccessor.getMessage(MsgConstants.API_PARAMETER_ERROR));
+        }
+        if (issueForm.getApiType() == IssueApiForm.ApiType.add) {
+            Issue issue = this.issueService.addApiIssue(issueForm);
+            //  踰꾩쟾 �깮�꽦
+            this.issueService.addIssueVersion(issue.getId());
+        } else {
+            this.issueService.modifyIssue(issueForm, request.getFiles("file"));
+        }
 
         return this.setSuccessMessage(resJsonData);
     }
 
     //  �씠�뒋 議고쉶
-    @RequestMapping(value = "/api/issuelist", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
+    @RequestMapping(value = "/api/issueList", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
     public
     @ResponseBody
     Map<String, Object> find(@RequestBody Map<String, Map<String, Object>> params) {

--
Gitblit v1.8.0