From 261950c3d8e20fb94141c03b37a2872f75477831 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 금, 14 1월 2022 21:07:15 +0900
Subject: [PATCH] Merge branch 'master' of http://192.168.0.28:9001/r/owl-kisa

---
 src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java |   28 +++++++++++++++++++++++++---
 1 files changed, 25 insertions(+), 3 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java
index b32b1d4..561db3a 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueTypeServiceImpl.java
@@ -191,20 +191,42 @@
                                            IssueTypeCondition condition, Pageable pageable) {
 
         List<Long> downProjectIds = Lists.newArrayList();
+        List<Long> allProjectIds = Lists.newArrayList();
+        List<ProjectClosure> projectClosures = Lists.newArrayList();
 
         condition.setPage(pageable.getPageNumber() * pageable.getPageSize());
         condition.setPageSize(pageable.getPageSize());
         condition.setWorkspaceId(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
 
-        List<ProjectClosure> projectClosures = this.projectClosureRepository.findByParentProjectId(condition.getProjectId());
-        if (projectClosures != null) {
+
+        if (condition.getProjectId() == null) {
+            List<ProjectVo> projectVos = this.projectService.findByIncludeProject(Lists.newArrayList("01", "02", "03"), ProjectType.BTS_PROJECT.toString());
+            if (projectVos != null && projectVos.size() > 0) {
+                for (ProjectVo projectVo : projectVos) {
+                    allProjectIds.add(projectVo.getId());
+                    projectClosures = this.projectClosureRepository.findByParentProjectId(projectVo.getId());
+                    if (projectClosures != null && projectClosures.size() > 0) {
+                        for (ProjectClosure projectClosure : projectClosures) {
+                            allProjectIds.add(projectClosure.getProject().getId());
+                        }
+                    }
+                }
+            }
+        }else {
+            projectClosures = this.projectClosureRepository.findByParentProjectId(condition.getProjectId());
+        }
+
+        if (projectClosures != null && projectClosures.size() > 0) {
             for (ProjectClosure projectClosure : projectClosures) {
                 Long downProjectId = projectClosure.getProject().getId();
                 downProjectIds.add(downProjectId);
+                allProjectIds.add(downProjectId);
             }
         }
         condition.setDownProjectIds(downProjectIds);
-
+        if (condition.getProjectId() == null) {
+            condition.setAllProjectIds(allProjectIds);
+        }
         List<Map<String, Object>> results = this.issueTypeMapper.find(condition);
         for (Map<String, Object> result : results) {
             Long projectId = MapUtil.getLong(result, "projectId");

--
Gitblit v1.8.0