From 6adb341db180240e0af34ace40100912d4ed5257 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 목, 06 1월 2022 11:02:57 +0900
Subject: [PATCH] Merge branch 'master' of http://192.168.0.25:9001/r/owl-kisa

---
 src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java |  113 +++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 78 insertions(+), 35 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java b/src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java
index ed11829..9ab2b02 100644
--- a/src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java
+++ b/src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java
@@ -1,64 +1,69 @@
 package kr.wisestone.owl.web.form;
 
 import com.google.common.collect.Lists;
-import kr.wisestone.owl.domain.IssueCustomFieldValue;
 import kr.wisestone.owl.util.ConvertUtil;
 import kr.wisestone.owl.util.MapUtil;
-import kr.wisestone.owl.vo.CustomFieldVo;
 import org.springframework.web.multipart.MultipartFile;
-
+import java.io.Serializable;
 import java.util.*;
 
-public class IssueApiForm {
+/**
+ * API �씠�뒋 異붽� / �닔�젙�슜 form class
+ */
+public class IssueApiForm implements Serializable {
+
+    public enum ApiType {
+        add,
+        modify
+    }
+
     private String token;
     private String title;
     private String projectKey;
     private String description;
     private Long issueTypeId;
+    private Long issueStatusId;
     private Long priorityId;
     private Long severityId;
     private Date startDate;
     private Date endDate;
     private Date searchTime;
+    private ApiType apiType;
     private List<DepartmentForm> departments = Lists.newArrayList();
     private List<IssueCustomFieldValueForm> issueCustomFieldValues = Lists.newArrayList();
     private List<Map<String, Object>> CustomFieldValues = Lists.newArrayList();
-//    private List<Map<String, Object>> files = Lists.newArrayList();
     private List<MultipartFile> multipartFiles = Lists.newArrayList();
+    private List<Long> useIssueCustomFieldIds = Lists.newArrayList();       // �궗�쐞�씪媛먯슜 �궗�슜�옄�븘�뱶媛�
+    private String url;             // �깘吏� �떆�뒪�뀥�뿉�꽌留� �쟻�슜
+    private String comment;
 
     public IssueApiForm() {
     }
 
-    public static IssueApiForm make(Map<String, Object> content, List<MultipartFile> files) {
-        IssueApiForm form = ConvertUtil.convertMapToClass(content, IssueApiForm.class);
-        form.setMultipartFiles(files);
 
-        //  �궗�슜�옄 �븘�뱶 �젙蹂�
-        if (MapUtil.getObject(content, "customFields") != null){
-            List<Map<String, Object>> customFields = (List)MapUtil.getObject(content, "customFields");
-            for (Map<String, Object> customField : customFields) {
-                IssueCustomFieldValueForm issueCustomFieldValueForm = ConvertUtil.convertMapToClass(customField, IssueCustomFieldValueForm.class);
-                form.addIssueCustomFieldValue(issueCustomFieldValueForm);
+    /**
+     * �궗�슜�옄 �젙�쓽 �븘�뱶 蹂��솚
+     * @param customFieldJson �궗�슜�옄 �젙�쓽 �븘�뱶 json
+     */
+    public void parseCustomFields(String customFieldJson) {
 
+        Map<String, Object> json = ConvertUtil.convertJsonToMap(customFieldJson);
+        List<Map<String, Object>> customFields = (List) MapUtil.getObject(json, "customFields");
+        for (Map<String, Object> customField : customFields) {
+            IssueCustomFieldValueForm issueCustomFieldValueForm = ConvertUtil.convertMapToClass(customField, IssueCustomFieldValueForm.class);
+            this.addIssueCustomFieldValue(issueCustomFieldValueForm);
 
-                Map<String, Object> customFieldVo = new HashMap<>();
-                customFieldVo.put("id", issueCustomFieldValueForm.getCustomFieldId());
+            Map<String, Object> customFieldVo = new HashMap<>();
+            customFieldVo.put("id", issueCustomFieldValueForm.getCustomFieldId());
 
-                customField.put("customFieldVo", customFieldVo);
+            customField.put("customFieldVo", customFieldVo);
 
-                List<String> useValues = Lists.newArrayList();
-                useValues.add(issueCustomFieldValueForm.getUseValue());
-                customField.put("useValues", useValues);
+            List<String> useValues = Lists.newArrayList();
+            useValues.add(issueCustomFieldValueForm.getUseValue());
+            customField.put("useValues", useValues);
 
-                form.addCustomFieldValue(customField);
-            }
+            this.addCustomFieldValue(customField);
         }
-
-        // 泥⑤� �뙆�씪
-//        if (MapUtil.getObject(content, "files") != null){
-//            form.setFiles((List)MapUtil.getObject(content, "files"));
-//        }
-        return form;
     }
 
     public String getToken() {
@@ -177,13 +182,13 @@
         CustomFieldValues = customFieldValues;
     }
 
-//    public List<Map<String, Object>> getFiles() {
-//        return files;
-//    }
-//
-//    public void setFiles(List<Map<String, Object>> files) {
-//        this.files = files;
-//    }
+    public ApiType getApiType() {
+        return apiType;
+    }
+
+    public void setApiType(ApiType apiType) {
+        this.apiType = apiType;
+    }
 
     public List<MultipartFile> getMultipartFiles() {
         return multipartFiles;
@@ -192,4 +197,42 @@
     public void setMultipartFiles(List<MultipartFile> multipartFiles) {
         this.multipartFiles = multipartFiles;
     }
+
+    public Long getIssueStatusId() {
+        return issueStatusId;
+    }
+
+    public void setIssueStatusId(Long issueStatusId) {
+        this.issueStatusId = issueStatusId;
+    }
+
+    public List<Long> getUseIssueCustomFieldIds() {
+        return useIssueCustomFieldIds;
+    }
+
+    public void setUseIssueCustomFieldIds(List<Long> useIssueCustomFieldIds) {
+        this.useIssueCustomFieldIds = useIssueCustomFieldIds;
+    }
+
+    public void addUseIssueCustomFieldId(Long customFieldId) {
+        if (this.useIssueCustomFieldIds != null) {
+            this.useIssueCustomFieldIds.add(customFieldId);
+        }
+    }
+
+    public String getUrl() {
+        return url;
+    }
+
+    public void setUrl(String url) {
+        this.url = url;
+    }
+
+    public String getComment() {
+        return comment;
+    }
+
+    public void setComment(String comment) {
+        this.comment = comment;
+    }
 }

--
Gitblit v1.8.0