OWL ITS + 탐지시스템(인터넷 진흥원)
src/main/java/kr/wisestone/owl/web/controller/ApiController.java
@@ -3,6 +3,7 @@
import kr.wisestone.owl.constant.Constants;
import kr.wisestone.owl.constant.MsgConstants;
import kr.wisestone.owl.domain.Issue;
import kr.wisestone.owl.domain.User;
import kr.wisestone.owl.exception.OwlRuntimeException;
import kr.wisestone.owl.service.IssueService;
import kr.wisestone.owl.util.ConvertUtil;
@@ -46,17 +47,26 @@
    Map<String, Object> addIssue(MultipartHttpServletRequest request) throws OwlRuntimeException, CloneNotSupportedException {
        Map<String, Object> resJsonData = new HashMap<>();
        IssueApiForm issueForm = IssueApiForm.make(ConvertUtil.convertJsonToMap(request.getParameter(Constants.REQ_KEY_CONTENT)), request.getFiles("file"));
        String str = request.getParameter(Constants.REQ_KEY_CONTENT);
        IssueApiForm issueForm = IssueApiForm.make(ConvertUtil.convertJsonToMap(str), request.getFiles("file"));
        if (issueForm == null) {
            throw new OwlRuntimeException(this.messageAccessor.getMessage(MsgConstants.API_PARAMETER_ERROR));
        }
        // 사용자 정의 필드가 없을 경우 검색을 할 수 없기 때문에 예외처리
        else if (issueForm.getCustomFieldValues() == null || issueForm.getCustomFieldValues().size() == 0) {
            throw new OwlRuntimeException(this.messageAccessor.getMessage(MsgConstants.API_CUSTOM_FIELD_NOT_EXIST));
        }
        if (issueForm.getApiType() == IssueApiForm.ApiType.add) {
            List<Issue> issues = this.issueService.addApiIssue(issueForm);
            //  버전 생성
            for (Issue issue : issues) {
                this.issueService.addIssueVersion(issue.getId());
                this.issueService.addIssueVersion(issue.getId(), issue.getRegisterId());
            }
        } else {
            this.issueService.modifyIssue(issueForm, request.getFiles("file"));
        }