From 55fefdfac9a281cc57a1b3bad1fd061eec4b066d Mon Sep 17 00:00:00 2001 From: ZQN <364596817@qq.com> Date: 星期四, 27 六月 2024 09:52:05 +0800 Subject: [PATCH] 统计状态过滤 --- project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java | 54 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 47 insertions(+), 7 deletions(-) diff --git a/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java b/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java index 8d17372..6791398 100644 --- a/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java +++ b/project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java @@ -1,5 +1,8 @@ package com.project.system.service.impl; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.project.common.annotation.DataScope; import com.project.common.constant.UserConstants; import com.project.common.core.domain.TreeSelect; @@ -14,10 +17,11 @@ import com.project.system.mapper.SysDeptMapper; import com.project.system.mapper.SysRoleMapper; import com.project.system.service.ISysDeptService; -import org.springframework.beans.factory.annotation.Autowired; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.ArrayList; +import java.util.Collections; import java.util.Iterator; import java.util.List; import java.util.stream.Collectors; @@ -28,13 +32,11 @@ * @author project */ @Service -public class SysDeptServiceImpl implements ISysDeptService +@RequiredArgsConstructor +public class SysDeptServiceImpl extends ServiceImpl<SysDeptMapper, SysDept> implements ISysDeptService { - @Autowired - private SysDeptMapper deptMapper; - - @Autowired - private SysRoleMapper roleMapper; + private final SysDeptMapper deptMapper; + private final SysRoleMapper roleMapper; /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 @@ -321,6 +323,18 @@ return deptMapper.getApplyDeptIdsByLoginUserId(userId); } + @Override + public String getDeptAllName(Long deptId) + { + List<String> names = new ArrayList<>(); + names = getAncestorsNames(deptId, names); + if (CollectionUtil.isEmpty(names)){ + return ""; + } + Collections.reverse(names); + return StrUtil.join("-", names); + } + /** * 閫掑綊鍒楄〃 */ @@ -363,4 +377,30 @@ { return getChildList(list, t).size() > 0; } + + + /** + * 鑾峰彇绁栫睄names鍒楄〃 + * + * @param deptId 褰撳墠閮ㄩ棬id + * @param names 绁栫睄id鍒楄〃 + * @return names鍒楄〃 + */ + public List<String> getAncestorsNames(long deptId, List<String> names) { + SysDept dept = deptMapper.selectDeptById(deptId); + if (dept == null) { + return names; + } + if (deptId == 100) { + names.add(dept.getDeptName()); + return names; + } + if (dept.getParentId() != null && dept.getParentId() == 100) { + names.add(dept.getDeptName()); + return names; + } else { + names.add(dept.getDeptName()); + return getAncestorsNames(dept.getParentId(), names); + } + } } -- Gitblit v1.9.1