private List<Long> getJuniorDeptIds(R<List<SysUser>> userList, List<Long> xiajiId) {
List<Long> userIds = new ArrayList<>();
// 创建一个临时列表,用于存储当前层级的下级部门id
List<Long> currentLevelDeptIds = new ArrayList<>(xiajiId);
// 直到没有下级部门为止
while (!currentLevelDeptIds.isEmpty()) {
List<Long> nextLevelDeptIds = new ArrayList<>();
// 遍历当前层级的下级部门id
for (Long deptId : currentLevelDeptIds) {
for (SysUser datum : userList.getData()) {
if (Objects.equals(datum.getDeptId(), deptId)) {
userIds.add(datum.getUserId());
// 将当前部门的所有下级部门id添加到下一层级列表中
nextLevelDeptIds.add(datum.getUserId());
}
}
}
// 更新当前层级的下级部门id为下一层级的部门id
currentLevelDeptIds = nextLevelDeptIds;
}
return userIds;
}
java通过用户id寻找下级
youmdt2023-09-11 10:32
相关推荐
重整旗鼓~12 小时前
3.会话功能-AiServices工具类LCG元13 小时前
Linux 文本处理三剑客(grep, sed, awk)核心用法与实战RisunJan13 小时前
Linux命令-exportfs命令(管理NFS服务器上共享文件系统)代码不停13 小时前
Java单链表和哈希表题目练习动感小麦兜13 小时前
服务器搭建Dxxyyyy13 小时前
零基础学JAVA--Day37(坦克大战1.0)OranTech13 小时前
第28节课-夕夕超市收银系统(下)-笔记IDOlaoluo13 小时前
jakarta-tomcat-connectors-jk2-src.tar.gz 安装教程(详细步骤及附安装包)SheepHappy13 小时前
MyBatis-Plus 源码阅读(三)条件构造器原理深度剖析zhaomy202513 小时前
从ThreadLocal到ScopedValue:Java上下文管理的架构演进与实战指南