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
相关推荐
leikooo4 小时前
用餐厅和盘子理解栈和堆搬砖的小码农_Sky4 小时前
AI Agent:如何处理Claude Code 最近版本(2026年更新)引入的模型上下文限制Ivanqhz5 小时前
激活函数在 Transformer 中的作用及各种变体简述kakakahahahaha5 小时前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南沙漠之主5 小时前
C++编程教学设计资料:从入门到实战的完整课程方案FPGA小徐5 小时前
PA1 基础设施(2)深度解析:NEMU 中 ITRACE、MTRACE、FTRACE、IRINGBUF、ETRACE、DIFFTEST 全解析YOLO数据集集合6 小时前
EvoAgent:面向PR研发治理的自进化Multi-Agent Harness系统知行EDI6 小时前
知行之桥 MaBang 端口使用指南——Create Order 订单创建篇笑鸿的学习笔记6 小时前
C++笔记之大块顺序写打工仔折腾 AI6 小时前
从 Demo 到生产级 Agent:8 个关键设计机制与 Python 实现拆解