前面对菜单管理中添加了按钮,在角色中对树结构要重新修改,保证按钮权限的选择正确,主要对JS代码进行了修改
JS如下:
//转换原始数据至符合tree的要求 rows 是Menu的实体集合
function convert(rows){
function isAdded(row, rows){
for(var k=0;k<existAuthority.length;k++){
//row表示Menu实体 existAuthority表示某角色具有的Authority实体集合
if(existAuthority[k].menuId == row.id && haveParent(rows, row.parentId)){
return true;
}
}
return false;
}
//判断是否有父分类
function haveParent(rows, parentId){
for(var i=0; i<rows.length; i++){
if (rows[i].id == parentId) {
return true;
}
}
return false;
}
//判断是否有父节点
function exists(rows, parentId){
for(var i=0; i<rows.length; i++){
if (rows[i].id == parentId) return true;
}
return false;
}
var nodes = [];
// 获取所有的父分类放入nodes
for(var i=0; i<rows.length; i++){
var row = rows[i];
if (!exists(rows, row.parentId)){
nodes.pu