hn_cloud_web/smz-web/js/work/sysMag/org.js

255 lines
5.2 KiB
JavaScript

$(function() {
$("#orgTree").prev("iframe").css("background-color","#F0F6E4");
// 初始化树
getOrgTreeData();
});
// 树的设置
var setting1 = {
view : {
addHoverDom : addHoverDom,
removeHoverDom : removeHoverDom,
selectedMulti : false
},
data : {
simpleData : {
enable : true
}
},
edit : {
enable : true,
renameTitle : "修改",
removeTitle : "删除",
showRemoveBtn: showRenameBtn,
showRenameBtn: showRenameBtn
},
callback : {
// 不允许拖拽
beforeDrag : beforeDrag,
// 修改前确认
beforeEditName : beforeEditName,
// 修改完时的处理
beforeRename : beforeRename,
// 修改成功后处理
onRename : onRename,
// 删除前确认
beforeRemove : beforeRemove
}
};
function showRenameBtn(treeId, treeNode){
return true;
}
// 修改完时处理 不进行后台数据处理
function beforeRename(treeId, treeNode, newName) {
if (newName.length < 1) {
layer.alert('节点名称不能为空!',function(){
layer.closeAll(); //再执行关闭
// parent.location.reload();
})
return false;
}
return true;
/*if (newName.length == 1) {
layer.alert("节点名称不能为空",{
icon: 0,
time: 2000
});
var zTree = getTree();
setTimeout(function() {
zTree.editName(treeNode);
}, 10);
return false;
}
return true;*/
}
//确认是否删除+删除处理
function beforeRemove(treeId, treeNode) {
if(treeNode.id==1){
layer.alert("根节点不能删除",{
icon: 2,
time: 2000
});
return false;
}
var zTree = getTree();
//选中该节点
zTree.selectNode(treeNode);
if(treeNode.isParent) {
layer.alert("此节点存在子节点,不能删除",{
icon: 2,
time: 2000
});
return false;
}
if(treeNode.id){
$.post(smz_ht_url +'/org/getProId',
{"id" : treeNode.id},
function(data){
if(data.resMsg=="1" || data.resMsg ==1){
layer.alert("此节点存在工程,不能删除",{
icon: 1,
time: 2000
});
}else{
layer.confirm("确认删除 节点 -- " + treeNode.name + " 吗?",{
icon: 0,
yes:function(){
$.post(smz_ht_url +'/org/deleteOrg',
{"id" : treeNode.id},
function(data){
layer.alert(data.resMsg,{
icon: 2,
time: 2000
});
refreshTree();
},"json");
},end: function(){
}
});
}
},"json");
} else {
zTree.removeNode(treeNode);
}
return false;
}
// 修改成功后处理
function onRename(event, treeId, treeNode) {
if (treeNode.existed) {
updateNode(treeNode);
} else {
addNode(treeNode);
}
}
//添加节点
function addNode(treeNode){
console.info(treeNode);
//此处进行ajax后台数据处理
$.post(smz_ht_url +'/org/addOrg', //数据提交的地址
{"name" : treeNode.name, "level" : treeNode.level,"companyId" :treeNode.getParentNode().companyId,
"parentId" : treeNode.getParentNode().id}, //提交的数据
function(data){//回调函数
layer.alert(data.resMsg,{
icon: 0,
time: 2000
});
refreshTree();
},"json");//预期返回的数据类型
}
//修改节点名称
function updateNode(treeNode){
//此处进行ajax后台数据处理
$.post(smz_ht_url +'/org/updateOrg', //数据提交的地址
{"id" : treeNode.id, //提交的数据
"name" : treeNode.name},
function(data){
layer.alert(data.resMsg,{
icon: 0,
time: 2000
});
refreshTree();
},"json");//预期返回的数据类型
}
// 不允许拖拽
function beforeDrag(treeId, treeNodes) {
return false;
}
// 确认是否进入编辑状态
function beforeEditName(treeId, treeNode) {
if (treeNode.id == 1) {
layer.alert("根节点不能修改!",{
icon: 2,
time: 2000
});
return false;
}
return true;
}
function removeHoverDom(treeId, treeNode) {
$("#addBtn_" + treeNode.id).unbind().remove();
};
// 添加新增按钮
function addHoverDom(treeId, treeNode) {
// if(treeNode.type==2){
// return;
// }
if(treeNode.type!=4){
if (treeNode.editNameFlag || $("#addBtn_" + treeNode.id).length > 0)
return;
var sObj = $("#" + treeNode.tId + "_span");
var addStr = "<span class='button add' id='addBtn_" + treeNode.id
+ "' title='添加' onfocus='this.blur();'></span>";
sObj.append(addStr);
var btn = $("#addBtn_" + treeNode.id);
if (btn) {
btn.bind("click", function() {
var zTree = getTree();
var newNode;
newNode = zTree.addNodes(treeNode, {
parentId : treeNode.id,
name : "新增",
icon : smz_ht_url + "/static/css/ztree/images/user_group.gif",
});
if (newNode) {
zTree.editName(newNode[0]);
}
return false;
});
}
}
};
// 定义树节点初始数据
var zNodes1 = [];
// 获取数据初始化树
function getOrgTreeData() {
$.ajax({
type : 'POST',
url : smz_ht_url + '/org/getOrgList',
data : {},
success : function(result) {
var nodes = zNodes1.concat(result.obj);
console.info(nodes);
$.fn.zTree.init($("#orgTree"), setting1, nodes);
},
error : function(e) {
layer.alert(e.resMsg,{
icon: 2,
time: 3000,
});
},
dataType : 'json'
});
}
function refreshTree(){
getOrgTreeData();
}
// 获取树对象
function getTree() {
return $.fn.zTree.getZTreeObj("orgTree");
}