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
相关推荐
用户120487221614 小时前
Linux驱动编译与加载SamDeepThinking9 小时前
裁掉那个差程序员后,给你看团队里高手的代码:这个习惯,希望你有朕瞧着你甚好10 小时前
技术雷达 & Java 集成评估报告 — Apache Tika 3.3.1用户8055336980311 小时前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的用户8055336980311 小时前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设MacroZheng11 小时前
短短几天,暴涨2.8万Star!又一款编程神器开源!SamDeepThinking11 小时前
函数式编程:用BiFunction消除多类型分支的代码重复七歌杜金房1 天前
我终于又有了自己的 Linux 电脑Flittly1 天前
【AgentScope Java新手村系列】(16)从RAG到多路检索小兔崽子去哪了1 天前
Java 生成二维码解决方案