From 04a1b1839a2aa0ecb6d9673620a6c84ed7a3bea5 Mon Sep 17 00:00:00 2001
From: wyu <kknd09321@nate.com>
Date: 수, 22 12월 2021 14:28:20 +0900
Subject: [PATCH] Merge branch 'master' of http://192.168.0.25:9001/r/owl-kisa

---
 src/main/java/kr/wisestone/owl/service/impl/ProjectServiceImpl.java |   34 ++++++++++++++++++++++++++++++----
 1 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/service/impl/ProjectServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/ProjectServiceImpl.java
index 6689f61..16c21d2 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/ProjectServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/ProjectServiceImpl.java
@@ -66,6 +66,9 @@
     private UserWorkspaceService userWorkspaceService;
 
     @Autowired
+    private IssueTypeService issueTypeService;
+
+    @Autowired
     private UserLevelService userLevelService;
 
     @Autowired
@@ -561,7 +564,7 @@
         User user = this.webAppUtil.getLoginUserObject();
 
         //  �썙�겕�뒪�럹�씠�뒪�뿉�꽌 湲곕낯�쑝濡� �젣怨듬릺�뒗 �봽濡쒖젥�듃�뿉 ���븳 泥댄겕
-        this.checkDefaultProject(project, projectForm);
+        //this.checkDefaultProject(project, projectForm);
         //  �닔�젙 沅뚰븳 泥댄겕
         this.checkModifyPermission(project.getId(), user);
         //  愿�由ъ옄 蹂�寃�
@@ -683,6 +686,20 @@
                             this.messageAccessor.getMessage(MsgConstants.DEFAULT_PROJECT_MANAGER_NOT_CHANGE));
                 }
             }
+        }
+    }
+
+    private void checkUsingIssueType(Long projectId) {
+        Boolean del = Boolean.FALSE;
+
+        List<IssueType> usingIssueTypes = this.issueTypeService.findByProjectId(projectId);
+        if (usingIssueTypes == null || usingIssueTypes.isEmpty()) {
+            del = true;
+        }
+
+        if (!del) {
+            throw new OwlRuntimeException(
+                    this.messageAccessor.getMessage(MsgConstants.PROJECT_NOT_DELETE));
         }
     }
 
@@ -1024,10 +1041,11 @@
     private void removeProjects(Long projectId) {
         Project project = this.getProject(projectId);
         //  湲곕낯 �봽濡쒖젥�듃�뒗 �궘�젣 湲덉�
-        if (project.getDefaultYn()) {
+        /*if (project.getDefaultYn()) {
             throw new OwlRuntimeException(
                     this.messageAccessor.getMessage(MsgConstants.DEFAULT_PROJECT_NOT_REMOVE));
-        }
+        }*/
+        this.checkUsingIssueType(project.getId());
 
         //  濡쒓렇�씤�븳 �궗�슜�옄媛� 愿�由ъ옄 �뿭�븷�뿉 �냼�냽�릺�뼱 �엳�뒗吏� �솗�씤�븳�떎.
         this.checkModifyPermission(project.getId(), this.webAppUtil.getLoginUserObject());
@@ -1118,7 +1136,15 @@
     public List<Map<String, Object>> findByWorkspaceIdAndIncludeProjectAll(ProjectCondition projectCondition) {
         projectCondition.setLoginUserId(this.webAppUtil.getLoginId());
         projectCondition.setWorkspaceId(this.userService.getUser(this.webAppUtil.getLoginId()).getLastWorkspaceId());
-        return this.projectMapper.findByWorkspaceIdAndIncludeProjectAll(projectCondition);
+
+        UserWorkspace userWorkspace = this.userWorkspaceService.findWorkspaceManager(this.webAppUtil.getLoginId());
+        List<Map<String, Object>> results = Lists.newArrayList();
+        if(userWorkspace != null) {// �썙�겕�뒪�럹�씠�뒪 愿�由ъ옄�씪寃쎌슦
+            results = this.projectMapper.findByWorkspaceIdAndProjectAll(projectCondition);
+        } else {
+            results = this.projectMapper.findByWorkspaceIdAndIncludeProjectAll(projectCondition);
+        }
+        return results;
     }
 
     //  �쁽�옱 �젒洹쇳븳 �뾽臾닿났媛꾩뿉�꽌 李몄뿬�븯怨� �엳�뒗 �봽濡쒖젥�듃瑜� 議고쉶�븳�떎. - �긽�떒 �봽濡쒖젥�듃 紐⑸줉�뿉�꽌 �궗�슜

--
Gitblit v1.8.0