From 237973a4f5bf62471fdbe2019cc725ca51bcc4b6 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 수, 24 11월 2021 17:03:28 +0900
Subject: [PATCH] 연관이슈, 하위이슈 정보 추가

---
 src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java |   22 +++++++++-
 src/main/java/kr/wisestone/owl/vo/IssueVo.java                    |    6 +-
 src/main/java/kr/wisestone/owl/vo/IssueRelationVo.java            |   58 +++++++++++++++++++++++++++++
 3 files changed, 80 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 7351c18..2b0f5e9 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -808,7 +808,7 @@
                     this.setAttachedFiles(issue, issueVo);  //  泥⑤� �뙆�씪 �젙蹂� �뀑�똿
                     this.setIssueCustomFields(issue, issueVo);  //  �궗�슜�옄 �젙�쓽 �븘�뱶 媛� �젙蹂� �뀑�똿
                     this.setRelationIssue(issue, issueVo);        //�뿰愿� �씪媛� �뀑�똿
-                    this.setDownIssues(issue, issueVo);
+                    this.setDownIssues(issue, issueVo); //�븯�쐞 �씠�뒋 �꽭�똿
 
                     break;
 
@@ -827,8 +827,19 @@
     // �븯�쐞 �씠�뒋 �젙蹂대�� �뀑�똿�븳�떎
     private void setDownIssues(Issue issue, IssueVo issueVo) {
         List<Issue> downIssues = this.issueRepository.findByParentIssueId(issue.getId());
-        List<IssueVo> issueVos = ConvertUtil.convertObjectsToClasses(downIssues, IssueVo.class);
-        issueVo.setIssueDownVos(issueVos);
+        List<IssueVo> downIssueVos = ConvertUtil.convertObjectsToClasses(downIssues, IssueVo.class);
+
+        for(IssueVo downIssueVo : downIssueVos){
+            for(Issue downIssue : downIssues){
+                downIssueVo.setTitle(downIssue.getTitle());
+                downIssueVo.setIssueTypeVo(ConvertUtil.copyProperties(downIssue.getIssueType(), IssueTypeVo.class));
+                downIssueVo.setPriorityVo(ConvertUtil.copyProperties(downIssue.getPriority(), PriorityVo.class));
+                downIssueVo.setSeverityVo(ConvertUtil.copyProperties(downIssue.getSeverity(), SeverityVo.class));
+                this.setRegister(downIssue, downIssueVo); // �벑濡앹옄
+                this.setIssueDepartment(downIssue, downIssueVo);  //  �떞�떦遺��꽌 �젙蹂� �뀑�똿
+            }
+            issueVo.setIssueDownVos(downIssueVo);
+        }
     }
 
     //  �씠�뒋 �긽�꽭 �젙蹂대�� �뀑�똿�븳�떎.
@@ -901,6 +912,11 @@
 
                 issueRelationVo.setIssueRelation(relIssueVo);
                 issueRelationVo.setTitle(relationIssue.getTitle());
+                issueRelationVo.setIssueTypeVo(ConvertUtil.copyProperties(relationIssue.getIssueType(), IssueTypeVo.class));
+                issueRelationVo.setPriorityVo(ConvertUtil.copyProperties(relationIssue.getPriority(), PriorityVo.class));
+                issueRelationVo.setSeverityVo(ConvertUtil.copyProperties(relationIssue.getSeverity(), SeverityVo.class));
+                this.setRegister(relationIssue, relIssueVo); // �벑濡앹옄
+                this.setIssueDepartment(relationIssue, relIssueVo);  //  �떞�떦遺��꽌 �젙蹂� �뀑�똿
                 issueVo.addIssueRelationVo(issueRelationVo);
             }
         } else {
diff --git a/src/main/java/kr/wisestone/owl/vo/IssueRelationVo.java b/src/main/java/kr/wisestone/owl/vo/IssueRelationVo.java
index 9e11b47..d0bcb00 100644
--- a/src/main/java/kr/wisestone/owl/vo/IssueRelationVo.java
+++ b/src/main/java/kr/wisestone/owl/vo/IssueRelationVo.java
@@ -1,11 +1,22 @@
 package kr.wisestone.owl.vo;
 
+import com.google.common.collect.Lists;
+
+import java.util.List;
+
 public class IssueRelationVo extends BaseVo {
     private Long id;
     private Long relationIssueType;
     private IssueVo issue;
     private IssueVo issueRelation;
     private String title;
+
+    private IssueTypeVo issueTypeVo;    //  �씠�뒋 �긽�꽭�뿉�꽌 �궗�슜
+    private PriorityVo priorityVo;  //  �씠�뒋 �긽�꽭�뿉�꽌 �궗�슜
+    private SeverityVo severityVo;  //  �씠�뒋 �긽�꽭�뿉�꽌 �궗�슜
+    private UserVo registerVo;  //  �씠�뒋 �긽�꽭�뿉�꽌 �궗�슜
+    private List<DepartmentVo> departmentVos = Lists.newArrayList(); //�떞�떦遺��꽌
+    private Boolean modifyPermissionCheck = Boolean.FALSE;
 
     public IssueRelationVo() {}
 
@@ -37,4 +48,51 @@
 
     public void setTitle(String title) { this.title = title; }
 
+    public IssueTypeVo getIssueTypeVo() {
+        return issueTypeVo;
+    }
+
+    public void setIssueTypeVo(IssueTypeVo issueTypeVo) {
+        this.issueTypeVo = issueTypeVo;
+    }
+
+    public PriorityVo getPriorityVo() {
+        return priorityVo;
+    }
+
+    public void setPriorityVo(PriorityVo priorityVo) {
+        this.priorityVo = priorityVo;
+    }
+
+    public SeverityVo getSeverityVo() {
+        return severityVo;
+    }
+
+    public void setSeverityVo(SeverityVo severityVo) {
+        this.severityVo = severityVo;
+    }
+
+    public UserVo getRegisterVo() {
+        return registerVo;
+    }
+
+    public void setRegisterVo(UserVo registerVo) {
+        this.registerVo = registerVo;
+    }
+
+    public List<DepartmentVo> getDepartmentVos() {
+        return departmentVos;
+    }
+
+    public void setDepartmentVos(List<DepartmentVo> departmentVos) {
+        this.departmentVos = departmentVos;
+    }
+
+    public Boolean getModifyPermissionCheck() {
+        return modifyPermissionCheck;
+    }
+
+    public void setModifyPermissionCheck(Boolean modifyPermissionCheck) {
+        this.modifyPermissionCheck = modifyPermissionCheck;
+    }
 }
diff --git a/src/main/java/kr/wisestone/owl/vo/IssueVo.java b/src/main/java/kr/wisestone/owl/vo/IssueVo.java
index ebf9514..e2a5aee 100644
--- a/src/main/java/kr/wisestone/owl/vo/IssueVo.java
+++ b/src/main/java/kr/wisestone/owl/vo/IssueVo.java
@@ -46,7 +46,7 @@
     private List<IssueTypeCustomFieldVo> issueTypeCustomFieldVos = Lists.newArrayList();
     private List<IssueCustomFieldValueVo> issueCustomFieldValueVos = Lists.newArrayList();
     private List<IssueRelationVo> issueRelations = Lists.newArrayList();
-    private List<IssueVo> issueDownVos = Lists.newArrayList();
+    private IssueVo issueDownVos;
     private List<IssueVo> issueRelationVos = Lists.newArrayList();
     private Long attachedFileCount;
     private Long issueCommentCount;
@@ -415,11 +415,11 @@
         this.departmentVos = departmentVos;
     }
 
-    public List<IssueVo> getIssueDownVos() {
+    public IssueVo getIssueDownVos() {
         return issueDownVos;
     }
 
-    public void setIssueDownVos(List<IssueVo> issueDownVos) {
+    public void setIssueDownVos(IssueVo issueDownVos) {
         this.issueDownVos = issueDownVos;
     }
 

--
Gitblit v1.8.0