From 25e69beeac0e3939ba1873806710a18a5ec3091e Mon Sep 17 00:00:00 2001
From: 박지현 <jhpark@maprex.co.kr>
Date: 목, 03 3월 2022 17:49:56 +0900
Subject: [PATCH] Merge branch 'master' of http://maprex.iptime.org:9001/r/owl-kisa

---
 src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java           |   15 +++------------
 src/main/java/kr/wisestone/owl/service/IssueDepartmentService.java          |    2 ++
 src/main/java/kr/wisestone/owl/domain/IssueDepartment.java                  |    3 ++-
 src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java |   23 +++++++++++++++++++++++
 4 files changed, 30 insertions(+), 13 deletions(-)

diff --git a/src/main/java/kr/wisestone/owl/domain/IssueDepartment.java b/src/main/java/kr/wisestone/owl/domain/IssueDepartment.java
index 0503ebd..92dbc96 100644
--- a/src/main/java/kr/wisestone/owl/domain/IssueDepartment.java
+++ b/src/main/java/kr/wisestone/owl/domain/IssueDepartment.java
@@ -26,7 +26,8 @@
     public IssueDepartment() {
     }
 
-    public IssueDepartment(Issue issue, Department department) {
+    public IssueDepartment(Workspace workspace, Issue issue, Department department) {
+        this.workspace = workspace;
         this.issue = issue;
         this.department = department;
     }
diff --git a/src/main/java/kr/wisestone/owl/service/IssueDepartmentService.java b/src/main/java/kr/wisestone/owl/service/IssueDepartmentService.java
index 6fd4f5f..26b7fec 100644
--- a/src/main/java/kr/wisestone/owl/service/IssueDepartmentService.java
+++ b/src/main/java/kr/wisestone/owl/service/IssueDepartmentService.java
@@ -26,4 +26,6 @@
     List<IssueDepartment> findByDepartmentId(Long departmentId);
 
     boolean usingDepartment(Long departmentId);
+
+    void add(List<Long> departmentsIds, Workspace workspace, Issue issue);
 }
diff --git a/src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java
index d70d66b..096b13c 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java
@@ -5,6 +5,7 @@
 import kr.wisestone.owl.mapper.IssueDepartmentMapper;
 import kr.wisestone.owl.mapper.IssueUserMapper;
 import kr.wisestone.owl.repository.IssueDepartmentRepository;
+import kr.wisestone.owl.service.DepartmentService;
 import kr.wisestone.owl.service.IssueDepartmentService;
 import kr.wisestone.owl.util.CommonUtil;
 import kr.wisestone.owl.util.MapUtil;
@@ -26,6 +27,9 @@
     private static final Logger log = LoggerFactory.getLogger(IssueDepartmentServiceImpl.class);
 
     @Autowired
+    private DepartmentService departmentService;
+
+    @Autowired
     private IssueDepartmentRepository issueDepartmentRepository;
 
     @Autowired
@@ -36,6 +40,25 @@
         return this.issueDepartmentRepository;
     }
 
+    /**
+     * �씠�뒋�쓽 �떞�떦遺��꽌 異붽�
+     * @param departmentsIds List<Long>
+     * @param workspace Workspace
+     * @param issue Issue
+     */
+    @Override
+    @Transactional
+    public void add(List<Long> departmentsIds, Workspace workspace, Issue issue) {
+        List<IssueDepartment> issueDepartments = Lists.newArrayList();
+
+        for (Long departmentId : departmentsIds) {
+            Department department = this.departmentService.getDepartment(departmentId);
+            issueDepartments.add(new IssueDepartment(workspace, issue, department));
+        }
+        this.issueDepartmentRepository.saveAll(issueDepartments);
+
+    }
+
     //  �씠�뒋 �떞�떦遺��꽌瑜� 蹂�寃쏀븳�떎.
     @Override
     @Transactional
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 97b799f..e5c057b 100644
--- a/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
+++ b/src/main/java/kr/wisestone/owl/service/impl/IssueServiceImpl.java
@@ -3208,23 +3208,14 @@
                 }
 
                 saveIssueForm.setId(issue.getId());
-
-                IssueDepartment issueDepartment = new IssueDepartment();
-                issueDepartment.setIssue(issue);
-                issueDepartment.setWorkspace(workspace);
-
-
+                
+                //  �썙�겕�뵆濡쒖슦 ��湲� �긽�깭�쓽 遺��꽌 異붽�
                 List<Long> departmentsIds = this.workflowDepartmentService.findFirstDepartmentIds(workflow);
                 if (departmentsIds != null && departmentsIds.size() > 0) {
-                    for (Long departmentId : departmentsIds) {
-                        issueDepartment.setDepartment(this.departmentService.getDepartment(departmentId));
-                    }
-                    issue.addIssueDepartment(issueDepartment);
+                    this.issueDepartmentService.add(departmentsIds, workspace, issue);
                 }
-
                 this.setIssuePartners(saveIssueForm, issue);
             }
-
 
             //  0.416 - 0.439
 

--
Gitblit v1.8.0