OWL ITS + 탐지시스템(인터넷 진흥원)
이민희
2021-11-18 ee85794d4be3a06299fb57cad06a20b7c096e331
src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -850,6 +850,9 @@
        this.setIssueHistory(issue, issueVo);   //  이슈 기록 정보 셋팅
        this.setRelationIssue(issue, issueVo);        //연관 일감 셋팅
        this.setDownIssues(issue, issueVo);
        this.setIssueCompanyField(issue, issueVo);  //업체 정보 세팅
        this.setIssueIspField(issue, issueVo);  //ISP 정보 세팅
        this.setIssueHostingField(issue, issueVo);  //HOSTING 정보 세팅
    }
    //  등록자 정보 추가
@@ -1056,9 +1059,15 @@
        if (!StringUtils.isEmpty(detectIssueChange.toString())) {
            this.issueHistoryService.addIssueHistory(issue, IssueHistoryType.MODIFY, detectIssueChange.toString());
        }
        //  사용자 시스템 기능 사용 정보 수집
        log.info(ElasticSearchUtil.makeUserActiveHistoryMessage(this.webAppUtil.getLoginUser(), ElasticSearchConstants.ISSUE_MODIFY));
        //  업체 정보 저장
        this.issueCompanyService.modifyIssueCompanyField(issue, issueForm.getIssueCompanyFields());
        //  ISP 정보 저장
        this.issueIspService.modifyIssueIspField(issue, issueForm.getIssueIspFields());
        //  HOSTING 정보 저장
        this.issueHostingService.modifyIssueHostingField(issue, issueForm.getIssueHostingFields());
        return issue;
    }
@@ -1615,66 +1624,36 @@
    }
    //  업체 정보 추가
    private void setIssueCompanyField(List<IssueVo> issueVos, IssueCondition issueCondition) {
        //  이슈에서 저장한 업체 값을 조회한다.
        List<Map<String, Object>> issueCompanyFields = this.issueCompanyService.findInIssueIds(issueCondition);
    private void setIssueCompanyField(Issue issue, IssueVo issueVo) {
        List<IssueCompanyVo> issueCompanyVos = Lists.newArrayList();
        for (IssueVo issueVo : issueVos) {
            for (Map<String, Object> issueCompanyField : issueCompanyFields) {
                if (issueVo.getId().equals(MapUtil.getLong(issueCompanyField, "issueId"))) {
                    IssueCompanyVo issueCompanyVo = new IssueCompanyVo();
                    issueCompanyVo.setName(MapUtil.getString(issueCompanyField, "companyName"));
                    issueCompanyVo.setManager(MapUtil.getString(issueCompanyField, "companyManager"));
                    issueCompanyVo.setTel(MapUtil.getString(issueCompanyField, "companyTel"));
                    issueCompanyVo.setEmail(MapUtil.getString(issueCompanyField, "companyEmail"));
                    issueCompanyVo.setMemo(MapUtil.getString(issueCompanyField, "companyMemo"));
                    issueVo.addIssueCompanyFieldVo(issueCompanyVo);
                }
            }
        for(IssueCompany issueCompany : issue.getIssueCompanies()){
            IssueCompanyVo issueCompanyVo = ConvertUtil.copyProperties(issueCompany.getCompanyField(), IssueCompanyVo.class);
            issueCompanyVos.add(issueCompanyVo);
        }
        issueVo.setIssueCompanyVos(issueCompanyVos);
    }
    //  Isp 정보 추가
    private void setIssueIspField(List<IssueVo> issueVos, IssueCondition issueCondition) {
        //  이슈에서 저장한 ISP 값을 조회한다.
        /*List<Map<String, Object>> issueIspFields = this.issueIspFieldService.findInIssueIds(issueCondition);*/
    private void setIssueIspField(Issue issue, IssueVo issueVo) {
        List<IssueIspVo> issueIspVos = Lists.newArrayList();
        /*for (IssueVo issueVo : issueVos) {
            for (Map<String, Object> issueIspField : issueIspFields) {
                if (issueVo.getId().equals(MapUtil.getLong(issueIspField, "issueId"))) {
                    IssueIspFieldVo issueIspFieldVo = new IssueIspFieldVo();
                    issueIspFieldVo.setName(MapUtil.getString(issueIspField, "name"));
                    issueIspFieldVo.setManager(MapUtil.getString(issueIspField, "manager"));
                    issueIspFieldVo.setTel(MapUtil.getString(issueIspField, "tel"));
                    issueIspFieldVo.setEmail(MapUtil.getString(issueIspField, "email"));
                    issueIspFieldVo.setMemo(MapUtil.getString(issueIspField, "memo"));
                    issueVo.addIssueIspFieldVo(issueIspFieldVo);
                }
            }
        }*/
        for(IssueIsp issueIsp : issue.getIssueIspFields()){
            IssueIspVo issueIspVo = ConvertUtil.copyProperties(issueIsp.getIspField(), IssueIspVo.class);
            issueIspVos.add(issueIspVo);
        }
        issueVo.setIssueIspVos(issueIspVos);
    }
    // Hosting 정보 추가
    private void setIssueHostingField(List<IssueVo> issueVos, IssueCondition issueCondition) {
        //  이슈에서 저장한 Hosting 값을 조회한다.
        List<Map<String, Object>> issueHostingFields = this.issueHostingService.findInIssueIds(issueCondition);
    private void setIssueHostingField(Issue issue, IssueVo issueVo) {
        List<IssueHostingVo> issueHostingVos = Lists.newArrayList();
        for (IssueVo issueVo : issueVos) {
            for (Map<String, Object> issueHostingField : issueHostingFields) {
                if (issueVo.getId().equals(MapUtil.getLong(issueHostingField, "issueId"))) {
                    IssueHostingVo issueHostingVo = new IssueHostingVo();
                    issueHostingVo.setName(MapUtil.getString(issueHostingField, "name"));
                    issueHostingVo.setManager(MapUtil.getString(issueHostingField, "manager"));
                    issueHostingVo.setTel(MapUtil.getString(issueHostingField, "tel"));
                    issueHostingVo.setEmail(MapUtil.getString(issueHostingField, "email"));
                    issueHostingVo.setMemo(MapUtil.getString(issueHostingField, "memo"));
                    issueVo.addIssueHostingFieldVo(issueHostingVo);
                }
            }
        for(IssueHosting issueHosting : issue.getIssueHostingFields()){
            IssueHostingVo issueHostingVo = ConvertUtil.copyProperties(issueHosting.getHostingField(), IssueHostingVo.class);
            issueHostingVos.add(issueHostingVo);
        }
        issueVo.setIssueHostingVos(issueHostingVos);
    }
    //  연관일감 정보 추가