/** * Created by Syusuke on 2017/3/17. */ var rationLibName = getQueryString("rationname");//获取定额库参数 function getQueryString(key){ var reg = new RegExp("(^|&)"+key+"=([^&]*)(&|$)"); var result = window.location.search.substr(1).match(reg); return result?decodeURIComponent(result[2]):null; } //----------------------------------------------------页面初始化 var properties = {};//综合属性 properties.sectionSelected = "";//选择的章节 properties.rationSelected = "";//选择的定额 function getRealLib(){ $.ajax({ type:"POST", url:"http://localhost:6060/rationLibEditor/getRealLibName", data:{"rationName":rationLibName}, async:false, dataType:"json", cache:false, timeout:1000, success:function(result){ properties.realLibName = result.data[0].DBName }, error:function(){} }) } $(document).ready(function(){ getRealLib(); getRationTree(); mkRationItemSpread(); }); //---------------------------------------------------初始化章节树界面 function getRationTree(){ $.ajax({ type:"POST", url:"http://localhost:6060/rationLibEditor/getRationTree", data:{"rationLibName": properties.realLibName}, dataType:"json", cache:false, timeout:500000, success:function(result,textStatus,status){ if(status.status == 200) createRationTree(result.data);//根据返回的全部定额章节对象,构架树。 else{ treeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes); saveTempTree(); } }, error:function(){ alert("caonima") } }) } //根据返回的节点集合构建树节点 function createRationTree(obj){ var treeArr; treeArr = makeNodes(obj); var maxIDNode = obj.reduce(function(a,b){ return (a.id> b.id)?a:b; }); newCount = maxIDNode.id; treeObj = $.fn.zTree.init($("#treeDemo"), setting, treeArr); } function makeNodes(obj){ var arr=[]; arr = obj.filter(function(x){ return x.ParentID==0 }) arr.forEach(function(x){ x.id = x.SectionID; x.pId = x.ParentID; x.nId = x.NextSiblingID; x.name = x.Name; x.isParent = true x.lev = 0 }); arr = sortArray(arr); for(var i=0;i0||(treeNode.level==2)) return; var addStr = ""; sObj.after(addStr); var btn = $("#addBtn_"+treeNode.tId); if (btn) btn.bind("click", function(){ var zTree = $.fn.zTree.getZTreeObj("treeDemo"); if((treeNode.level==0)){ var newNode = zTree.addNodes(treeNode, {id:(++newCount), pId:treeNode.id,nId:-1,isParent:true, name:"请输入章节名称",children:[]}); } else{ var newNode = zTree.addNodes(treeNode, {id:(++newCount), pId:treeNode.id,nId:-1,isParent:false, name:"请输入章节名称"}); } saveNewSection(newNode[0]); var pnode = newNode[0].getPreNode() if(pnode){ pnode.nId = newNode[0].id; saveNewSection(pnode); } return false; }); }; //保存新增的节点 function saveNewSection(n){ var sec={}; sec.SectionID = n.id; sec.ParentID = n.pId; sec.NextSiblingID = n.nId; sec.Name = n.name; var section = JSON.stringify(sec); $.ajax({ type:"POST", url:"http://localhost:6060/rationLibEditor/addSection", data:{"rationLibName":properties.realLibName,"rationSection":section}, dataType:"json", cache:false, timeout:1000, success:function(result){ }, error:function(){ } }) } //编辑树节点事件(添加节点到数据库) function onRename(e, treeId, treeNode, isCancel) { saveNewSection(treeNode); } function onRemove(e, treeId, treeNode) { var id = treeNode.id; var pNodes = treeNode.getParentNode().children; for(var i=0;i