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
相关推荐
爱丶狸4 小时前
Grafana_Zabbix_ImageRenderer_部署与前端操作手册k4m7v2pz5 小时前
把 Bevy 0.14 游戏移植到 R36S 掌机:一场与“无窗口系统“的搏斗木子欢儿6 小时前
Intel 架构的 MacBook Pro 运行 Linux 发热量高解决都叫我大帅哥7 小时前
Java JJWT 完全指南:从入门到生产级实践前端开发张小七8 小时前
Java 学习笔记 · 第一课:基础语法与核心概念ThsPool9 小时前
【ENVI二次开发学习整理 04】ENVI功能扩展与二次开发赤壁小虾9 小时前
【渲染流水线】[逐片元阶段]-[透明度测试]以UnityURP为例会编程的土豆9 小时前
Go 模板初识青山木10 小时前
Hot 100 --- 搜索插入位置Jul1en_10 小时前
【Claude Code Compact】源码级别的学习上下文压缩