From a77cd2572fae653df15a202bdcd692a8e9c44a04 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期四, 05 九月 2024 21:43:19 +0800
Subject: [PATCH] 11
---
ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java | 83 +++++++++++++++++++++++++----------------
1 files changed, 50 insertions(+), 33 deletions(-)
diff --git a/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
index 5979651..f604e58 100644
--- a/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
+++ b/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
@@ -1,23 +1,18 @@
package com.ycl.service.depart.impl;
-import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ycl.dto.user.AdminDepartDTO;
+import com.ycl.dto.UmsDepartDto;
import com.ycl.entity.depart.UmsDepart;
-import com.ycl.entity.dict.DataDictionary;
-import com.ycl.entity.user.UmsDepartManage;
+import com.ycl.entity.user.UmsAdmin;
import com.ycl.enums.common.ResultCode;
import com.ycl.exception.ApiException;
import com.ycl.mapper.depart.UmsDepartMapper;
-import com.ycl.mapper.dict.DataDictionaryMapper;
import com.ycl.service.depart.IDepartManagerService;
import com.ycl.service.depart.UmsDepartService;
import com.ycl.service.user.UmsAdminService;
import com.ycl.service.user.UmsDepartManageService;
-import com.ycl.utils.common.PojoUtils;
import com.ycl.vo.depart.DepartVO;
import com.ycl.vo.depart.UmsDepartVO;
import org.apache.commons.lang3.StringUtils;
@@ -27,8 +22,8 @@
import javax.annotation.Resource;
import java.time.LocalDateTime;
-import java.util.ArrayList;
import java.util.List;
+import java.util.Objects;
import java.util.stream.Collectors;
/**
@@ -51,8 +46,6 @@
IDepartManagerService iDepartManagerService;
@Resource
UmsDepartService umsDepartService;
- @Resource
- DataDictionaryMapper dataDictionaryMapper;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -86,27 +79,20 @@
@Transactional(rollbackFor = Exception.class)
public void update(DepartVO.UpdateDepartVO updateDepartVO) {
UmsDepart sccgDepart = this.queryByName(updateDepartVO.getDepartName());
- if (null != sccgDepart && sccgDepart.getId() != updateDepartVO.getId()) {
+ if (null != sccgDepart && !sccgDepart.getId().equals(updateDepartVO.getId())) {
throw new ApiException(ResultCode.RECORD_ALREADY_EXISTS);
}
- UmsDepart depart = this.getById(updateDepartVO.getId());
+ UmsDepart depart = new UmsDepart();
BeanUtils.copyProperties(updateDepartVO, depart);
- List<Long> userIds = updateDepartVO.getUserIds();
- if (CollUtil.isNotEmpty(userIds)) {
- Long departId = updateDepartVO.getId();
- List<UmsDepartManage> departList = umsAdminDepartService.queryByDepartId(departId);
- if (CollUtil.isNotEmpty(departList)) {
- umsAdminDepartService.deletedByDepartId(departId);
- }
- userIds.forEach(e -> {
- UmsDepartManage adminDepart = new UmsDepartManage();
- adminDepart.setDepartId(departId);
- adminDepart.setUserId(e);
- umsAdminDepartService.save(adminDepart);
- });
- }
- if (sccgDepartMapper.updateById(depart) != 1) {
- throw new ApiException(ResultCode.RECORD_UPDATE_FAIL);
+ umsDepartService.updateById(depart);
+ if (updateDepartVO.getDepartManagerList().size() > 0) {
+ iDepartManagerService.deleteByDepartId(depart.getId());
+ updateDepartVO.getDepartManagerList()
+ .forEach(item -> {
+ item.setCreateTime(LocalDateTime.now());
+ item.setDepartId(depart.getId());
+ });
+ iDepartManagerService.saveBatch(updateDepartVO.getDepartManagerList());
}
}
@@ -126,10 +112,10 @@
// 2.缁勮鎴愮埗瀛愮殑鏍戝瀷缁撴瀯
// 2.1銆佹壘鍒版墍鏈夌殑涓�绾х綉鏍�:浣跨敤jdk8鐨剆tream娴佽繘琛岃繃婊�
- List<UmsDepart> collect = list.stream().filter(griddingEntity -> {
+ List<UmsDepart> collect = list.stream().filter(item ->
//鍒嗙被鐖秈d涓�0灏辫〃绀鸿缃戞牸涓� 涓�绾х綉鏍�
- return griddingEntity.getParentId() == 0;
- }).map(item -> {
+ item.getParentId() == 0
+ ).map(item -> {
// 鎵惧埌瀛愮綉鏍� set杩沜hildren灞炴�т腑
item.setChildren(getChildrens(item, list));
return item;
@@ -152,6 +138,29 @@
}
@Override
+ public List<UmsDepartDto> departExp() {
+ List<UmsDepart> umsDeparts = sccgDepartMapper.selectDepartList();
+ List<UmsDepartDto> res = umsDeparts
+ .stream()
+ .map(item -> {
+ UmsDepartDto umsDepartDto = new UmsDepartDto();
+ umsDepartDto.setId(item.getId());
+ umsDepartDto.setDepartTypeName(item.getDepartName());
+ String departType = sccgDepartMapper.getDepartType(item.getDepartType());
+ umsDepartDto.setDepartType(departType);
+ UmsDepart umsDepartFather = sccgDepartMapper.selectOne(new LambdaQueryWrapper<UmsDepart>().eq(UmsDepart::getId, item.getParentId()));
+ if (Objects.isNull(umsDepartFather)){
+ umsDepartDto.setParentDepartName("");
+ }else {
+ umsDepartDto.setParentDepartName(umsDepartFather.getDepartName());
+ }
+ umsDepartDto.setDepartDes(item.getDepartDes());
+ return umsDepartDto;
+ }).collect(Collectors.toList());
+ return res;
+ }
+
+ @Override
public void updateStatus(DepartVO.StatusDepartVO params) {
UmsDepart sccgDepart = this.loadDepartById(params.getId());
BeanUtils.copyProperties(params, sccgDepart);
@@ -160,6 +169,15 @@
}
}
+ @Override
+ public List<UmsAdmin> selectSurplusUser() {
+ return sccgDepartMapper.selectSurplusUser();
+ }
+
+ @Override
+ public List<UmsAdmin> selectSurplusUserAndExistUser(Long id) {
+ return sccgDepartMapper.selectSurplusUserAndExistUser(id);
+ }
/**
* 鍒╃敤閫掑綊灏嗘渶鍚庝竴绾х┖闆嗗悎鍙樹负null锛屽墠绔仈绾ч�夋嫨鍣ㄦ渶鍚庢墠涓嶄細鍑虹幇 鏆傛棤鏁版嵁鐨刡ug
@@ -202,5 +220,4 @@
UmsDepart sccgDepart = this.sccgDepartMapper.selectOne(queryWrapper);
return sccgDepart;
}
-
-}
+}
\ No newline at end of file
--
Gitblit v1.8.0