Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
finance-manage
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
finance-oa
finance-manage
Commits
068c3e6f
Commit
068c3e6f
authored
Aug 28, 2020
by
RuoYi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化递归子节点
parent
dd664008
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
19 deletions
+12
-19
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
...ava/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
+1
-7
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
...ava/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
+11
-12
No files found.
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysDeptServiceImpl.java
View file @
068c3e6f
...
@@ -267,13 +267,7 @@ public class SysDeptServiceImpl implements ISysDeptService
...
@@ -267,13 +267,7 @@ public class SysDeptServiceImpl implements ISysDeptService
{
{
if
(
hasChild
(
list
,
tChild
))
if
(
hasChild
(
list
,
tChild
))
{
{
// 判断是否有子节点
recursionFn
(
list
,
tChild
);
Iterator
<
SysDept
>
it
=
childList
.
iterator
();
while
(
it
.
hasNext
())
{
SysDept
n
=
(
SysDept
)
it
.
next
();
recursionFn
(
list
,
n
);
}
}
}
}
}
}
}
...
...
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
View file @
068c3e6f
...
@@ -178,14 +178,19 @@ public class SysMenuServiceImpl implements ISysMenuService
...
@@ -178,14 +178,19 @@ public class SysMenuServiceImpl implements ISysMenuService
public
List
<
SysMenu
>
buildMenuTree
(
List
<
SysMenu
>
menus
)
public
List
<
SysMenu
>
buildMenuTree
(
List
<
SysMenu
>
menus
)
{
{
List
<
SysMenu
>
returnList
=
new
ArrayList
<
SysMenu
>();
List
<
SysMenu
>
returnList
=
new
ArrayList
<
SysMenu
>();
List
<
Long
>
tempList
=
new
ArrayList
<
Long
>();
for
(
SysMenu
dept
:
menus
)
{
tempList
.
add
(
dept
.
getMenuId
());
}
for
(
Iterator
<
SysMenu
>
iterator
=
menus
.
iterator
();
iterator
.
hasNext
();)
for
(
Iterator
<
SysMenu
>
iterator
=
menus
.
iterator
();
iterator
.
hasNext
();)
{
{
SysMenu
t
=
(
SysMenu
)
iterator
.
next
();
SysMenu
menu
=
(
SysMenu
)
iterator
.
next
();
//
根据传入的某个父节点ID,
遍历该父节点的所有子节点
//
如果是顶级节点,
遍历该父节点的所有子节点
if
(
t
.
getParentId
()
==
0
)
if
(
!
tempList
.
contains
(
menu
.
getParentId
())
)
{
{
recursionFn
(
menus
,
t
);
recursionFn
(
menus
,
menu
);
returnList
.
add
(
t
);
returnList
.
add
(
menu
);
}
}
}
}
if
(
returnList
.
isEmpty
())
if
(
returnList
.
isEmpty
())
...
@@ -406,13 +411,7 @@ public class SysMenuServiceImpl implements ISysMenuService
...
@@ -406,13 +411,7 @@ public class SysMenuServiceImpl implements ISysMenuService
{
{
if
(
hasChild
(
list
,
tChild
))
if
(
hasChild
(
list
,
tChild
))
{
{
// 判断是否有子节点
recursionFn
(
list
,
tChild
);
Iterator
<
SysMenu
>
it
=
childList
.
iterator
();
while
(
it
.
hasNext
())
{
SysMenu
n
=
(
SysMenu
)
it
.
next
();
recursionFn
(
list
,
n
);
}
}
}
}
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment