OWL ITS + 탐지시스템(인터넷 진흥원)
wyu
2022-01-06 306f6173e4dc458074f74ceeddbfbc0d52765401
src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java
@@ -4,10 +4,13 @@
import kr.wisestone.owl.util.ConvertUtil;
import kr.wisestone.owl.util.MapUtil;
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,
@@ -37,44 +40,30 @@
    public IssueApiForm() {
    }
    public static IssueApiForm make(Map<String, Object> content, List<MultipartFile> files) {
        IssueApiForm form = ConvertUtil.convertMapToClass(content, IssueApiForm.class);
        form.setMultipartFiles(files);
        // api 타입
        if (MapUtil.getString(content, "apiType") != null) {
            try {
                form.setApiType(ApiType.valueOf(MapUtil.getString(content, "apiType")));
            } catch (Exception ex) {
                return null;
            }
    /**
     * 사용자 정의 필드 변환
     * @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());
            customField.put("customFieldVo", customFieldVo);
            List<String> useValues = Lists.newArrayList();
            useValues.add(issueCustomFieldValueForm.getUseValue());
            customField.put("useValues", useValues);
            this.addCustomFieldValue(customField);
        }
        //  사용자 필드 정보
        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);
                Map<String, Object> customFieldVo = new HashMap<>();
                customFieldVo.put("id", issueCustomFieldValueForm.getCustomFieldId());
                customField.put("customFieldVo", customFieldVo);
                List<String> useValues = Lists.newArrayList();
                useValues.add(issueCustomFieldValueForm.getUseValue());
                customField.put("useValues", useValues);
                form.addCustomFieldValue(customField);
            }
        }
        // 첨부 파일
//        if (MapUtil.getObject(content, "files") != null){
//            form.setFiles((List)MapUtil.getObject(content, "files"));
//        }
        return form;
    }
    public String getToken() {