From d438f9c81cffd2e2cbec48150b43a5a89c9ab749 Mon Sep 17 00:00:00 2001
From: 이민희 <mhlee@maprex.co.kr>
Date: 수, 16 2월 2022 15:56:56 +0900
Subject: [PATCH] - 하위이슈 직접 생성 시 프로젝트 변경 못하도록 수정 - 연관이슈 직접 생성 시 프로젝트 변경 할 경우 이슈타입도 변경 되도록 수정

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

diff --git a/src/main/java/kr/wisestone/owl/service/impl/WorkflowDepartmentServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/WorkflowDepartmentServiceImpl.java
index e820d25..756b7c9 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/WorkflowDepartmentServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/WorkflowDepartmentServiceImpl.java
@@ -43,6 +43,12 @@
     @Autowired
     private DepartmentService departmentService;
 
+    @Autowired
+    private IssueTypeService issueTypeService;
+
+    @Autowired
+    private ProjectRoleService projectRoleService;
+
     @Override
     protected JpaRepository<WorkflowDepartment, Long> getRepository() {
         return workflowDepartmentRepository;
@@ -152,9 +158,31 @@
                 workflowDepartment.setDepartment(department);
 
                 workflowDepartmentList.add(workflowDepartment);
+
+                //  蹂�寃쏀븳 �썙�겕�뵆濡쒖슦�쓽 �떞�떦遺��꽌瑜� �씠�뒋�쑀�삎怨� �뿰寃곕맂 �봽濡쒖젥�듃�쓽 �떞�떦遺��꽌�뿉�룄 �꽭�똿
+                this.setDepartmentOfProject(workflow, department);
              }
         }
         this.workflowDepartmentRepository.saveAll(workflowDepartmentList);
+
+    }
+
+    /**
+     * �썙�겕�뵆濡쒖슦�쓽 �떞�떦遺��꽌瑜� �씠�뒋�쑀�삎怨� �뿰寃곕맂 �봽濡쒖젥�듃�쓽 �떞�떦遺��꽌�뿉�룄 �꽭�똿
+     * @param workflow Workflow
+     * @param department Department
+     */
+    private void setDepartmentOfProject(Workflow workflow, Department department) {
+        List<IssueType> issueTypeList = this.issueTypeService.findByWorkflowId(workflow.getId());
+        if (issueTypeList != null && issueTypeList.size() > 0) {
+            for (IssueType issueType : issueTypeList) {
+                if (issueType.getProject() != null) {
+                    ProjectRole projectRole = this.projectRoleService.findByProjectIdAndRoleType(issueType.getProject().getId(), ProjectRole.TYPE_DEFAULT);
+                    //  �봽濡쒖젥�듃 �떞�떦遺��꽌濡� 異붽�
+                    projectRole.addDepartment(department);
+                }
+            }
+        }
     }
 
     @Override

--
Gitblit v1.8.0