mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-02-24 05:46:03 +08:00
优化权限组
This commit is contained in:
parent
0e464c5c06
commit
6e0b5b55bd
@ -115,6 +115,8 @@
|
||||
console.log(data);
|
||||
|
||||
if (data.action == 'model' || data.action == 'ready') {
|
||||
//默认合并
|
||||
$("#jstree_privilege").jstree("close_all");
|
||||
return;
|
||||
}
|
||||
let _selected = data.node.state.selected;
|
||||
@ -138,12 +140,9 @@
|
||||
} else {
|
||||
$that.deletePrivilege(_selectPrivileges);
|
||||
}
|
||||
|
||||
console.log(_d, _selectPrivileges);
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
},
|
||||
|
||||
_doJsTreeData: function (_privileges) {
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<div >
|
||||
<vc:create path="dev/privilegeStaffInfo"></vc:create>
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="col-lg-8">
|
||||
<div class="ibox">
|
||||
<div class="ibox-content">
|
||||
|
||||
@ -10,7 +10,6 @@
|
||||
<tr>
|
||||
<th>权限ID</th>
|
||||
<th data-hide="phone">权限名称</th>
|
||||
<th data-hide="phone">权限描述</th>
|
||||
<th data-hide="phone">隶属权限组ID</th>
|
||||
<th data-hide="phone,tablet" >隶属权限组名称</th>
|
||||
<th data-hide="phone">状态</th>
|
||||
@ -24,10 +23,7 @@
|
||||
{{privilege.pId}}
|
||||
</td>
|
||||
<td>
|
||||
{{privilege.name}}
|
||||
</td>
|
||||
<td>
|
||||
{{privilege.description}}
|
||||
{{privilege.pName}}
|
||||
</td>
|
||||
<td>
|
||||
{{privilege.pgId}}
|
||||
@ -57,6 +53,20 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-4 animated fadeInRight">
|
||||
<div class="mail-box-header">
|
||||
<h2>
|
||||
树形结构
|
||||
</h2>
|
||||
</div>
|
||||
<div class="mail-box">
|
||||
|
||||
<div id="jstree_privilege">
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 删除员工权限 -->
|
||||
<vc:create path="dev/deleteStaffPrivilege"></vc:create>
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
function(json){
|
||||
var _staffPrivilegeInfo = JSON.parse(json);
|
||||
vc.component.staffPrivilegeInfo.privileges = _staffPrivilegeInfo.datas;
|
||||
$that._initJsTreePrivilege(_staffPrivilegeInfo.datas);
|
||||
|
||||
},function(){
|
||||
console.log('请求失败处理');
|
||||
@ -38,7 +39,114 @@
|
||||
_openDeleteStaffPrivilegeModel:function(_staffPrivilege){
|
||||
_staffPrivilege.staffId = vc.component.staffPrivilegeInfo._currentStaffId;
|
||||
vc.emit('deleteStaffPrivilege','openStaffPrivilegeModel',_staffPrivilege);
|
||||
}
|
||||
},
|
||||
_initJsTreePrivilege: function (_privileges) {
|
||||
|
||||
let _data = $that._doJsTreeData(_privileges);
|
||||
$.jstree.destroy()
|
||||
$("#jstree_privilege").jstree({
|
||||
"checkbox": {
|
||||
"keep_selected_style": false
|
||||
},
|
||||
|
||||
'state': { //一些初始化状态
|
||||
"opened": false,
|
||||
},
|
||||
'core': {
|
||||
'data': _data
|
||||
}
|
||||
});
|
||||
$('#jstree_privilege').on("changed.jstree", function (e, data) {
|
||||
|
||||
});
|
||||
|
||||
},
|
||||
_doJsTreeData: function (_privileges) {
|
||||
let _mGroupTree = [];
|
||||
//构建 第一层菜单组
|
||||
_privileges.forEach(pItem => {
|
||||
let _includeGroup = false;
|
||||
for (let _mgIndex = 0; _mgIndex < _mGroupTree.length; _mgIndex++) {
|
||||
if (pItem.gId == _mGroupTree[_mgIndex].gId) {
|
||||
_includeGroup = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (!_includeGroup) {
|
||||
let _groupItem = {
|
||||
id: 'g_' + pItem.gId,
|
||||
gId: pItem.gId,
|
||||
text: pItem.gName,
|
||||
state: {
|
||||
opened: false
|
||||
},
|
||||
children: []
|
||||
};
|
||||
$that._doJsTreeMenuData(_groupItem);
|
||||
_mGroupTree.push(_groupItem);
|
||||
}
|
||||
});
|
||||
return _mGroupTree;
|
||||
},
|
||||
_doJsTreeMenuData: function (_groupItem) {
|
||||
let _privileges = $that.staffPrivilegeInfo.privileges;
|
||||
|
||||
//构建菜单
|
||||
let _children = _groupItem.children;
|
||||
for (let _pIndex = 0; _pIndex < _privileges.length; _pIndex++) {
|
||||
if (_groupItem.gId == _privileges[_pIndex].gId) {
|
||||
let _includeMenu = false;
|
||||
for (let _mgIndex = 0; _mgIndex < _children.length; _mgIndex++) {
|
||||
if (_privileges[_pIndex].mId == _children[_mgIndex].mId) {
|
||||
_includeMenu = true;
|
||||
}
|
||||
}
|
||||
if (!_includeMenu) {
|
||||
let _menuItem = {
|
||||
id: 'm_' + _privileges[_pIndex].mId,
|
||||
mId: _privileges[_pIndex].mId,
|
||||
text: _privileges[_pIndex].mName,
|
||||
state: {
|
||||
opened: false
|
||||
},
|
||||
children: []
|
||||
};
|
||||
$that._doJsTreePrivilegeData(_menuItem);
|
||||
_children.push(_menuItem);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
_doJsTreePrivilegeData: function (_menuItem) {
|
||||
let _privileges = $that.staffPrivilegeInfo.privileges;
|
||||
//构建菜单
|
||||
let _children = _menuItem.children;
|
||||
for (let _pIndex = 0; _pIndex < _privileges.length; _pIndex++) {
|
||||
if (_menuItem.mId == _privileges[_pIndex].mId) {
|
||||
let _includePrivilege = false;
|
||||
for (let _mIndex = 0; _mIndex < _children.length; _mIndex++) {
|
||||
if (_privileges[_pIndex].pId == _children[_mIndex].pId) {
|
||||
_includePrivilege = true;
|
||||
}
|
||||
}
|
||||
if (!_includePrivilege) {
|
||||
let _selected = false;
|
||||
let _privilegeItem = {
|
||||
id: 'p_' + _privileges[_pIndex].pId,
|
||||
pId: _privileges[_pIndex].pId,
|
||||
text: _privileges[_pIndex].pName,
|
||||
state: {
|
||||
opened: false,
|
||||
selected: _selected
|
||||
}
|
||||
};
|
||||
_children.push(_privilegeItem);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user