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
相关推荐
Better Bench22 分钟前
WSL2 Ubuntu 中 Claude CLI “command not found” 故障排查与修复IKUN家族37 分钟前
Spring MVC(一)实心儿儿1 小时前
Linux —— 进程间关系和守护进程老马识途2.02 小时前
关于跨域问题的总结Dawn-bit2 小时前
Linux磁盘管理详解都叫我大帅哥3 小时前
Java日期时间三十年战争:从Date考古到LocalDateTime革命,以及数据库与前端的那点事儿Muscleheng3 小时前
SpringBoot 集成 DeepSeek 实现 RAG 文档问答RisunJan3 小时前
Linux命令-sftp(SSH 文件传输协议客户端)2501_936415693 小时前
可变参数&综合练习&斗地主游戏极客先躯4 小时前
高级java每日一道面试题-2026年05月03日-实战篇[Docker]-如何实现容器化环境的数据加密?