var rowid="";//当前选择id var tempRowid=""; var insertRowids=[];//保存添加的rowid var updateRowids=[]; var insertArr=[]; var updateArr=[]; var dragArr=[]; var deleteArr=[]; var noName="@"; var priVa=""; var hasPri = primary=="rowid"; var check=true; var isKeyUp=false; function nodeClick(node){ if(checkSession()){ return false; } if(panMain[1].isChange!=0&&rowid!=""){savaUpdateNode();}//保存修改的节点 rowid=$("span:first",node).attr("id"); priVa=$("span:first",node).attr("nodevalue"); tempRowid=rowid;//更新节点名用到 点击的是新增的节点时 var index=seachArray(insertRowids,rowid);//双击新增的节点 if(index!=-1){ newNodeDBClick(i); return; } index=seachArray(updateRowids,rowid); if(index!=-1){//判断双击的是否是新增节点 updateNodeDBClick(index); return; } var rid=(primary==""||primary=="rowid")?rowid:$("span:first",node).attr("nodevalue"); $.post("treeData.jsp",{"rid":rid,"info":1,query:treeQuery},function(data){ setPanelValue(data); panMain[1].isChange =0; if(typeof mastercodes !="undefined"){//从新组装treeQuery值(这里是处理在搜索后treeQuery值会被改变并且加密导致保存时候出错问题) let where = []; for (let m = 0; m < mastercodes.length; m++) { let field = mastercodes[m]; if (data[field] != null) { where.push(field + "='" + data[field] + "'"); } } treeQuery = where.join(" and "); } },"json"); } function newNodeDBClick(index) {//双击新增节点 var node=insertArr[index]; setPanelValue(node); } function updateNodeDBClick(index) { var node=updateArr[index]; setPanelValue(node); } function addNode(type)//添加节点 type 0添加同级节点 1添加子节点 { var flag = checkSession();//session失效后弹出登录框,flag为true时表示已经失效 if(flag){ return; } var selectNode=simpleTree.get(0).getSelected(); if(selectNode.find(">span").html()==null) { $.messager.alert("提示","请选择节点!","info"); return; } if(type!=0){ if(selectNode.attr("lqc")){ $.messager.alert("提示","请选择节点!","info"); return; } } var temp=simpleTree.get(0).getSelected(); if(type!=0 && temp.find('>ul').attr("class")=='ajax') { $.messager.alert("提示","该节点数据尚未加载!","info"); return; } if(0!=panMain[1].isChange){savaUpdateNode();}//保存修改的节点 clearPanel(); $.post("/getRowid.do","",function(data){ var nodeName=buildDisplayNode(); simpleTree.get(0).addNode(data,nodeName,type,function(selectNode,newNode){ rowid=selectNode.attr("id"); if("root"==rowid)rowid="";//增加的是第一级节点 }); tempRowid=data; saveAdd(); rowid=data; if(autoCode!=''){ var temp=autoCode.split(";"); if(autocodeConfig.split(";").length!=3){ $.messager.alert("提示","自动编号配置有误!","error"); return; } for(i=0;i0){ $.messager.alert("提示",data,"error"); return; }else { var autoArray=eval(data); $(autoArray).each(function(){ $("#"+this.field).val(this.value); }); panMain[1].isChange=1; } }); } } }); } function delNode(){ var flag = checkSession();//session失效后弹出登录框,flag为true时表示已经失效 if(flag){ return; } var selectNode=simpleTree.get(0).getSelected(); if(selectNode.find(">span").html()==null) { $.messager.alert("提示","请选择节点!","info"); return; } if(selectNode.attr("lqc")){ $.messager.alert("提示","请选择节点!","info"); return; } var id=selectNode.parent().attr("id"); if("firstNode"==id){ if(1==selectNode.parent().find(">li.line").size()){ $.messager.alert("提示","树功能号至少需要一个节点!","info"); return; } } var temp = selectNode.find(">ul").html(); if(temp==undefined||temp==null||temp==''){ $.messager.confirm("提示","确定删除?",function(r){ if(r){ var rid=selectNode.find(">span").attr("id"); priVa = selectNode.find("span:first").attr("nodevalue"); simpleTree.get(0).delNode(); var json={}; json["rowid"]=rid; json["isDeletes"]=0; if(undefined!=priVa && ""!=priVa){ json.primaryKey=(hasPri?"rowid":primary); json.primaryValue=(hasPri?rid:priVa); } for(let i=0;i"+data.message+""); } closeLoading(); },"json").error(function(xh,txt) {//返回加载树的错误信息; closeLoading(); }); } function setReturnValue(node)//返回一个规则对象 { var rid=(primary==""||primary=="rowid")?$("span:first",node).attr("id"):$("span:first",node).attr("nodevalue"); $.post("treeData.jsp",{"rid":rid,"info":1,query:treeQuery},function(data){ fillData(data); },"json"); } function setReturnValueA(rid)//返回一个规则对象 { $.post("treeData.jsp", {"rid": rid, "info": 1, query: treeQuery}, function (data) { setPanelValue(data); priVa = rid; if (typeof mastercodes != "undefined") {//从新组装treeQuery值(这里是处理在搜索后treeQuery值会被改变并且加密导致保存时候出错问题) let where = []; for (let m = 0; m < mastercodes.length; m++) { let field = mastercodes[m]; if (data[field] != null) { where.push(field + "='" + data[field] + "'"); } } treeQuery = where.join(" and "); } }, "json"); } function obj2str(o){ var r = []; if(typeof o =="string") return "\""+o.replace(/([\'\"\\])/g,"\\$1").replace(/(\n)/g,"\\n").replace(/(\r)/g,"\\r").replace(/(\t)/g,"\\t")+"\""; if(typeof o =="undefined") return ""; if(typeof o == "object"){ if(o===null) return "null"; else if(!o.sort){ for(var i in o) r.push(i+":"+obj2str(o[i])) r="{"+r.join()+"}" }else{ for(var i =0;i=0;i--) { if(array[i]==rowid){ return i; } } return -1; } function clear(){ rowid=""; insertArr=[]; updateArr=[]; insertRowids=[]; updateRowids=[]; } function rowidOnkeyUp(){ let temp = displayfield.split(";"); if (!isKeyUp && temp != null && temp.length > 0) { for (let i = 0; i < temp.length; i++) { let e = $("#" + temp[i]); if (typeof e[0] == 'undefined') { continue; } if (e[0].localName.toLowerCase() == 'input') { e.keyup(function () { setValue(); }) } if (e[0].localName.toLowerCase() == 'select') { e.change(function () { setValue(); }) } isKeyUp = true; } setValue=function(){ let value = ""; for (let v = 0; v < temp.length; v++) { let vl = $("#" + temp[v]).val(); if (typeof vl == 'undefined') { continue; } value += vl; if (v != temp.length - 1) { value += " "; } } $("span[id='" + tempRowid + "']").text(value); noName=value; } } }