OWL ITS + 탐지시스템(인터넷 진흥원)
src/main/java/kr/wisestone/owl/web/form/IssueApiForm.java
@@ -1,30 +1,38 @@
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.util.*;
public class IssueApiForm {
    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() {
    }
@@ -33,13 +41,21 @@
        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;
            }
        }
        //  사용자 필드 정보
        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());
@@ -177,13 +193,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 +208,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;
    }
}