From c4c1c6cf89781eb06dc02b677a8954fdb2666c43 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期三, 16 七月 2025 22:39:06 +0800
Subject: [PATCH] 添加时间筛选

---
 ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java |  134 ++++++++++++++++++++------------------------
 1 files changed, 62 insertions(+), 72 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 9865d23..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)
@@ -63,6 +56,7 @@
         }
         UmsDepart depart = new UmsDepart();
         BeanUtils.copyProperties(addDepartVO, depart);
+        depart.setStatus(Short.valueOf("1"));
         umsDepartService.save(depart);
         addDepartVO.getDepartManagerList()
                 .forEach(item -> {
@@ -85,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());
         }
     }
 
@@ -121,14 +108,14 @@
     @Override
     public List<UmsDepart> tree() {
         // 1.鏌ュ嚭鎵�鏈夌綉鏍�
-        List<UmsDepart> list = list();
+        List<UmsDepart> list = baseMapper.selectDepartList();
 
         // 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;
@@ -138,44 +125,39 @@
     }
 
     @Override
-    public IPage<UmsDepartVO> pageDepart(DepartVO.PageDepartVO params) {
-        Page<UmsDepart> page = new Page<>(params.getCurrent(), params.getPageSize());
-        LambdaQueryWrapper<UmsDepart> query = new LambdaQueryWrapper<>();
-        if (StringUtils.isNotBlank(params.getDepartName())) {
-            query.like(UmsDepart::getDepartName, params.getDepartName());
-        }
-        if (PojoUtils.Vo.isUsefulSearchParam(params.getDepartType())) {
-            query.like(UmsDepart::getDepartType, params.getDepartType());
-        }
-        query.orderByDesc(UmsDepart::getCreateTime);
-        Page<UmsDepart> departPage = sccgDepartMapper.selectPage(page, query);
-        Page<UmsDepartVO> umsDepartVOPage = new Page<>();
-        BeanUtils.copyProperties(departPage, umsDepartVOPage);
-        List<UmsDepartVO> umsDepartVOList = new ArrayList<>();
-        //璐熻矗浜�
-        if (CollUtil.isNotEmpty(departPage.getRecords())) {
-            for (UmsDepart record : departPage.getRecords()) {
-                UmsDepartVO umsDepartVO = new UmsDepartVO();
-                BeanUtils.copyProperties(record, umsDepartVO);
-                umsDepartVO.setDepartType(dataDictionaryMapper
-                        .selectOne(new LambdaQueryWrapper<DataDictionary>()
-                                .eq(DataDictionary::getId, record.getDepartType()))
-                        .getName());
-                umsDepartVOList.add(umsDepartVO);
-                List<UmsDepartManage> umsAdminDeparts = umsAdminDepartService.queryByDepartId(record.getId());
-                if (CollUtil.isNotEmpty(umsAdminDeparts)) {
-                    List<AdminDepartDTO.UserInfoDTO> userInfoDTOS = umsAdminDeparts.stream().map(a -> {
-                        AdminDepartDTO.UserInfoDTO userInfoDTO = new AdminDepartDTO.UserInfoDTO();
-                        userInfoDTO.setUserId(a.getUserId());
-                        userInfoDTO.setUsername(umsAdminService.getById(a.getUserId()).getUsername());
-                        return userInfoDTO;
-                    }).collect(Collectors.toList());
-                    record.setUserInfoDTOS(userInfoDTOS);
-                }
-            }
-        }
-        umsDepartVOPage.setRecords(umsDepartVOList);
-        return umsDepartVOPage;
+    public IPage<UmsDepartVO> pageDepart(String departName, IPage<UmsDepartVO> page) {
+
+        List<UmsDepartVO> ls = sccgDepartMapper.selectPageByName(departName, page.offset(), page.getSize());
+        LambdaQueryWrapper<UmsDepart> queryWrapper = new LambdaQueryWrapper<UmsDepart>()
+                .like(StringUtils.isNotEmpty(departName), UmsDepart::getDepartName, departName);
+        long total = this.count(queryWrapper);
+
+        page.setRecords(ls);
+        page.setTotal(total);
+        return page;
+    }
+
+    @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
@@ -187,6 +169,15 @@
         }
     }
 
+    @Override
+    public List<UmsAdmin> selectSurplusUser() {
+        return sccgDepartMapper.selectSurplusUser();
+    }
+
+    @Override
+    public List<UmsAdmin> selectSurplusUserAndExistUser(Long id) {
+        return sccgDepartMapper.selectSurplusUserAndExistUser(id);
+    }
 
     /**
      * 鍒╃敤閫掑綊灏嗘渶鍚庝竴绾х┖闆嗗悎鍙樹负null锛屽墠绔仈绾ч�夋嫨鍣ㄦ渶鍚庢墠涓嶄細鍑虹幇 鏆傛棤鏁版嵁鐨刡ug
@@ -229,5 +220,4 @@
         UmsDepart sccgDepart = this.sccgDepartMapper.selectOne(queryWrapper);
         return sccgDepart;
     }
-
-}
+}
\ No newline at end of file

--
Gitblit v1.8.0