parent
2fb9d92101
commit
c00aa92198
|
|
@ -2,3 +2,4 @@
|
||||||
## 2018.03.05 spring boot 由1.5.10 升级到2.0.0
|
## 2018.03.05 spring boot 由1.5.10 升级到2.0.0
|
||||||
## 2018.03.15上传文件的大小配置修改spring.http.multipart改为spring.servlet.multipart
|
## 2018.03.15上传文件的大小配置修改spring.http.multipart改为spring.servlet.multipart
|
||||||
## 2018.05.24作废DruidConfig类,将druid改为配置的方式,前缀为spring.datasource.druid
|
## 2018.05.24作废DruidConfig类,将druid改为配置的方式,前缀为spring.datasource.druid
|
||||||
|
## 2018.06.09 修改main.js菜单渲染和对应接口,使之支持多级菜单
|
||||||
|
|
|
||||||
|
|
@ -55,19 +55,44 @@ public class PermissionController {
|
||||||
final List<Permission> permissions = list.stream().filter(l -> l.getType().equals(1))
|
final List<Permission> permissions = list.stream().filter(l -> l.getType().equals(1))
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
setChild(permissions);
|
// setChild(permissions);
|
||||||
|
//
|
||||||
|
// return permissions.stream().filter(p -> p.getParentId().equals(0L)).collect(Collectors.toList());
|
||||||
|
// 2018.06.09 支持多级菜单
|
||||||
|
List<Permission> firstLevel = permissions.stream().filter(p -> p.getParentId().equals(0L)).collect(Collectors.toList());
|
||||||
|
firstLevel.parallelStream().forEach(p -> {
|
||||||
|
setChild(p, permissions);
|
||||||
|
});
|
||||||
|
|
||||||
return permissions.stream().filter(p -> p.getParentId().equals(0L)).collect(Collectors.toList());
|
return firstLevel;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setChild(List<Permission> permissions) {
|
/**
|
||||||
permissions.parallelStream().forEach(per -> {
|
* 设置子元素
|
||||||
List<Permission> child = permissions.stream().filter(p -> p.getParentId().equals(per.getId()))
|
* 2018.06.09
|
||||||
.collect(Collectors.toList());
|
*
|
||||||
per.setChild(child);
|
* @param p
|
||||||
});
|
* @param permissions
|
||||||
|
*/
|
||||||
|
private void setChild(Permission p, List<Permission> permissions) {
|
||||||
|
List<Permission> child = permissions.parallelStream().filter(a -> a.getParentId().equals(p.getId())).collect(Collectors.toList());
|
||||||
|
p.setChild(child);
|
||||||
|
if (!CollectionUtils.isEmpty(child)) {
|
||||||
|
child.parallelStream().forEach(c -> {
|
||||||
|
//递归设置子元素,多级菜单支持
|
||||||
|
setChild(c, permissions);
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// private void setChild(List<Permission> permissions) {
|
||||||
|
// permissions.parallelStream().forEach(per -> {
|
||||||
|
// List<Permission> child = permissions.stream().filter(p -> p.getParentId().equals(per.getId()))
|
||||||
|
// .collect(Collectors.toList());
|
||||||
|
// per.setChild(child);
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 菜单列表
|
* 菜单列表
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -253,6 +253,8 @@ body .site-demo-nav .layui-nav-item{line-height: 40px}
|
||||||
padding-left: 30px;
|
padding-left: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.layui-nav-child dd{position:relative;margin-left: 10px}
|
||||||
|
|
||||||
.admin{
|
.admin{
|
||||||
border: 0;
|
border: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
<meta name="format-detection" content="telephone=no">
|
<meta name="format-detection" content="telephone=no">
|
||||||
<title>后台管理系统</title>
|
<title>后台管理系统</title>
|
||||||
<link rel="stylesheet" href="layui/css/layui.css" media="all" />
|
<link rel="stylesheet" href="layui/css/layui.css" media="all" />
|
||||||
<link rel="stylesheet" href="layui/css/global.css" media="all" />
|
<link rel="stylesheet" href="css/global.css" media="all" />
|
||||||
<link rel="stylesheet" href="css/font-awesome/css/font-awesome.css" media="all" />
|
<link rel="stylesheet" href="css/font-awesome/css/font-awesome.css" media="all" />
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
|
|
|
||||||
|
|
@ -30,37 +30,44 @@ function initMenu(){
|
||||||
li.addClass("layui-nav-itemed");
|
li.addClass("layui-nav-itemed");
|
||||||
}
|
}
|
||||||
li.append(a);
|
li.append(a);
|
||||||
|
menu.append(li);
|
||||||
|
|
||||||
//二级菜单
|
//多级菜单
|
||||||
var child2 = item.child;
|
setChild(li, item.child)
|
||||||
if(child2 != null && child2.length > 0){
|
|
||||||
$.each(child2, function(j,item2){
|
|
||||||
var ca = $("<a href='javascript:;'></a>");
|
|
||||||
ca.attr("data-url", item2.href);
|
|
||||||
ca.attr("lay-id", item2.id);
|
|
||||||
|
|
||||||
var css2 = item2.css;
|
|
||||||
if(css2!=null && css2!=""){
|
|
||||||
ca.append("<i aria-hidden='true' class='fa " + css2 +"'></i>");
|
|
||||||
}
|
|
||||||
|
|
||||||
ca.append("<cite>"+item2.name+"</cite>");
|
|
||||||
|
|
||||||
var dd = $("<dd></dd>");
|
|
||||||
dd.append(ca);
|
|
||||||
|
|
||||||
var dl = $("<dl class='layui-nav-child'></dl>");
|
|
||||||
dl.append(dd);
|
|
||||||
|
|
||||||
li.append(dl);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
menu.append(li);
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setChild(parentElement, child){
|
||||||
|
if(child != null && child.length > 0){
|
||||||
|
$.each(child, function(j,item2){
|
||||||
|
var ca = $("<a href='javascript:;'></a>");
|
||||||
|
ca.attr("data-url", item2.href);
|
||||||
|
ca.attr("lay-id", item2.id);
|
||||||
|
|
||||||
|
var css2 = item2.css;
|
||||||
|
if(css2!=null && css2!=""){
|
||||||
|
ca.append("<i aria-hidden='true' class='fa " + css2 +"'></i>");
|
||||||
|
}
|
||||||
|
|
||||||
|
ca.append("<cite>"+item2.name+"</cite>");
|
||||||
|
|
||||||
|
var dd = $("<dd></dd>");
|
||||||
|
dd.append(ca);
|
||||||
|
|
||||||
|
var dl = $("<dl class='layui-nav-child'></dl>");
|
||||||
|
dl.append(dd);
|
||||||
|
|
||||||
|
parentElement.append(dl);
|
||||||
|
|
||||||
|
// 递归
|
||||||
|
setChild(dd, item2.child);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 登陆用户头像昵称
|
// 登陆用户头像昵称
|
||||||
showLoginInfo();
|
showLoginInfo();
|
||||||
function showLoginInfo(){
|
function showLoginInfo(){
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<title></title>
|
<title></title>
|
||||||
<link rel="stylesheet" href="../layui/css/layui.css" media="all" />
|
<link rel="stylesheet" href="../layui/css/layui.css" media="all" />
|
||||||
<link rel="stylesheet" href="../layui/css/global.css" media="all" />
|
<link rel="stylesheet" href="../css/global.css" media="all" />
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue