Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
aserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
15所TongWeb
aserver
Commits
3b55a0be
Commit
3b55a0be
authored
Dec 11, 2020
by
李德才
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
一级菜单为空造成程序空指针
parent
d1c486e7
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
38 additions
and
30 deletions
+38
-30
MenuController.java
...n/java/com/archser/aserver/controller/MenuController.java
+38
-30
No files found.
src/main/java/com/archser/aserver/controller/MenuController.java
View file @
3b55a0be
...
@@ -180,44 +180,52 @@ public class MenuController extends Controller {
...
@@ -180,44 +180,52 @@ public class MenuController extends Controller {
}
}
public
void
getMenuGroup
()
{
public
void
getMenuGroup
()
{
String
userName
=
this
.
getAttrForStr
(
"username"
);
try
{
Integer
userId
=
InfoUser
.
getUser
(
userName
).
getId
(
);
String
userName
=
this
.
getAttrForStr
(
"username"
);
List
<
Menu
>
allMenuList
=
null
;
Integer
userId
=
InfoUser
.
getUser
(
userName
).
getId
()
;
if
(
"admin"
.
equals
(
userName
))
{
List
<
Menu
>
allMenuList
=
null
;
allMenuList
=
new
Menu
().
dao
().
template
(
"getMenuAll"
).
find
();
if
(
"admin"
.
equals
(
userName
))
{
}
else
{
allMenuList
=
new
Menu
().
dao
().
template
(
"getMenuAll"
).
find
();
allMenuList
=
new
Menu
().
dao
().
template
(
"getMenuGroup"
,
Kv
.
by
(
"userId"
,
userId
)).
find
();
}
else
{
}
allMenuList
=
new
Menu
().
dao
().
template
(
"getMenuGroup"
,
Kv
.
by
(
"userId"
,
userId
)).
find
();
List
<
System
>
systems
=
System
.
dao
.
template
(
"getSystems"
).
find
();
}
Map
<
Integer
,
System
>
systemMap
=
systems
.
stream
().
collect
(
Collectors
.
toMap
(
System:
:
getId
,
System
->
System
)
);
List
<
System
>
systems
=
System
.
dao
.
template
(
"getSystems"
).
find
(
);
List
<
MenuStar
>
stars
=
MenuStar
.
dao
.
template
(
"getMenuStar"
,
userId
).
find
(
);
Map
<
Integer
,
System
>
systemMap
=
systems
.
stream
().
collect
(
Collectors
.
toMap
(
System:
:
getId
,
System
->
System
)
);
List
<
MenuStar
>
stars
=
MenuStar
.
dao
.
template
(
"getMenuStar"
,
userId
).
find
();
// 系统中的菜单,用于系统正常跳转
// 系统中的菜单,用于系统正常跳转
Map
<
String
,
Map
<
String
,
List
<
Menu
>>>
menuGroup
=
new
LinkedHashMap
<>();
Map
<
String
,
Map
<
String
,
List
<
Menu
>>>
menuGroup
=
new
LinkedHashMap
<>();
// 页面中显示的菜单,过滤隐藏的菜单
// 页面中显示的菜单,过滤隐藏的菜单
Map
<
String
,
Map
<
String
,
List
<
Menu
>>>
viewApps
=
new
LinkedHashMap
<>();
Map
<
String
,
Map
<
String
,
List
<
Menu
>>>
viewApps
=
new
LinkedHashMap
<>();
allMenuList
.
forEach
(
menu
->
{
for
(
Menu
menu
:
allMenuList
)
{
// 处理菜单属性
// 处理菜单属性
System
system
=
systemMap
.
get
(
menu
.
getSystemId
());
System
system
=
systemMap
.
get
(
menu
.
getSystemId
());
menu
.
put
(
"system"
,
system
.
getName
());
// CP-1679 lidecai 20201211
menu
.
put
(
"url"
,
system
.
getUrl
());
if
(
system
==
null
||
menu
.
getFirstLevelName
()
==
null
)
{
continue
;
}
menu
.
put
(
"system"
,
system
.
getName
());
menu
.
put
(
"url"
,
system
.
getUrl
());
// 过滤不需要显示的菜单
// 过滤不需要显示的菜单
if
(
menu
.
getHidden
()
==
null
||
menu
.
getHidden
()
!=
1
)
{
if
(
menu
.
getHidden
()
==
null
||
menu
.
getHidden
()
!=
1
)
{
menu
.
put
(
"star"
,
exist
(
menu
.
getId
(),
stars
));
menu
.
put
(
"star"
,
exist
(
menu
.
getId
(),
stars
));
// 一级菜单组
// 一级菜单组
viewApps
.
putIfAbsent
(
menu
.
getFirstLevelName
()==
null
?
""
:
menu
.
getFirstLevelName
(),
new
HashMap
<
String
,
List
<
Menu
>>());
viewApps
.
putIfAbsent
(
menu
.
getFirstLevelName
()
==
null
?
""
:
menu
.
getFirstLevelName
(),
new
HashMap
<
String
,
List
<
Menu
>>());
// 二级菜单组
// 二级菜单组
viewApps
.
get
(
menu
.
getFirstLevelName
()).
putIfAbsent
(
menu
.
getSecondLevelName
()==
null
?
""
:
menu
.
getSecondLevelName
(),
new
ArrayList
<
Menu
>());
viewApps
.
get
(
menu
.
getFirstLevelName
()).
putIfAbsent
(
menu
.
getSecondLevelName
()
==
null
?
""
:
menu
.
getSecondLevelName
(),
new
ArrayList
<
Menu
>());
// 最终菜单
// 最终菜单
viewApps
.
get
(
menu
.
getFirstLevelName
()).
get
(
menu
.
getSecondLevelName
()==
null
?
""
:
menu
.
getSecondLevelName
()).
add
(
menu
);
viewApps
.
get
(
menu
.
getFirstLevelName
()).
get
(
menu
.
getSecondLevelName
()
==
null
?
""
:
menu
.
getSecondLevelName
()).
add
(
menu
);
}
}
// 一级菜单组
// 一级菜单组
menuGroup
.
putIfAbsent
(
menu
.
getFirstLevelName
()==
null
?
""
:
menu
.
getFirstLevelName
(),
new
HashMap
<
String
,
List
<
Menu
>>());
menuGroup
.
putIfAbsent
(
menu
.
getFirstLevelName
()
==
null
?
""
:
menu
.
getFirstLevelName
(),
new
HashMap
<
String
,
List
<
Menu
>>());
// 二级菜单组
// 二级菜单组
menuGroup
.
get
(
menu
.
getFirstLevelName
()).
putIfAbsent
(
menu
.
getSecondLevelName
(),
new
ArrayList
<
Menu
>());
menuGroup
.
get
(
menu
.
getFirstLevelName
()).
putIfAbsent
(
menu
.
getSecondLevelName
(),
new
ArrayList
<
Menu
>());
// 最终菜单
// 最终菜单
menuGroup
.
get
(
menu
.
getFirstLevelName
()).
get
(
menu
.
getSecondLevelName
()).
add
(
menu
);
menuGroup
.
get
(
menu
.
getFirstLevelName
()).
get
(
menu
.
getSecondLevelName
()).
add
(
menu
);
});
}
renderJson
(
Ret
.
ok
(
"apps"
,
menuGroup
).
set
(
"viewApps"
,
viewApps
).
set
(
"allMenu"
,
allMenuList
));
renderJson
(
Ret
.
ok
(
"apps"
,
menuGroup
).
set
(
"viewApps"
,
viewApps
).
set
(
"allMenu"
,
allMenuList
));
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
renderJson
(
Ret
.
fail
(
"msg"
,
e
.
getMessage
()));
}
}
}
}
}
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