From e897dfa023634f08d47e4d0ba2bcf19a05b9006e Mon Sep 17 00:00:00 2001 From: ZQN <364596817@qq.com> Date: 星期三, 26 六月 2024 20:17:52 +0800 Subject: [PATCH] 用户列表去除企业 --- project-system/src/main/java/com/project/system/service/impl/SysDeptServiceImpl.java | 92 ++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 80 insertions(+), 12 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 c6b7d36..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,11 +1,8 @@ package com.project.system.service.impl; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.stream.Collectors; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; +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; @@ -20,6 +17,14 @@ import com.project.system.mapper.SysDeptMapper; import com.project.system.mapper.SysRoleMapper; import com.project.system.service.ISysDeptService; +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; /** * 閮ㄩ棬绠$悊 鏈嶅姟瀹炵幇 @@ -27,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; /** * 鏌ヨ閮ㄩ棬绠$悊鏁版嵁 @@ -294,6 +297,45 @@ } /** + * 鏍规嵁鐧诲綍浜洪儴闂ㄨ幏鍙栧鎵规満鏋刬d + * @param deptId 鐧诲綍浜洪儴闂╥d + * @return 瀹℃壒鏈烘瀯id + */ + @Override + public Long getCheckDeptIdByLoginDeptId(Long deptId) + { + SysDept loginDept = selectDeptById(deptId); + if (loginDept.getParentId()==100){ + return loginDept.getDeptId(); + } else { + return getCheckDeptIdByLoginDeptId(loginDept.getParentId()); + } + } + + /** + * 鏍规嵁鐧诲綍浜篿d鑾峰彇绠¤緰鏈烘瀯ids + * @param userId 鐧诲綍浜篿d + * @return 瀹℃壒鏈烘瀯ids + */ + @Override + public List<Long> getApplyDeptIdsByLoginUserId(Long userId) + { + 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); + } + + /** * 閫掑綊鍒楄〃 */ private void recursionFn(List<SysDept> list, SysDept t) @@ -335,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