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
相关推荐
倔强的石头106几秒前
kingbase备份与恢复实战(六)—— 备份自动化与保留策略:Windows任务计划+日志追溯bjzhang752 分钟前
Linux曝出“核弹级”漏洞CVE-2026-31431:攻击者可瞬间提权1104.北光c°3 分钟前
Leetcode215 三种写法完成数组中的第K个最大元素 【hot100算法个人笔记】【java写法】枳实-叶9 分钟前
【Linux驱动开发】第三天:上下文核心概念全解 —— 进程/中断上下文+切换开销+TLB刷新原理feng_you_ying_li13 分钟前
linux之FILE和文件系统(磁盘的介绍)青山师15 分钟前
Java注解深度解析:从元数据机制到框架开发基石FL162386312917 分钟前
基于yolo26实现的免安装环境windows版一键训练工具AI人工智能+电脑小能手21 分钟前
【大白话说Java面试题】【Java基础篇】第35题:怎样声明一个类不会被继承?什么场景下会用升鲜宝供应链及收银系统源代码服务27 分钟前
升鲜宝云仓供应链管理系统 数据库数据字典设计 (一)---升鲜宝生鲜配送供应链管理系统大厂数码评测员34 分钟前
2026 年家庭菜谱记录工具怎么选:从功能边界和小程序代码实现看免费与付费差异