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 | 138 +++++++++++++++++++++++++-------------------- 1 files changed, 77 insertions(+), 61 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 0d55321..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,28 +1,29 @@ 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.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.service.depart.IDepartManagerService; import com.ycl.service.depart.UmsDepartService; -import com.ycl.service.user.UmsDepartManageService; import com.ycl.service.user.UmsAdminService; -import com.ycl.utils.common.PojoUtils; +import com.ycl.service.user.UmsDepartManageService; import com.ycl.vo.depart.DepartVO; +import com.ycl.vo.depart.UmsDepartVO; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.time.LocalDateTime; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -41,6 +42,10 @@ private UmsDepartManageService umsAdminDepartService; @Resource private UmsAdminService umsAdminService; + @Resource + IDepartManagerService iDepartManagerService; + @Resource + UmsDepartService umsDepartService; @Override @Transactional(rollbackFor = Exception.class) @@ -51,9 +56,14 @@ } UmsDepart depart = new UmsDepart(); BeanUtils.copyProperties(addDepartVO, depart); - if (sccgDepartMapper.insert(depart) != 1) { - throw new ApiException(ResultCode.RECORD_SAVE_FAIL); - } + depart.setStatus(Short.valueOf("1")); + umsDepartService.save(depart); + addDepartVO.getDepartManagerList() + .forEach(item -> { + item.setCreateTime(LocalDateTime.now()); + item.setDepartId(depart.getId()); + }); + iDepartManagerService.saveBatch(addDepartVO.getDepartManagerList()); } @Override @@ -69,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()); } } @@ -105,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; @@ -122,34 +125,39 @@ } @Override - public IPage<UmsDepart> 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); - List<UmsDepart> records = departPage.getRecords(); - //璐熻矗浜� - if (CollUtil.isNotEmpty(records)) { - for (UmsDepart record : records) { - 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); - } - } - } - return departPage; + 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 @@ -161,6 +169,15 @@ } } + @Override + public List<UmsAdmin> selectSurplusUser() { + return sccgDepartMapper.selectSurplusUser(); + } + + @Override + public List<UmsAdmin> selectSurplusUserAndExistUser(Long id) { + return sccgDepartMapper.selectSurplusUserAndExistUser(id); + } /** * 鍒╃敤閫掑綊灏嗘渶鍚庝竴绾х┖闆嗗悎鍙樹负null锛屽墠绔仈绾ч�夋嫨鍣ㄦ渶鍚庢墠涓嶄細鍑虹幇 鏆傛棤鏁版嵁鐨刡ug @@ -203,5 +220,4 @@ UmsDepart sccgDepart = this.sccgDepartMapper.selectOne(queryWrapper); return sccgDepart; } - -} +} \ No newline at end of file -- Gitblit v1.8.0