From a9277be576a7b76de9bfbaf5e83cd6d6407dbd98 Mon Sep 17 00:00:00 2001 From: 이민희 <mhlee@maprex.co.kr> Date: 수, 17 11월 2021 11:14:57 +0900 Subject: [PATCH] Merge branch 'master' of http://192.168.0.25:9001/r/owl-kisa --- src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java | 65 +++++++++++++++++++++++++++----- 1 files changed, 54 insertions(+), 11 deletions(-) diff --git a/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java b/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java index 763d552..301b14b 100644 --- a/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java +++ b/src/main/java/kr/wisestone/owl/service/impl/DepartmentServiceImpl.java @@ -1,12 +1,18 @@ package kr.wisestone.owl.service.impl; import kr.wisestone.owl.domain.Department; +import kr.wisestone.owl.domain.UserDepartment; +import kr.wisestone.owl.domain.UserLevel; import kr.wisestone.owl.mapper.DepartmentMapper; +import kr.wisestone.owl.service.UserDepartmentService; import kr.wisestone.owl.service.UserService; import kr.wisestone.owl.web.condition.DepartmentCondition; import kr.wisestone.owl.web.condition.UserCondition; import kr.wisestone.owl.web.form.DepartmentForm; import kr.wisestone.owl.web.form.UserDepartmentForm; +import org.jsoup.Jsoup; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.ui.Model; import com.google.common.collect.Lists; import kr.wisestone.owl.common.ExcelConditionCheck; @@ -33,6 +39,8 @@ @Service public class DepartmentServiceImpl extends AbstractServiceImpl<Department, Long, JpaRepository<Department, Long>> implements DepartmentService { + private static final Logger log = LoggerFactory.getLogger(IssueServiceImpl.class); + @Autowired private DepartmentRepository departmentRepository; @@ -40,7 +48,10 @@ private DepartmentMapper departmentMapper; @Autowired - private UserService userService; + private DepartmentService departmentService; + + @Autowired + private UserDepartmentService userDepartmentService; @Autowired private WorkspaceService workspaceService; @@ -106,9 +117,14 @@ } for (Long id : departmentForm.getRemoveIds()) { - this.departmentRepository.deleteById(id); - this.departmentRepository.flush(); + if (!this.departmentService.countInDepartment(id)) { + this.departmentRepository.deleteById(id); + } else { + throw new OwlRuntimeException( + this.messageAccessor.getMessage(MsgConstants.DEPARTMENT_ALREADY_IN_USE)); + } } + this.departmentRepository.flush(); } @@ -140,11 +156,44 @@ excelInfo.addAttrInfos(new ExportExcelAttrVo("departmentDescription", this.messageAccessor.message("department.departmentDescription"), 20, ExportExcelAttrVo.ALIGN_CENTER)); excelInfo.addAttrInfos(new ExportExcelAttrVo("departmentCount", this.messageAccessor.message("department.departmentCount"), 3, ExportExcelAttrVo.ALIGN_CENTER)); - excelInfo.setDatas(departmentVos); + // DepartmentVos �뜲�씠�꽣瑜� �뿊���뿉�꽌 �몴�떆�븷 �닔 �엳�뒗 �뜲�씠�꽣濡� 蹂�寃쏀븳�떎. + List<Map<String, Object>> convertExcelViewToDepartmentMaps = this.convertExcelViewToDepartmentVos(departmentVos); + + excelInfo.setDatas(convertExcelViewToDepartmentMaps); model.addAttribute(Constants.EXCEL, excelInfo); return new ModelAndView(this.excelView); + } + + @Override + public boolean countInDepartment(Long id) { + return this.departmentMapper.countInDepartment(id) > 0; + } + + // DepartmentVos �뜲�씠�꽣瑜� �뿊���뿉�꽌 �몴�떆�븷 �닔 �엳�뒗 �뜲�씠�꽣濡� 蹂�寃쏀븳�떎. + private List<Map<String, Object>> convertExcelViewToDepartmentVos(List<DepartmentVo> departmentVos) { + List<Map<String, Object>> results = Lists.newArrayList(); + + for (DepartmentVo departmentVo : departmentVos){ + try { + Map<String, Object> result = new HashMap<>(); + result.put("departmentName", departmentVo.getDepartmentName()); + result.put("departmentCount", departmentVo.getDepartmentCount()); + + String description= ""; + + if(departmentVo.getDepartmentDescription() != null){ + description = Jsoup.parse(departmentVo.getDepartmentDescription()).text(); //HTML �깭洹� �젣嫄� + description = description.replaceAll("\\<.*?>", ""); //怨듬갚 �젣嫄� + } + result.put("departmentDescription", description); + results.add(result); + } catch (Exception e) { + log.error("�뿊�� �떎�슫濡쒕뱶 �삤瑜� 諛쒖깮"); + } + } + return results; } // �궗�슜�옄 遺��꽌 ID濡� 議고쉶�븳�떎. @@ -165,12 +214,6 @@ return department; } - // �궘�젣 �븷 遺��꽌 �쑀��媛� �궗�슜�븯怨� �엳�뒗吏� �솗�씤 - @Override - public boolean department(Long Id) { - return this.departmentMapper.findBydepartmentId(Id) > 0; - } - @Override public List<Map<String, Object>> findByDepartmentIds(UserCondition condition) { return this.departmentMapper.findByDepartmentIds(condition); @@ -185,7 +228,7 @@ departmentVo.setByName(departmentVo.getDepartmentName()); departmentVos.add(departmentVo); } - + int totalPage = (int) Math.ceil((totalDepartmentsCount - 1) / pageable.getPageSize()) + 1; resJsonData.put(Constants.RES_KEY_CONTENTS, departmentVos); -- Gitblit v1.8.0