From c0cd030d0fde1df50632b05260b8707d57a47896 Mon Sep 17 00:00:00 2001 From: RuoYi <yzz_ivy@163.com> Date: 星期五, 13 三月 2020 21:41:57 +0800 Subject: [PATCH] 批量替换表前缀修改 --- ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java | 17 +++++++++++------ 1 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java index f4e4dec..338e2a6 100644 --- a/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java +++ b/ruoyi/src/main/java/com/ruoyi/project/system/service/impl/SysDeptServiceImpl.java @@ -49,14 +49,19 @@ public List<SysDept> buildDeptTree(List<SysDept> depts) { List<SysDept> returnList = new ArrayList<SysDept>(); + List<Long> tempList = new ArrayList<Long>(); + for (SysDept dept : depts) + { + tempList.add(dept.getDeptId()); + } for (Iterator<SysDept> iterator = depts.iterator(); iterator.hasNext();) { - SysDept t = (SysDept) iterator.next(); - // 根据传入的某个父节点ID,遍历该父节点的所有子节点 - if (t.getParentId() == 0) + SysDept dept = (SysDept) iterator.next(); + // 如果是顶级节点, 遍历该父节点的所有子节点 + if (!tempList.contains(dept.getParentId())) { - recursionFn(depts, t); - returnList.add(t); + recursionFn(depts, dept); + returnList.add(dept); } } if (returnList.isEmpty()) @@ -271,7 +276,7 @@ while (it.hasNext()) { SysDept n = (SysDept) it.next(); - if (n.getParentId().longValue() == t.getDeptId().longValue()) + if (StringUtils.isNotNull(n.getParentId()) && n.getParentId().longValue() == t.getDeptId().longValue()) { tlist.add(n); } -- Gitblit v1.9.2