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/IssueDepartmentServiceImpl.java | 63 ++++++++++++++++++++++++++++--- 1 files changed, 57 insertions(+), 6 deletions(-) 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 5835a65..096b13c 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/IssueDepartmentServiceImpl.java @@ -1,16 +1,15 @@ package kr.wisestone.owl.service.impl; import com.google.common.collect.Lists; -import kr.wisestone.owl.domain.Issue; -import kr.wisestone.owl.domain.IssueDepartment; -import kr.wisestone.owl.domain.IssueUser; -import kr.wisestone.owl.domain.Workspace; +import kr.wisestone.owl.domain.*; 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; +import kr.wisestone.owl.vo.DepartmentVo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -28,6 +27,9 @@ private static final Logger log = LoggerFactory.getLogger(IssueDepartmentServiceImpl.class); @Autowired + private DepartmentService departmentService; + + @Autowired private IssueDepartmentRepository issueDepartmentRepository; @Autowired @@ -38,10 +40,37 @@ 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 public void modifyIssueDepartment(Issue issue, Workspace workspace, List<Long> departmentIds) { + User user = this.webAppUtil.getLoginUserObject(); + modifyIssueDepartment(issue, user, workspace, departmentIds); + } + + // �씠�뒋 �떞�떦遺��꽌瑜� 蹂�寃쏀븳�떎. + @Override + @Transactional + public void modifyIssueDepartment(Issue issue, User user, Workspace workspace, List<Long> departmentIds) { List<Long> oldDepartmentIds = Lists.newArrayList(); // �씠�쟾 �떞�떦 遺��꽌 @@ -69,8 +98,8 @@ issueAssigneeMap.put("departmentId", departmentId); //�떞�떦遺��꽌 issueAssigneeMap.put("issueId", issue.getId()); issueAssigneeMap.put("workspaceId", workspace.getId()); - issueAssigneeMap.put("registerId", this.webAppUtil.getLoginId()); - issueAssigneeMap.put("modifyId", this.webAppUtil.getLoginId()); + issueAssigneeMap.put("registerId", user.getId()); + issueAssigneeMap.put("modifyId", user.getId()); addIssueAssigneeMaps.add(issueAssigneeMap); } @@ -86,6 +115,28 @@ return this.issueDepartmentRepository.findByIssueId(issue.getId()); } + // �씠�뒋 �떞�떦遺��꽌 李얘린 + @Override + @Transactional + public List<IssueDepartment> findByDepartmentId(Long departmentId) { + return this.issueDepartmentRepository.findByDepartmentId(departmentId); + } + + /** + * �씠�뒋�쓽 �떞�떦遺��꽌�뿉 �냽�빐�엳�뒗吏� 議고쉶 + * @param departmentId Long + * @return useYn + */ + @Override + public boolean usingDepartment(Long departmentId) { + boolean useYn = false; + List<IssueDepartment> issueDepartments = this.issueDepartmentRepository.findByDepartmentId(departmentId); + if (issueDepartments != null && issueDepartments.size() > 0) { + useYn = true; + } + return useYn; + } + @Override @Transactional public void insertIssueDepartment(List<Map<String, Long>> issueAssigneeMaps) { -- Gitblit v1.8.0