|
@@ -139,7 +139,6 @@ let zTreeOprObj = {
|
|
|
return itemRst;
|
|
|
},
|
|
|
|
|
|
- //*
|
|
|
addHoverDom: function(treeId, treeNode) {
|
|
|
let me = zTreeOprObj, sObj = $("#" + treeNode.tId + "_span");
|
|
|
if (treeNode.editNameFlag || $("#addBtn_"+treeNode.tId).length > 0 || treeNode.nodeType == RT.NodeType.TEMPLATE) return;
|
|
@@ -381,257 +380,7 @@ let zTreeOprObj = {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
- /*/
|
|
|
- addHoverDom: function(treeId, treeNode) {
|
|
|
- let me = zTreeOprObj, sObj = $("#" + treeNode.tId + "_span");
|
|
|
- if (treeNode.editNameFlag || $("#addBtn_"+treeNode.tId).length > 0 || treeNode.nodeType == RT.NodeType.TEMPLATE) return;
|
|
|
- let addStr = "<span class='button add' id='addBtn_" + treeNode.tId + "' title='新增子节点' onfocus='this.blur();'></span>";
|
|
|
- sObj.after(addStr);
|
|
|
- let btn = $("#addBtn_"+treeNode.tId);
|
|
|
- if (btn) btn.bind("click", function(){
|
|
|
- let rawNode = me.createIniRootNode(), lastNodeId = -1, insertIdx = -1, lastNode = null;
|
|
|
- rawNode.ParentID = treeNode.ID;
|
|
|
- rawNode.name = "新增子节点";
|
|
|
- if (treeNode.items.length > 0) {
|
|
|
- for (let i = treeNode.items.length - 1; i >= 0; i--) {
|
|
|
- if (treeNode.items[i].nodeType == RT.NodeType.NODE) {
|
|
|
- lastNodeId = treeNode.items[i].ID;
|
|
|
- lastNode = treeNode.items[i];
|
|
|
- rawNode.NextSiblingID = treeNode.items[i].NextSiblingID;
|
|
|
- insertIdx = i + 1;
|
|
|
- break;
|
|
|
- } else {
|
|
|
- rawNode.NextSiblingID = treeNode.items[i].ID;
|
|
|
- insertIdx = i;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- zTreeOprObj.addNewNode(rawNode, lastNodeId, function(rst){
|
|
|
- let newNodes = [], isSilent = false;
|
|
|
- if (lastNode) {
|
|
|
- lastNode.NextSiblingID = rst.ID;
|
|
|
- }
|
|
|
- rawNode.ID = rst.ID;
|
|
|
- rawNode.NextSiblingID = rst.NextSiblingID;
|
|
|
- rawNode.isParent = true;
|
|
|
- rawNode.items = [];
|
|
|
- newNodes.push(rawNode);
|
|
|
- treeNode.isParent = true;
|
|
|
- if (me.treeObj) {
|
|
|
- me.treeObj.addNodes(treeNode, insertIdx, newNodes, isSilent);
|
|
|
- } else {
|
|
|
- me.treeObj = $.fn.zTree.init($("#rptTplTree"), setting, newNodes);
|
|
|
- }
|
|
|
- }, null);
|
|
|
- });
|
|
|
- },
|
|
|
- removeHoverDom: function(treeId, treeNode) {
|
|
|
- $("#addBtn_"+treeNode.tId).unbind().remove();
|
|
|
- },
|
|
|
-
|
|
|
- addNewNode: function(rawNode, lastNodeId, callback, failCallback) {
|
|
|
- let params = {};
|
|
|
- params.lastNodeId = lastNodeId;
|
|
|
- params.rawNodeData = rawNode;
|
|
|
- CommonAjax.postEx("report_tpl_api/createTplTreeNode", params, 5000, true, callback, failCallback, null);
|
|
|
- },
|
|
|
- moveUpNode: function() {
|
|
|
- let me = this, nodes = [];
|
|
|
- if (me.currentNode && me.currentNode.getPreNode()) {
|
|
|
- let preNode = me.currentNode.getPreNode(), pre_preNode = preNode.getPreNode();
|
|
|
- me.treeObj.moveNode(preNode, me.currentNode, "prev", true);
|
|
|
- //then update the db
|
|
|
- if (pre_preNode) {
|
|
|
- pre_preNode.NextSiblingID = me.currentNode.ID;
|
|
|
- nodes.push(me.createNodeFromZTreeNode(pre_preNode));
|
|
|
- }
|
|
|
- preNode.NextSiblingID = me.currentNode.NextSiblingID;
|
|
|
- me.currentNode.NextSiblingID = preNode.ID;
|
|
|
- nodes.push(me.createNodeFromZTreeNode(me.currentNode));
|
|
|
- nodes.push(me.createNodeFromZTreeNode(preNode));
|
|
|
- me.updateNodes(nodes);
|
|
|
- }
|
|
|
- },
|
|
|
- moveDownNode: function() {
|
|
|
- let me = this, nodes = [];
|
|
|
- if (me.currentNode && me.currentNode.getNextNode()) {
|
|
|
- let preNode = me.currentNode.getPreNode(), nextNode = me.currentNode.getNextNode();
|
|
|
- me.treeObj.moveNode(nextNode, me.currentNode, "next", true);
|
|
|
- //then update the db
|
|
|
- if (preNode) {
|
|
|
- preNode.NextSiblingID = nextNode.ID;
|
|
|
- nodes.push(me.createNodeFromZTreeNode(preNode));
|
|
|
- }
|
|
|
- me.currentNode.NextSiblingID = nextNode.NextSiblingID;
|
|
|
- nextNode.NextSiblingID = me.currentNode.ID;
|
|
|
- nodes.push(me.createNodeFromZTreeNode(me.currentNode));
|
|
|
- nodes.push(me.createNodeFromZTreeNode(nextNode));
|
|
|
- me.updateNodes(nodes);
|
|
|
- }
|
|
|
- },
|
|
|
- getReportTemplateTree: function(grpType) {
|
|
|
- let me = zTreeOprObj, params = {};
|
|
|
- params.grpType = grpType;
|
|
|
- params.userId = (userAccount === 'admin')?('-100'):userID;
|
|
|
- params.tplType = RT.TplType.ALL;
|
|
|
- CommonAjax.postEx("report_tpl_api/getRptTplTree", params, 20000, true, function(result){
|
|
|
- zTreeHelper.createTree(result, setting, "rptTplTree", me);
|
|
|
- me.refreshNodes();
|
|
|
- }, null, null
|
|
|
- );
|
|
|
- },
|
|
|
- addTplNode: function (){
|
|
|
- let me = this;
|
|
|
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.NODE) {
|
|
|
- let rawNode = me.createIniRootNode(), lastNodeId = -1, lastNode = null;
|
|
|
- rawNode.nodeType = RT.NodeType.TEMPLATE;
|
|
|
- rawNode.ParentID = me.currentNode.ID;
|
|
|
- rawNode.name = "新增报表模板";
|
|
|
- if (me.treeObj) {
|
|
|
- let nodes = me.currentNode.items;
|
|
|
- if (nodes.length > 0) {
|
|
|
- lastNodeId = nodes[nodes.length - 1].ID;
|
|
|
- lastNode = nodes[nodes.length - 1];
|
|
|
- }
|
|
|
- me.addNewNode(rawNode, lastNodeId, function(rst){
|
|
|
- let newNodes = [], isSilent = false;
|
|
|
- if (lastNode) {
|
|
|
- lastNode.NextSiblingID = rst.ID;
|
|
|
- }
|
|
|
- rawNode.ID = rst.ID;
|
|
|
- rawNode.isParent = false;
|
|
|
- rawNode.items = [];
|
|
|
- newNodes.push(rawNode);
|
|
|
- if (me.treeObj) {
|
|
|
- me.treeObj.addNodes(me.currentNode, -1, newNodes, isSilent);
|
|
|
- } else {
|
|
|
- me.treeObj = $.fn.zTree.init($("#rptTplTree"), setting, newNodes);
|
|
|
- }
|
|
|
- }, null);
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
-
|
|
|
- updateNodes: function(nodes){
|
|
|
- if (nodes && nodes.length > 0) {
|
|
|
- let me = this;
|
|
|
- for (let i = 0; i < nodes.length; i++) {
|
|
|
- if (nodes[i].__v != null) node.__v = nodes[i].__v + 1
|
|
|
- else nodes[i].__v = 0;
|
|
|
- }
|
|
|
- let params = {};
|
|
|
- params.nodes = nodes;
|
|
|
- CommonAjax.postEx("report_tpl_api/updateRptTplNodes", params, 5000, true, null, null, null);
|
|
|
- }
|
|
|
- },
|
|
|
- addRootNode: function() {
|
|
|
- let me = this, rawNode = me.createIniRootNode(), lastNodeId = -1, lastNode = null;
|
|
|
- if (me.treeObj) {
|
|
|
- let rootNodes = me.treeObj.getNodes();
|
|
|
- if (rootNodes.length > 0) {
|
|
|
- lastNodeId = rootNodes[rootNodes.length - 1].ID;
|
|
|
- lastNode = rootNodes[rootNodes.length - 1];
|
|
|
- }
|
|
|
- me.addNewNode(rawNode, lastNodeId, function(rst){
|
|
|
- let newNodes = [], isSilent = false;
|
|
|
- if (lastNode) {
|
|
|
- lastNode.NextSiblingID = rst.ID;
|
|
|
- }
|
|
|
- rawNode.ID = rst.ID;
|
|
|
- rawNode.isParent = true;
|
|
|
- rawNode.items = [];
|
|
|
- newNodes.push(rawNode);
|
|
|
- if (me.treeObj) {
|
|
|
- me.treeObj.addNodes(null, -1, newNodes, isSilent);
|
|
|
- } else {
|
|
|
- me.treeObj = $.fn.zTree.init($("#rptTplTree"), setting, newNodes);
|
|
|
- }
|
|
|
- }, null);
|
|
|
- }
|
|
|
- },
|
|
|
-
|
|
|
- createIniRootNode: function() {
|
|
|
- let rst = {
|
|
|
- ID: -1,
|
|
|
- ParentID: -1,
|
|
|
- NextSiblingID: -1,
|
|
|
- grpType: RT.GrpType.CONSTRUCT,
|
|
|
- nodeType: RT.NodeType.NODE,
|
|
|
- tplType: RT.TplType.ALL,
|
|
|
- userId: (userAccount === 'admin')?('-100'):userID,
|
|
|
- refId: -1,
|
|
|
- name: '新增节点'
|
|
|
- };
|
|
|
- return rst;
|
|
|
- },
|
|
|
-
|
|
|
- onBeforeRemove: function(treeId, treeNode){
|
|
|
- let nodeIds = [], preNode = treeNode.getPreNode(), preNodeId = -1, canRemove = false, params = {};
|
|
|
- if (preNode) {
|
|
|
- preNodeId = preNode.ID;
|
|
|
- }
|
|
|
- let private_fetchAllSubItems = function(pItem){
|
|
|
- nodeIds.push(pItem.ID);
|
|
|
- if (pItem.items && pItem.items.length > 0) {
|
|
|
- for (let i = 0; i < pItem.items.length; i++) {
|
|
|
- private_fetchAllSubItems(pItem.items[i]);
|
|
|
- }
|
|
|
- }
|
|
|
- };
|
|
|
- nodeIds.push(treeNode.ID);
|
|
|
- for (let i = 0; i < treeNode.items.length; i++) {
|
|
|
- private_fetchAllSubItems(treeNode.items[i]);
|
|
|
- }
|
|
|
- params.nodeIds = nodeIds;
|
|
|
- params.preNodeId = preNodeId;
|
|
|
- params.preNodeNextId = treeNode.NextSiblingID;
|
|
|
- CommonAjax.postEx("report_tpl_api/deleteRptTplNodes", params, 5000, false, function(data){
|
|
|
- canRemove = true;
|
|
|
- }, null, null);
|
|
|
- return canRemove;
|
|
|
- },
|
|
|
- onRemove: function(e, treeId, treeNode){
|
|
|
- let me = zTreeOprObj, pNode = me.treeObj.getNodeByTId(treeNode.parentTId);
|
|
|
- if (pNode && pNode.items && pNode.items.length === 0) {
|
|
|
- if (pNode.nodeType === RT.NodeType.NODE) pNode.isParent = true
|
|
|
- else pNode.isParent = false;
|
|
|
- me.treeObj.refresh();
|
|
|
- }
|
|
|
- },
|
|
|
- beforeRename: function(treeId, treeNode, newName, isCancel) {
|
|
|
- if (newName.length === 0) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- return true;
|
|
|
- },
|
|
|
- onRename : function(e, treeId, treeNode, isCancel) {
|
|
|
- let me = zTreeOprObj, nodes = [];
|
|
|
- nodes.push(me.createNodeFromZTreeNode(treeNode));
|
|
|
- me.updateNodes(nodes);
|
|
|
- if (treeNode.nodeType === RT.NodeType.TEMPLATE && treeNode.refId >= 0) {
|
|
|
- if (treeNode.rptTpl !== null) {
|
|
|
- treeNode.rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MAIN_INFO_RPT_NAME] = treeNode.name;
|
|
|
- $("#rptTplName")[0].value = treeNode.rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MAIN_INFO_RPT_NAME];
|
|
|
- } else {
|
|
|
- me.onClick(e, treeId, treeNode);
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
- createNodeFromZTreeNode: function(treeNode) {
|
|
|
- let rst = {};
|
|
|
- rst.ID = treeNode.ID;
|
|
|
- rst.ParentID = treeNode.ParentID;
|
|
|
- rst.NextSiblingID = treeNode.NextSiblingID;
|
|
|
- rst.grpType = treeNode.grpType;
|
|
|
- rst.nodeType = treeNode.nodeType;
|
|
|
- rst.tplType = treeNode.tplType;
|
|
|
- rst.userId = treeNode.userId;
|
|
|
- rst.refId = treeNode.refId;
|
|
|
- rst.name = treeNode.name;
|
|
|
- return rst;
|
|
|
- },
|
|
|
|
|
|
- //*/
|
|
|
createNewTpl: function () {
|
|
|
let me = zTreeOprObj, params = {};
|
|
|
if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
|