From 729564acfd97630060acdd77694da87cc1c67979 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 목, 18 11월 2021 09:41:41 +0900 Subject: [PATCH] 이슈관리 추가 완료 *DB날리고 실행 --- src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java | 119 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 94 insertions(+), 25 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 1fdcfc3..800e2e7 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java @@ -44,7 +44,6 @@ import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.util.*; -import java.util.concurrent.locks.Condition; @Service public class IssueServiceImpl extends AbstractServiceImpl<Issue, Long, JpaRepository<Issue, Long>> implements IssueService { @@ -89,6 +88,15 @@ @Autowired private IssueCustomFieldValueService issueCustomFieldValueService; + + @Autowired + private IssueCompanyService issueCompanyService; + + @Autowired + private IssueIspService issueIspService; + + @Autowired + private IssueHostingService issueHostingService; @Autowired private IssueUserService issueUserService; @@ -197,22 +205,6 @@ issue.setPriority(priority); issue.setSeverity(severity); - // �뾽泥� �븘�뱶 �쑀�슚�꽦 泥댄겕 - if(issueForm.getCompanyId() != null){ - CompanyField companyField = this.companyFieldService.getCompany(issueForm.getCompanyId()); - issue.setCompanyField(companyField); - } - // ISP �븘�뱶 �쑀�슚�꽦 泥댄겕 - if(issueForm.getIspId() != null) { - IspField ispField = this.ispFieldService.getIsp(issueForm.getIspId()); - issue.setIspFieldId(ispField); - } - // HOSTING �븘�뱶 �쑀�슚�꽦 泥댄겕 - if (issueForm.getHostingId() != null){ - HostingField hostingField = this.hostingFieldService.getHosting(issueForm.getHostingId()); - issue.setHostingFieldId(hostingField); - } - issue.setIssueNumber(this.issueNumberGeneratorService.generateIssueNumber(project)); // 媛� �봽濡쒖젥�듃�쓽 怨좎쑀 �씠�뒋 踰덊샇 �깮�꽦 this.issueRepository.saveAndFlush(issue); @@ -241,6 +233,12 @@ this.reservationIssueEmail(issue.getId(), EmailType.ISSUE_ADD); // �궗�슜�옄 �떆�뒪�뀥 湲곕뒫 �궗�슜 �젙蹂� �닔吏� log.info(ElasticSearchUtil.makeUserActiveHistoryMessage(this.webAppUtil.getLoginUser(), ElasticSearchConstants.ISSUE_ADD)); + // �뾽泥� �젙蹂� ���옣 + this.issueCompanyService.modifyIssueCompanyField(issue, issueForm.getIssueCompanyFields()); + // ISP �젙蹂� ���옣 + this.issueIspService.modifyIssueIspField(issue, issueForm.getIssueIspFields()); + // HOSTING �젙蹂� ���옣 + this.issueHostingService.modifyIssueHostingField(issue, issueForm.getIssueHostingFields()); return issue; } @@ -345,6 +343,9 @@ issueMap.put("customFields", customFields); issueMap.put("description", issue.getDescription()); + + //�뾽泥�,ISP,HOSTING 異붽� + StringBuilder attachedFileBuilder = new StringBuilder(); @@ -454,7 +455,7 @@ @Override @Transactional(readOnly = true) public List<IssueVo> findChartIssue(Map<String, Object> resJsonData, - IssueCondition issueCondition, Pageable pageable) { + IssueCondition issueCondition, Pageable pageable) { // 寃��깋 議곌굔�쓣 留뚮뱺�떎 if (!this.makeIssueSearchCondition(issueCondition,Lists.newArrayList("01", "02", "03"), pageable)) { @@ -564,9 +565,16 @@ // �궗�슜�옄 �젙�쓽 �븘�뱶 �젙蹂� 異붽� this.setIssueCustomFieldValue(issueVos, issueCondition); + // �뾽泥� �젙蹂� 異붽� + //this.setIssueCompanyField(issueVos, issueCondition); + // ISP �젙蹂� 異붽� + //this.setIssueIspField(issueVos, issueCondition); + // HOSTING �젙蹂� 異붽� + //this.setIssueHostingField(issueVos, issueCondition); + } - // 寃��깋 議곌굔�쓣 留뚮뱺�떎 + // 寃��깋 議곌굔�쓣 留뚮뱺�떎 private boolean makeIssueSearchCondition(IssueCondition condition, List<String> projectStatues, Pageable pageable) { if (pageable != null) { condition.setPage(pageable.getPageNumber() * pageable.getPageSize()); @@ -792,9 +800,6 @@ issueVo.setIssueStatusVo(ConvertUtil.copyProperties(issue.getIssueStatus(), IssueStatusVo.class)); issueVo.setPriorityVo(ConvertUtil.copyProperties(issue.getPriority(), PriorityVo.class)); issueVo.setSeverityVo(ConvertUtil.copyProperties(issue.getSeverity(), SeverityVo.class)); - issueVo.setCompanyFieldVo(ConvertUtil.copyProperties(issue.getCompanyField(), CompanyFieldVo.class)); - issueVo.setIspFieldVo(ConvertUtil.copyProperties(issue.getIspFieldId(), IspFieldVo.class)); - issueVo.setHostingFieldVo(ConvertUtil.copyProperties(issue.getHostingFieldId(), HostingFieldVo.class)); this.setRegister(issue, issueVo); // �벑濡앹옄 �젙蹂� �뀑�똿 //this.setIssueUser(issue, issueVo); // �떞�떦�옄 �젙蹂� �뀑�똿 @@ -836,9 +841,6 @@ issueVo.setIssueStatusVo(issueStatusVo); issueVo.setPriorityVo(ConvertUtil.copyProperties(issue.getPriority(), PriorityVo.class)); issueVo.setSeverityVo(ConvertUtil.copyProperties(issue.getSeverity(), SeverityVo.class)); - issueVo.setCompanyFieldVo(ConvertUtil.copyProperties(issue.getCompanyField(), CompanyFieldVo.class)); - issueVo.setIspFieldVo(ConvertUtil.copyProperties(issue.getIspFieldId(), IspFieldVo.class)); - issueVo.setHostingFieldVo(ConvertUtil.copyProperties(issue.getHostingFieldId(), HostingFieldVo.class)); this.setRegister(issue, issueVo); // �벑濡앹옄 �젙蹂� �뀑�똿 //this.setIssueUser(issue, issueVo); // �떞�떦�옄 �젙蹂� �뀑�똿 this.setIssueDepartment(issue, issueVo); // �떞�떦遺��꽌 �젙蹂� �뀑�똿 @@ -1612,6 +1614,69 @@ } } + // �뾽泥� �젙蹂� 異붽� + private void setIssueCompanyField(List<IssueVo> issueVos, IssueCondition issueCondition) { + // �씠�뒋�뿉�꽌 ���옣�븳 �뾽泥� 媛믪쓣 議고쉶�븳�떎. + List<Map<String, Object>> issueCompanyFields = this.issueCompanyService.findInIssueIds(issueCondition); + + 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); + } + } + } + } + + // Isp �젙蹂� 異붽� + private void setIssueIspField(List<IssueVo> issueVos, IssueCondition issueCondition) { + // �씠�뒋�뿉�꽌 ���옣�븳 ISP 媛믪쓣 議고쉶�븳�떎. + /*List<Map<String, Object>> issueIspFields = this.issueIspFieldService.findInIssueIds(issueCondition);*/ + + /*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); + } + } + }*/ + } + + // Hosting �젙蹂� 異붽� + private void setIssueHostingField(List<IssueVo> issueVos, IssueCondition issueCondition) { + // �씠�뒋�뿉�꽌 ���옣�븳 Hosting 媛믪쓣 議고쉶�븳�떎. + List<Map<String, Object>> issueHostingFields = this.issueHostingService.findInIssueIds(issueCondition); + + 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); + } + } + } + } + // �뿰愿��씪媛� �젙蹂� 異붽� private void setRelationIssue(IssueVo issueVo, Long issueId) { List<IssueVo> relationIssues = this.issueRelationService.findRelationIssue(issueId); @@ -1665,6 +1730,8 @@ result.put("customField_" + issueCustomFieldValueVo.getCustomFieldVo().getId().toString(), useValue + ", " + issueCustomFieldValueVo.getUseValue()); } } + + //�뾽泥�, ISP, �샇�뒪�똿 異붽� results.add(result); } catch (Exception e) { @@ -1830,6 +1897,8 @@ this.bulkInsertIssueCustomFieldValue(issueForms, issueTypeCustomFieldMaps); // 3.628 - 3.445 + // �뾽泥�,ISP,�샇�뒪�똿 異붽� + /*serviceStart.stop(); log.debug("2李� ���옣 �떆媛� : " + serviceStart.getTime());*/ -- Gitblit v1.8.0