From fe21896bff9b9305df0294e0352b343e0dd4d0b9 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 월, 14 3월 2022 12:55:20 +0900 Subject: [PATCH] - api로 이슈 추가 시 하위이슈기준 IP/SITE 일 경우 코드 수정 --- src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java | 39 +++++++++++++++++++++++++++++++++------ 1 files changed, 33 insertions(+), 6 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java index 539c6f5..545ec04 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java @@ -493,6 +493,7 @@ if (issueCustomFieldValueForms.size() > 0) { String concatUseValue = ""; + String customFieldType = ""; int useIdx = 0; int cntIp = 0; int cntSite = 0; @@ -519,6 +520,7 @@ if (customFieldApiOverlap.getCustomField().getCustomFieldType().equals(IP_ADDRESS)) { long ip = ConvertUtil.ipToLong(useValue); + customFieldType = IP_ADDRESS.toString(); if (cntIp == 0){ condition.setIp(ip); } @@ -526,6 +528,7 @@ } if(customFieldApiOverlap.getCustomField().getCustomFieldType().equals(SITE)) { + customFieldType = SITE.toString(); String[] urlArr = null; List<String> urls = Lists.newArrayList(); if (useValue.contains(",")) { @@ -560,8 +563,29 @@ issueCustomFieldValueCondition.setUseValue(concatUseValue); issueCustomFieldValueCondition.setUseValues(userValues); issueCustomFieldValueCondition.setIssueTypeId(issueApiform.getIssueTypeId()); + issueCustomFieldValueCondition.setCustomFieldType(customFieldType); // issueCustomFieldValueCondition.setIssueStatusType("CLOSE"); - List<Map<String, Object>> results = this.issueMapper.findByCustomFieldValue(issueCustomFieldValueCondition); + List<Map<String, Object>> results = Lists.newArrayList(); + if (customFieldType.equals(IP_ADDRESS.toString()) && issueForm.getIssueCompanyFields() != null && issueForm.getIssueCompanyFields().size() > 0) { + long ipValue = 0; + if (concatUseValue.contains(",")) { + String[] arr = concatUseValue.split(","); + for (String str : arr) { + ipValue = ConvertUtil.ipToLong(str); + } + } else { + ipValue = ConvertUtil.ipToLong(concatUseValue); + } + issueCustomFieldValueCondition.setUseValue(String.valueOf(ipValue)); + } + + if (issueCustomFieldValueCondition.getCustomFieldType() != null && !issueCustomFieldValueCondition.getCustomFieldType().equals("")) { + // �궗�슜�옄�젙�쓽�븘�뱶 ���엯�씠 IP_ADDRESS �삉�뒗 SITE �씪 寃쎌슦 + results = this.issueMapper.findByCustomFieldValueByCompany(issueCustomFieldValueCondition); + } else { + results = this.issueMapper.findByCustomFieldValue(issueCustomFieldValueCondition); + } + if (results != null && results.size() > 0) { for (Map<String, Object> result : results) { resultIssueVos.add(this.getIssue(MapUtil.getLong(result, "id"))); @@ -2696,21 +2720,24 @@ this.messageAccessor.getMessage(MsgConstants.ISSUE_REMOVE_NOT_SELECT)); } - List<Issue> removeIssues = Lists.newArrayList(); + Set<Long> removeIds = new HashSet<>(); for (Long issueId : issueForm.getRemoveIds()) { + removeIds.add(issueId); //�븯�쐞�씠�뒋 泥댄겕 List<Issue> downIssues = this.issueRepository.findByParentIssueId(issueId); if(downIssues != null && downIssues.size() > 0){ for(Issue downIssue : downIssues){ Long downIssueId = downIssue.getId(); - downIssue = this.issueRemoves(downIssueId, user); - removeIssues.add(downIssue); + removeIds.add(downIssueId); } } - Issue issue = this.issueRemoves(issueId, user); - removeIssues.add(issue); } + + for (Long removeId : removeIds) { + this.issueRemoves(removeId, user); + } + // �궗�슜�옄 �떆�뒪�뀥 湲곕뒫 �궗�슜 �젙蹂� �닔吏� log.info(ElasticSearchUtil.makeUserActiveHistoryMessage(this.webAppUtil.getLoginUser(), ElasticSearchConstants.ISSUE_REMOVE)); } -- Gitblit v1.8.0