yn_img_tool/target/classes/static/js/my/ztree-menu.js

219 lines
4.7 KiB
JavaScript
Raw Normal View History

2025-03-31 10:10:11 +08:00
function getMenuTree() {
var root = {
id : 0,
name : "root",
open : true,
};
$.ajax({
type : 'get',
url : ctxPath + '/permissions/all',
contentType : "application/json; charset=utf-8",
async : false,
success : function(result) {
if (result.status === 200) {
var length = result.data.length;
var children = [];
for (var i = 0; i < length; i++) {
var d = result.data[i];
var node = createNode(d);
children[i] = node;
}
root.children = children;
} else if (result.status === 500) {
layer.alert(result.msg, {icon: 2})
}
}
});
return root;
}
function initMenuDatas(roleId){
let params = {
'roleId': roleId
}
console.log(params)
params={
encryptedData:encryptCBC(JSON.stringify(params))
}
let url = dataUrl + '/permissions/listByRoleId';
ajaxRequest(url, "POST", params ,true, function () {}, function (result) {
console.log(result)
if (result.status === 200) {
var length = result.data.length;
var ids = [];
for(var i=0; i<length; i++){
ids.push(result.data[i]['id']);
}
initMenuCheck(ids);
} else if (result.status === 500) {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
});
// $.ajax({
// type : 'get',
// url : ctxPath + '/permissions?roleId=' + roleId,
// success : function(data) {
// var length = data.length;
// var ids = [];
// for(var i=0; i<length; i++){
// ids.push(data[i]['id']);
// }
// initMenuCheck(ids);
// }
// });
}
function initMenuCheck(ids) {
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
var length = ids.length;
if(length > 0){
var node = treeObj.getNodeByParam("id", 0, null);
treeObj.checkNode(node, true, false);
}
for(var i=0; i<length; i++){
var node = treeObj.getNodeByParam("id", ids[i], null);
treeObj.checkNode(node, true, false);
}
}
function getCheckedMenuIds(){
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
var nodes = treeObj.getCheckedNodes(true);
var length = nodes.length;
var ids = [];
for(var i=0; i<length; i++){
var n = nodes[i];
var id = n['id'];
ids.push(id);
}
return ids;
}
function createNode(d) {
var id = d['id'];
var pId = d['parentId'];
var name = d['name'];
var child = d['child'];
var node = {
open : true,
id : id,
name : name,
pId : pId,
};
if (child != null) {
var length = child.length;
if (length > 0) {
var children = [];
for (var i = 0; i < length; i++) {
children[i] = createNode(child[i]);
}
node.children = children;
}
}
return node;
}
function initParentMenuSelect(){
let url = dataUrl + "/permissions/parents";
ajaxRequest(url, "GET", null, true, function () {}, function (result) {
console.log(result)
if (result.status === 200) {
var select = $("#parentId");
select.append("<option value='0'>请选择</option>");
for(var i=0; i< result.data.length; i++){
var d = result.data[i];
var id = d['id'];
var name = d['name'];
select.append("<option value='"+ id +"'>" +name+"</option>");
}
} else {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
error(xhr)
});
// $.ajax({
// type : 'get',
// url : ctxPath + '/permissions/parents',
// async : false,
// success : function(data) {
// var select = $("#parentId");
// select.append("<option value='0'>root</option>");
// for(var i=0; i<data.length; i++){
// var d = data[i];
// var id = d['id'];
// var name = d['name'];
//
// select.append("<option value='"+ id +"'>" +name+"</option>");
// }
// }
// });
}
function initParentDictSelect(){
let url = dataUrl + '/dicts/parents';
ajaxRequest(url, "POST", null ,true, function () {}, function (result) {
console.log(result)
if (result.status === 200) {
var select = $("#parentId");
select.append("<option value = 0>无</option>");
for(var i=0; i<result.data.length; i++){
var d = result.data[i];
var id = d['id'];
var name = d['dictName'];
select.append("<option value='"+ id +"'>" +name+"</option>");
}
} else if (result.status === 500) {
layer.alert(result.msg, {icon: 2})
}
}, function (xhr) {
});
}
function getSettting() {
var setting = {
check : {
enable : true,
chkboxType : {
"Y" : "ps",
"N" : "ps"
}
},
async : {
enable : true,
},
data : {
simpleData : {
enable : true,
idKey : "id",
pIdKey : "pId",
rootPId : 0
}
},
callback : {
onCheck : zTreeOnCheck
}
};
return setting;
}
function zTreeOnCheck(event, treeId, treeNode) {
// console.log(treeNode.id + ", " + treeNode.name + "," + treeNode.checked
// + "," + treeNode.pId);
// console.log(JSON.stringify(treeNode));
}