123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638 |
- "use strict";
- const IDMark_Switch = "_switch",
- IDMark_Icon = "_ico",
- IDMark_Span = "_span",
- IDMark_Input = "_input",
- IDMark_Check = "_check",
- IDMark_Edit = "_edit",
- IDMark_Remove = "_remove",
- IDMark_Ul = "_ul",
- IDMark_A = "_a",
- //以上的常量是在查找zTree默认生成的dom对象时用到(tID + 后缀)
- NODE_LEVEL_COMPILATION_NEW = 1,
- NODE_LEVEL_USER = 0;
- // 工程类型枚举值
- const valuationSelectorMap = {
- valuationSelector_NA: "N/A",
- valuationSelector_suggestion: "建议估算",
- valuationSelector_feasibility: "可行性估算",
- valuationSelector_rough: "概算",
- valuationSelector_bill: "预算",
- valuationSelector_three_bill_budget: "三级清单预算",
- valuationSelector_ration: "清单预算",
- valuationSelector_changeBudget: "变更预算",
- valuationSelector_settlement: "结算",
- };
- let rptTplObj = {
- iniPage: function () {
- zTreeOprObj.getCompilationList();
- rpt_tpl_cfg_helper.getReportTplCfg();
- selectableFiledTreeOprObj.iniTree();
- preview_util.drawBorder($("#tplCanvas")[0]);
- calculationTreeOprObj.buildRunType();
- preHandleObj.buildTypeData();
- calculationTreeOprObj.iniExtCodeTpl();
- },
- };
- let zTreeOprObj = {
- treeObj: null,
- currentNode: null,
- moveSrcTopNode: null,
- dupTplIds: null,
- hasRefreshedDupRefIds: false,
- getCompilationList: function () {
- let me = zTreeOprObj,
- params = {};
- CommonAjax.postEx(
- "report_tpl_api/getCompilationList",
- params,
- 20000,
- true,
- function (result) {
- //console.log(result);
- for (let item of result) {
- // if (item.is_release) {
- $("#compilations").append(
- "<option value='" + item._id + "'>" + item.name + "</option>"
- );
- // }
- }
- // me.getReportTemplateTree($("#compilations").get(0));
- me.getReportTemplateTreeEx($("#compilations").get(0));
- },
- null,
- null
- );
- },
- refreshNodes: function () {
- let me = this;
- let private_setupIsParent = function (node) {
- // if (node.nodeType === RT.NodeType.NODE || node.level === 0) {
- if (
- node.nodeType === RT.NodeType.NODE ||
- node.level <= NODE_LEVEL_COMPILATION_NEW
- ) {
- node.isParent = true;
- } else {
- node.isParent = false;
- }
- if (node.items && node.items.length) {
- for (let i = 0; i < node.items.length; i++) {
- private_setupIsParent(node.items[i]);
- }
- }
- };
- let topNodes = me.treeObj.getNodes();
- for (let i = 0; i < topNodes.length; i++) {
- private_setupIsParent(topNodes[i]);
- }
- me.treeObj.refresh();
- },
- removeTreeRootNode: function (rawNode, isAsync, callback, failCallback) {
- let params = {};
- params.compilationId = rawNode.compilationId;
- params.engineerId = rawNode.engineerId;
- params.userId = rawNode.userId;
- params.isPhysically = true;
- CommonAjax.postEx(
- "report_tpl_api/removeTreeRootNode",
- params,
- 5000,
- isAsync,
- callback,
- failCallback,
- null
- );
- },
- copyReportTemplate: function (orgID, newID, isAsync, callback, failCallback) {
- let params = {};
- params.orgRptTplId = orgID;
- params.newRptTplId = newID;
- CommonAjax.postEx(
- "report_tpl_api/copyRptTpl",
- params,
- 5000,
- isAsync,
- callback,
- failCallback,
- null
- );
- },
- updateTreeRootNode: function (rawNode, isAsync, callback, failCallback) {
- let params = {};
- params.doc = rawNode;
- CommonAjax.postEx(
- "report_tpl_api/updateTreeRootNode",
- params,
- 5000,
- isAsync,
- callback,
- failCallback,
- null
- );
- },
- updateTopNodeName: function (topNode, isAsync, callback, failCallback) {
- let params = {};
- params.compilationId = topNode.compilationId;
- params.engineerId = topNode.engineerId;
- params.userId = topNode.userId;
- params.nodeName = topNode.name;
- CommonAjax.postEx(
- "report_tpl_api/updateTopNodeName",
- params,
- 5000,
- isAsync,
- callback,
- failCallback,
- null
- );
- },
- updateSubNode: function (topNode, subNode, isAsync, callback, failCallback) {
- let params = {};
- params.compilationId = topNode.compilationId;
- params.engineerId = topNode.engineerId;
- params.userId = topNode.userId;
- params.subNode = subNode;
- CommonAjax.postEx(
- "report_tpl_api/updateSubLevelOneNode",
- params,
- 5000,
- isAsync,
- callback,
- failCallback,
- null
- );
- },
- createIniNode: function () {
- return {
- nodeType: RT.NodeType.TEMPLATE,
- refId: -1,
- name: "",
- ID: -1,
- items: null,
- };
- },
- buildRootNodeDoc: function (topNode, excludeNode) {
- let me = this,
- rst = null;
- if (topNode) {
- rst = {
- compilationId: topNode.compilationId,
- engineerId: topNode.engineerId,
- userId: topNode.userId,
- properties: topNode.properties,
- released: true,
- isDeleted: topNode.isDeleted,
- items: me.private_build_items(topNode.items, excludeNode),
- name: topNode.name,
- UUID: topNode.UUID,
- };
- }
- return rst;
- },
- buildSubRootNodeDoc: function (subNode) {
- let me = this,
- rst = null;
- if (subNode) {
- let isReleased = false;
- if (subNode.nodeType === RT.NodeType.TEMPLATE) {
- isReleased = subNode.checked;
- }
- rst = {
- nodeType: subNode.nodeType,
- refId: subNode.refId,
- ID: subNode.ID,
- released: isReleased,
- items: me.private_build_items(subNode.items, null),
- name: subNode.name,
- UUID: subNode.UUID,
- };
- if (subNode.hasOwnProperty("flags")) {
- rst.flags = subNode.flags;
- }
- }
- return rst;
- },
- generateRandomString() {
- const charset =
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
- let randomString = "";
- for (let i = 0; i < 10; i++) {
- const randomIndex = Math.floor(Math.random() * charset.length);
- randomString += charset[randomIndex];
- }
- return randomString;
- },
- private_build_items: function (items, excludeNode) {
- let me = this,
- itemRst = null;
- if (items && items.length > 0) {
- itemRst = [];
- for (let item of items) {
- if (item !== excludeNode) {
- let isReleased = false;
- if (item.nodeType === RT.NodeType.TEMPLATE) {
- isReleased = item.checked;
- }
- let ir = {};
- ir.nodeType = item.nodeType;
- ir.refId = item.refId;
- ir.name = item.name;
- ir.ID = item.ID;
- ir.released = isReleased;
- ir.UUID =
- item.UUID ||
- `${new Date().getTime()}_${this.generateRandomString()}`;
- if (item.hasOwnProperty("flags")) {
- ir.flags = item.flags;
- }
- // 同类表(associateRefIds)处理
- if (item.hasOwnProperty("associateRefIds")) {
- ir.associateRefIds = item.associateRefIds;
- }
- ir.items = me.private_build_items(item.items);
- itemRst.push(ir);
- }
- }
- }
- return itemRst;
- },
- addHoverDom: function (treeId, treeNode) {
- let me = zTreeOprObj,
- sObj = $("#" + treeNode.tId + IDMark_Span);
- if (
- treeNode.editNameFlag ||
- $("#addBtn_" + treeNode.tId).length > 0 ||
- treeNode.nodeType === RT.NodeType.TEMPLATE
- )
- return;
- if (treeNode.level === 0) {
- let addStr =
- "<span class='button star' 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.createIniComilationNode();
- if (!me.chkIfDupCompilationNode(rawNode, treeNode)) {
- rawNode.userId = treeNode.userId;
- me.addNewNodeEx(
- rawNode,
- function (rst) {
- if (rst) {
- let newNodes = [],
- isSilent = false;
- rawNode.isParent = true;
- newNodes.push(rawNode);
- if (treeNode.items && treeNode.items.length > 0) {
- let insertIdx = -1;
- for (let i = 0; i < treeNode.items.length; i++) {
- if (
- treeNode.items[i].compilationId ===
- rawNode.compilationId
- ) {
- if (treeNode.items[i].engineerId > rawNode.engineerId) {
- insertIdx = i;
- break;
- }
- }
- }
- me.treeObj.addNodes(
- treeNode,
- insertIdx,
- newNodes,
- isSilent
- );
- } else {
- me.treeObj.addNodes(treeNode, 0, newNodes, isSilent);
- }
- } else {
- alert("后台创建失败,请确认是否有重复类型跟节点!");
- }
- },
- null
- );
- } else {
- alert("有重复编办!");
- }
- });
- } else {
- 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 () {
- me.getNewNodeID(1, function (newNodeID) {
- let rawNode = me.createIniNode();
- rawNode.nodeType = RT.NodeType.NODE;
- rawNode.name = "新增子节点";
- rawNode.ID = newNodeID;
- let newNodes = [],
- isSilent = false;
- newNodes.push(rawNode);
- if (me.treeObj) {
- let insertIdx = -1;
- if (treeNode.items && treeNode.items.length > 0) {
- for (let i = treeNode.items.length - 1; i >= 0; i--) {
- if (treeNode.items[i].nodeType === RT.NodeType.NODE) {
- insertIdx = i + 1;
- break;
- } else {
- insertIdx = i;
- }
- }
- }
- me.treeObj.addNodes(treeNode, insertIdx, newNodes, isSilent);
- let tn = me.getParentNodeByNodeLevel(
- treeNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let newTopNode = me.buildRootNodeDoc(tn);
- me.updateTreeRootNode(
- newTopNode,
- true,
- function (rst) {
- if (!rst) {
- alert("新增节点失败!");
- }
- me.refreshNodes();
- },
- null
- );
- }
- });
- });
- addStr =
- "<span class='button blue_core' id='addBtn2_" +
- treeNode.tId +
- "' title='新增报表模板' onfocus='this.blur();'></span>";
- sObj.after(addStr);
- btn = $("#addBtn2_" + treeNode.tId + "");
- if (btn)
- btn.bind("click", function () {
- // let me = zTreeOprObj;
- if (
- treeNode.nodeType === RT.NodeType.NODE ||
- treeNode.level === NODE_LEVEL_COMPILATION_NEW
- ) {
- me.getNewNodeID(1, function (newNodeID) {
- let rawNode = me.createIniNode();
- rawNode.nodeType = RT.NodeType.TEMPLATE;
- rawNode.name = "新增报表模板";
- rawNode.ID = newNodeID;
- rawNode.released = false;
- let newNodes = [],
- isSilent = false;
- newNodes.push(rawNode);
- me.treeObj.addNodes(treeNode, -1, newNodes, isSilent);
- let tn = me.getParentNodeByNodeLevel(
- treeNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let topNode = me.buildRootNodeDoc(tn);
- me.updateTreeRootNode(
- topNode,
- true,
- function (rst) {
- if (!rst) {
- alert("新增空白模板失败!");
- }
- me.refreshNodes();
- },
- null
- );
- });
- }
- });
- }
- },
- removeHoverDom: function (treeId, treeNode) {
- $("#addBtn_" + treeNode.tId)
- .unbind()
- .remove();
- $("#addBtn2_" + treeNode.tId)
- .unbind()
- .remove();
- },
- addNewNodeEx: function (rawNode, callback, failCallback) {
- let params = {};
- params.doc = rawNode;
- CommonAjax.postEx(
- "report_tpl_api/createTreeRootNode",
- params,
- 5000,
- true,
- callback,
- failCallback,
- null
- );
- },
- onCheck: function (event, treeId, treeNode) {
- let me = zTreeOprObj;
- let topPNode = me.getParentNodeByNodeLevel(
- treeNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let newTopNode = me.buildRootNodeDoc(topPNode);
- me.updateTreeRootNode(newTopNode, true, function (rst) {
- if (!rst) {
- alert("修改发布状态失败!");
- }
- });
- },
- onBeforeDrag: function (treeId, treeNodes) {
- let rst = true;
- for (let node of treeNodes) {
- if (node.level === 0 || node.nodeType !== RT.NodeType.TEMPLATE) {
- rst = false;
- break;
- }
- }
- return rst;
- },
- onBeforeDrop: function (treeId, treeNodes, targetNode, moveType, isCopy) {
- let me = zTreeOprObj,
- rst = true;
- let srcNode = treeNodes[0];
- let sourceTopNode = me.getParentNodeByNodeLevel(
- srcNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let targetTopNode = me.getParentNodeByNodeLevel(
- targetNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- me.moveSrcTopNode = null;
- if (moveType === "inner") {
- if (targetNode.nodeType === RT.NodeType.TEMPLATE) {
- //模板节点不能成为另一个模板节点的子节点。不过zTree控件默认会处理,这里的代码应该走不到,放在这里以防万一
- rst = false;
- } else {
- if (sourceTopNode !== targetTopNode) {
- if (!isCopy) {
- if (!confirm("是否真的要把报表模板移动到另一个工程类型?")) {
- rst = false;
- }
- }
- } else {
- //同一根节点下,可以随便移动或copy
- }
- }
- } else {
- if (
- targetNode.level === 0 ||
- targetNode.nodeType !== RT.NodeType.TEMPLATE
- ) {
- //模板节点不能与类型节点或目录节点同级!
- rst = false;
- } else {
- if (sourceTopNode !== targetTopNode) {
- if (!isCopy) {
- if (!confirm("是否真的要把报表模板移动到另一个工程类型?")) {
- rst = false;
- }
- }
- } else {
- //同一根节点下,可以随便移动或copy
- }
- }
- }
- if (rst && !isCopy && sourceTopNode !== targetTopNode) {
- me.moveSrcTopNode = sourceTopNode;
- }
- return rst;
- },
- onDrop: function (event, treeId, treeNodes, targetNode, moveType, isCopy) {
- let me = zTreeOprObj;
- zTreeOprObj.treeObj.checkNode(treeNodes[0], false, false);
- treeNodes[0].released = false;
- // 拷贝后的uuid重复的问题
- if (isCopy) {
- treeNodes[0].UUID = `${new Date().getTime()}_${me.generateRandomString()}`;
- }
- let targetTopNode = me.getParentNodeByNodeLevel(
- targetNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let newTopNode = null;
- let canContinue = false;
- if (isCopy) {
- me.getNewNodeID(1, function (newNodeID) {
- let orgID = treeNodes[0].refId; //refId才是正确的模板ID(因可能copy一个有引用的节点),
- treeNodes[0].ID = newNodeID;
- if (confirm("是否引用相同的报表模板?")) {
- newTopNode = me.buildRootNodeDoc(targetTopNode);
- me.updateTreeRootNode(
- newTopNode,
- false,
- function (goodRst) {
- canContinue = true;
- if (treeNodes[0].rptTpl) {
- treeNodes[0].rptTpl.ID = newNodeID;
- }
- me.currentNode = treeNodes[0];
- me.chkAndSetDupRefTplIds(me.treeObj.getNodes(), null);
- me.treeObj.refresh();
- me.chkAndRreshRefTpl();
- },
- function (badRst) {
- displayMessage("更新模板节点失败!", "red", 2000);
- // console.log(badRst.toString());
- console.log(badRst);
- }
- );
- } else {
- treeNodes[0].refId = newNodeID;
- // targetNode.refId = newNodeID; //targetNode可以是父节点也可以是兄弟节点,没必要引用相同的tplID
- newTopNode = me.buildRootNodeDoc(targetTopNode);
- me.copyReportTemplate(
- orgID,
- newNodeID,
- true,
- function (goodResult) {
- me.updateTreeRootNode(
- newTopNode,
- true,
- function (goodRst) {
- canContinue = true;
- // treeObj.updateNode(nodes[0]);
- zTreeOprObj.treeObj.updateNode(treeNodes[0]);
- if (treeNodes[0].rptTpl) {
- treeNodes[0].rptTpl.ID = newNodeID;
- }
- me.currentNode = treeNodes[0];
- me.chkAndSetDupRefTplIds(me.treeObj.getNodes(), null);
- me.treeObj.refresh();
- me.chkAndRreshRefTpl();
- },
- function (badRst) {
- displayMessage("更新模板节点失败!", "red", 2000);
- // console.log(badRst.toString());
- console.log(badRst);
- }
- );
- },
- function (badResult) {
- displayMessage("Copy请求失败!", "red", 2000);
- // console.log(badResult.toString());
- console.log(badResult);
- }
- );
- }
- });
- // if (canContinue) {
- // me.chkAndRreshRefTpl();
- // }
- } else {
- newTopNode = me.buildRootNodeDoc(targetTopNode);
- me.updateTreeRootNode(
- newTopNode,
- false,
- function (rst) {
- canContinue = true;
- me.currentNode = treeNodes[0];
- },
- function (badResult) {
- displayMessage("移动请求失败!", "red", 2000);
- console.log(badResult.toString());
- canContinue = false;
- }
- );
- if (canContinue && !isCopy && me.moveSrcTopNode) {
- let newSrcTopNode = me.buildRootNodeDoc(me.moveSrcTopNode);
- me.updateTreeRootNode(
- newSrcTopNode,
- true,
- function (rst) {
- // canContinue = true;
- },
- function (badResult) {
- displayMessage("移动请求失败!", "red", 2000);
- canContinue = true;
- }
- );
- }
- me.moveSrcTopNode = null;
- }
- },
- addReportTemplate: function (newUsers) {
- let me = zTreeOprObj,
- params = {};
- params.compilationId = $("#compilations").get(0).value;
- params.userId = [];
- if (newUsers.length > 0) {
- for (let user of newUsers) {
- params.userId.push(user.userId);
- }
- }
- let allEngIds = [];
- for (let item of engineeringList) {
- allEngIds.push(item.value);
- }
- params.engineerId = allEngIds;
- CommonAjax.postEx(
- "report_tpl_api/getRptTplTree",
- params,
- 20000,
- true,
- function (result) {
- result.sort(function (item1, item2) {
- let rst = 0;
- if (item1.userId === item2.userId) {
- rst =
- item1.engineerId > item2.engineerId
- ? 1
- : item1.engineerId < item2.engineerId
- ? -1
- : 0;
- } else {
- if (item1.userId === "-100") {
- rst = 1;
- } else if (item2.userId === "-100") {
- rst = -1;
- } else {
- let idx1 = -1,
- idx2 = -1;
- for (let uidx = 0; uidx < newUsers.length; uidx++) {
- if (newUsers[uidx].userId === item1.userId) idx1 = uidx;
- if (newUsers[uidx].userId === item2.userId) idx2 = uidx;
- if (idx1 >= 0 && idx2 >= 0) {
- break;
- }
- rst = idx1 > idx2 ? 1 : idx1 < idx2 ? -1 : 0;
- }
- }
- }
- return rst;
- });
- let allTopUserIdNodes = [];
- let allTopTplNodes = [];
- for (let user of newUsers) {
- allTopUserIdNodes.push(user.userId);
- allTopTplNodes.push({
- userId: user.userId,
- name: user.real_name,
- items: [],
- isParent: true,
- });
- }
- for (let item of result) {
- let uidx = allTopUserIdNodes.indexOf(item.userId);
- if (uidx >= 0) {
- item.isParent = true;
- allTopTplNodes[uidx].items.push(item);
- }
- }
- // zTreeHelper.createTreeDirectly(allTopTplNodes, setting, "rptTplTree", me);
- //add template nodes
- let isSilent = false;
- me.treeObj.addNodes(null, -1, allTopTplNodes, isSilent);
- me.refreshNodes();
- let private_setup_checked = function (itemNode) {
- if (itemNode.nodeType === RT.NodeType.NODE) {
- me.treeObj.setChkDisabled(itemNode, true);
- } else if (itemNode.nodeType === RT.NodeType.TEMPLATE) {
- me.treeObj.checkNode(itemNode, !!itemNode.released);
- }
- if (itemNode.items && itemNode.items.length > 0) {
- for (let subItem of itemNode.items) {
- private_setup_checked(subItem);
- }
- }
- };
- let topNodes = me.treeObj.getNodes();
- // me.treeObj.expandAll(true);
- for (let node of topNodes) {
- me.treeObj.setChkDisabled(node, true);
- if (node.items && node.items.length > 0) {
- for (let item of node.items) {
- me.treeObj.setChkDisabled(item, true);
- private_setup_checked(item);
- }
- }
- }
- },
- null,
- null
- );
- },
- chkAndSetDupRefTplIds: function (tplNodes, selectedRefId) {
- let me = zTreeOprObj,
- tmpRefIds = [];
- me.dupTplIds = [];
- let private_get_dup_ids = function (tplNode) {
- if (tplNode.refId && tplNode.refId !== -1) {
- let refId = tplNode.refId;
- if (tmpRefIds.indexOf(refId) < 0) {
- tmpRefIds.push(refId);
- } else {
- if (me.dupTplIds.indexOf(refId) < 0) {
- me.dupTplIds.push(refId);
- } else {
- //
- }
- }
- }
- if (tplNode.items && tplNode.items.length > 0) {
- for (let subTplNode of tplNode.items) {
- private_get_dup_ids(subTplNode);
- }
- }
- };
- let private_set_dup_icon = function (tplNode) {
- if (me.dupTplIds.indexOf(tplNode.refId) >= 0) {
- // tplNode.icon = "../../../../lib/ztree/css/img/diy/3.png"; //or below:
- if (selectedRefId && selectedRefId === tplNode.refId) {
- tplNode.icon = "/lib/ztree/css/img/diy/5.png";
- } else {
- tplNode.icon = "/lib/ztree/css/img/diy/3.png";
- }
- // tplNode.style = "background:url(/lib/ztree/css/img/diy/3.png) 0 0 no-repeat;"
- } else {
- //设置白板
- // if (!tplNode.isParent) tplNode.icon = "/lib/ztree/css/img/diy/10.png";
- if (!tplNode.isParent) tplNode.className = "button ico_docu";
- }
- if (tplNode.items && tplNode.items.length > 0) {
- for (let subTplNode of tplNode.items) {
- private_set_dup_icon(subTplNode);
- }
- }
- };
- for (let tplNodeItem of tplNodes) {
- private_get_dup_ids(tplNodeItem);
- }
- for (let tplNodeItem of tplNodes) {
- private_set_dup_icon(tplNodeItem);
- }
- if (selectedRefId) {
- me.hasRefreshedDupRefIds = true;
- } else {
- me.hasRefreshedDupRefIds = false;
- }
- },
- getReportTemplateTreeEx: function (compilationSelect) {
- let me = zTreeOprObj,
- params = {};
- params.compilationId = compilationSelect.value;
- CommonAjax.postEx(
- "report_tpl_api/getTplTreeByCompilation",
- params,
- 20000,
- true,
- function (result) {
- result.sort(function (item1, item2) {
- let rst = 0;
- if (item1.userId === "-100") {
- rst = -1;
- } else if (item2.userId === "-100") {
- rst = 1;
- }
- return rst;
- });
- // me.chkAndSetDupRefTplIds(result);
- // console.log(dupRefIds);
- let allTopTplNodes = [
- {
- userId: "-100",
- name: "公共模板",
- items: [],
- isParent: true,
- refId: "",
- },
- ];
- if (result.length > 0) {
- if (!result[0].hasOwnProperty("refId")) {
- result[0].refId = "";
- }
- allTopTplNodes[0].items.push(result[0]);
- }
- let userIds = [];
- for (let idx = 1; idx < result.length; idx++) {
- let item = result[idx];
- if (!item.hasOwnProperty("refId")) {
- item.refId = "";
- }
- userIds.push(item.userId);
- }
- userListObj.findUsersByIds(userIds, function (userObjs) {
- for (let user of userObjs) {
- for (let itemIdx = 1; itemIdx < result.length; itemIdx++) {
- let item = result[itemIdx];
- if (item.userId === user._id) {
- allTopTplNodes.push({
- userId: user.userId,
- name: user.real_name,
- items: [],
- isParent: true,
- refId: "",
- });
- allTopTplNodes[allTopTplNodes.length - 1].items.push(
- result[itemIdx]
- );
- break;
- }
- }
- }
- zTreeHelper.createTreeDirectly(
- allTopTplNodes,
- setting,
- "rptTplTree",
- me
- );
- let topNodes = me.treeObj.getNodes();
- me.chkAndSetDupRefTplIds(topNodes, null);
- me.refreshNodes();
- let private_setup_checked = function (itemNode) {
- if (itemNode.nodeType === RT.NodeType.NODE) {
- me.treeObj.setChkDisabled(itemNode, true);
- } else if (itemNode.nodeType === RT.NodeType.TEMPLATE) {
- me.treeObj.checkNode(itemNode, !!itemNode.released);
- }
- if (itemNode.items && itemNode.items.length > 0) {
- for (let subItem of itemNode.items) {
- private_setup_checked(subItem);
- }
- }
- };
- me.treeObj.expandAll(true);
- for (let node of topNodes) {
- me.treeObj.setChkDisabled(node, true);
- if (node.items && node.items.length > 0) {
- for (let item of node.items) {
- me.treeObj.setChkDisabled(item, true);
- private_setup_checked(item);
- }
- }
- }
- // 同类表初始化
- associationOprObj.iniAssociateNodes(allTopTplNodes);
- });
- },
- null,
- null
- );
- },
- getNewNodeID: function (scope, callback) {
- let params = {};
- params.scope = scope;
- CommonAjax.postEx(
- "report_tpl_api/getNewNodeID",
- params,
- 5000,
- true,
- callback,
- null,
- null
- );
- },
- chkIfDupCompilationNode: function (rawNode, parentUserNode) {
- let rst = false;
- //在新的需求下,只需要检测编办与userId即可,无需工程id
- if (parentUserNode.items && parentUserNode.items.length > 0) {
- for (let node of parentUserNode.items) {
- if (
- node.compilationId === rawNode.compilationId &&
- node.userId === rawNode.userId
- ) {
- rst = true;
- break;
- }
- }
- }
- return rst;
- },
- createIniComilationNode: function () {
- //在新的需求下,无需工程id
- let rst = {
- compilationId: $("#compilations").get(0).selectedOptions[0].value,
- userId: userAccount === "admin" ? "-100" : userID,
- properties: [],
- released: true,
- isDeleted: false,
- items: [],
- name: $("#compilations").get(0).selectedOptions[0].innerText,
- };
- return rst;
- },
- onBeforeRemove: function (treeId, treeNode) {
- let canRemove = false;
- if (treeNode.level > NODE_LEVEL_USER) {
- if (!treeNode.items || treeNode.items.length < 1) {
- canRemove = confirm("请再确认您要删除!");
- } else {
- alert("含有子项,不能删除!");
- }
- } else {
- alert("不能删除用户级别模板!");
- }
- return canRemove;
- },
- onRemove: function (e, treeId, treeNode) {
- if (treeNode.level > NODE_LEVEL_USER) {
- let me = zTreeOprObj,
- topPNode = me.getParentNodeByNodeLevel(
- treeNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let rawNode = me.buildRootNodeDoc(topPNode, treeNode);
- if (treeNode.level === NODE_LEVEL_COMPILATION_NEW) {
- me.removeTreeRootNode(rawNode, true, function (rst) {
- if (!rst) {
- alert("删除请求失败!");
- }
- });
- } else {
- me.updateTreeRootNode(rawNode, true, function (rst) {
- if (!rst) {
- alert("删除请求失败!");
- }
- });
- }
- me.refreshNodes();
- }
- },
- beforeEditName: function (treeId, treeNode) {
- if (treeNode.level > NODE_LEVEL_COMPILATION_NEW) {
- setTimeout(function () {
- let ip = $("#" + treeNode.tId + IDMark_Input);
- if (ip.length > 0) {
- ip[0].className = "individualRename";
- } else {
- setTimeout(function () {
- let ip = $("#" + treeNode.tId + IDMark_Input);
- if (ip.length > 0) {
- ip[0].className = "individualRename";
- } else {
- console.log("sorry!");
- }
- }, 50);
- }
- }, 50);
- return true;
- } else {
- return false;
- }
- },
- beforeRename: function (treeId, treeNode, newName, isCancel) {
- if (newName.length === 0) {
- return false;
- }
- return true;
- },
- onRename: function (e, treeId, treeNode, isCancel) {
- if (!isCancel) {
- let me = zTreeOprObj;
- if (treeNode.level === 0) {
- //因结构变化,已经不允许更改顶节点名字
- } else {
- let subTopNode = me.getParentNodeByNodeLevel(
- treeNode,
- NODE_LEVEL_COMPILATION_NEW + 1
- );
- let topPNode = subTopNode.getParentNode();
- let rawNode = me.buildSubRootNodeDoc(subTopNode);
- me.updateSubNode(topPNode, rawNode, true, function (rst) {
- if (!rst) {
- alert("修改名称请求失败!");
- }
- });
- }
- }
- },
- onChangeFlag: function (flagProp, flagDom) {
- let me = zTreeOprObj;
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
- // 前端控制;
- if (flagProp === "sumLevelType") {
- if ($("#element_sumLv_flags").val() === "stageBackContrast") {
- $("#outputDesignDataBar").show();
- } else {
- $("#outputDesignDataBar").hide();
- }
- }
- if (!me.currentNode.hasOwnProperty("flags")) {
- me.currentNode.flags = {};
- }
- if (flagProp === "outputDesignData") {
- me.currentNode.flags[flagProp] = flagDom.checked;
- } else {
- me.currentNode.flags[flagProp] =
- flagDom.selectedOptions[0].value === "NA"
- ? null
- : flagDom.selectedOptions[0].value;
- }
- let subTopNode = me.getParentNodeByNodeLevel(
- me.currentNode,
- NODE_LEVEL_COMPILATION_NEW + 1
- );
- let topPNode = subTopNode.getParentNode();
- let rawNode = me.buildSubRootNodeDoc(subTopNode);
- me.updateSubNode(topPNode, rawNode, true, function (rst) {
- if (!rst) {
- alert("修改标记:[" + flagProp + "] 失败!");
- }
- });
- }
- },
- onMutiChangeFlag: function (flagProp, flagDom) {
- let me = zTreeOprObj;
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
- if (!me.currentNode.hasOwnProperty("flags")) {
- me.currentNode.flags = {};
- }
- me.currentNode.flags[flagProp] = flagDom[0].value.split(",");
- let subTopNode = me.getParentNodeByNodeLevel(
- me.currentNode,
- NODE_LEVEL_COMPILATION_NEW + 1
- );
- let topPNode = subTopNode.getParentNode();
- let rawNode = me.buildSubRootNodeDoc(subTopNode);
- me.updateSubNode(topPNode, rawNode, true, function (rst) {
- if (!rst) {
- alert("修改标记:[" + flagProp + "] 失败!");
- }
- });
- }
- },
- createNewTpl: function () {
- let me = zTreeOprObj,
- params = {};
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
- params.treeNodeId = me.currentNode.ID;
- let rptTypeId = common_rpt_type_ids.flow;
- if ($("#crossTypeOpt")[0].checked) rptTypeId = common_rpt_type_ids.cross;
- if ($("#billTypeOpt")[0].checked) rptTypeId = common_rpt_type_ids.bill;
- params.rptDftTplId = rptTypeId;
- params.rptName = me.currentNode.name;
- params.grpKey = me.getFolderText(me.currentNode, "_");
- me.currentNode.refId = me.currentNode.ID;
- let subTopNode = me.getParentNodeByNodeLevel(
- me.currentNode,
- NODE_LEVEL_COMPILATION_NEW + 1
- );
- let topPNode = me.getParentNodeByNodeLevel(
- subTopNode,
- NODE_LEVEL_COMPILATION_NEW
- );
- let rawNode = me.buildSubRootNodeDoc(subTopNode);
- params.compilationId = topPNode.compilationId;
- params.engineerId = topPNode.engineerId;
- params.userId = topPNode.userId;
- params.subNode = rawNode;
- CommonAjax.postEx(
- "report_tpl_api/createDftRptTpl",
- params,
- 10000,
- true,
- function (result) {
- if (result) {
- me.currentNode.rptTpl = result;
- me.chkAndRreshRefTpl();
- } else {
- alert("update error!");
- }
- },
- null,
- null
- );
- }
- },
- beforeClick: function (treeId, treeNode, clickFlag) {
- let me = zTreeOprObj;
- if (me.dupTplIds && me.dupTplIds.indexOf(treeNode.refId) >= 0) {
- let topNodes = me.treeObj.getNodes();
- me.chkAndSetDupRefTplIds(topNodes, treeNode.refId);
- me.refreshNodes();
- } else if (me.hasRefreshedDupRefIds) {
- let topNodes = me.treeObj.getNodes();
- me.chkAndSetDupRefTplIds(topNodes, null);
- me.refreshNodes();
- }
- return true;
- },
- onClick: function (event, treeId, treeNode) {
- let me = zTreeOprObj;
- me.currentNode = treeNode;
- bandTreeOprObj.currentNode = null;
- if (treeNode.nodeType === RT.NodeType.NODE) {
- $("#rpt_tpl_display_label")[0].innerText = "...";
- } else if (treeNode.nodeType === RT.NodeType.TEMPLATE) {
- let showText = me.getFolderText(me.currentNode, " > ");
- $("#rpt_tpl_display_label")[0].innerText = showText;
- if (treeNode.refId < 0) {
- //创建新报表模板
- $("#rptTypeSelectionModal").modal("show");
- } else {
- //显示报表模板
- me.chkAndRreshRefTpl(true);
- }
- associationOprObj.refreshNodes(me.currentNode);
- }
- },
- isFlowTpl: function () {
- let rst = false;
- let me = zTreeOprObj;
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
- rst = !!me.currentNode.rptTpl[JV.NODE_FLOW_INFO];
- }
- return rst;
- },
- isCrossTpl: function () {
- let rst = false;
- let me = zTreeOprObj;
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
- rst = !!me.currentNode.rptTpl[JV.NODE_CROSS_INFO];
- }
- return rst;
- },
- isBillTpl: function () {
- let rst = false;
- let me = zTreeOprObj;
- if (me.currentNode && me.currentNode.nodeType === RT.NodeType.TEMPLATE) {
- rst = !!me.currentNode.rptTpl[JV.NODE_BILL_INFO];
- }
- return rst;
- },
- getFolderText: function (treeNode, separator) {
- let rst = "";
- if (treeNode) {
- rst = treeNode.name;
- let parentNode = treeNode.getParentNode();
- while (parentNode !== null) {
- rst = parentNode.name + separator + rst;
- parentNode = parentNode.getParentNode();
- }
- }
- return rst;
- },
- chkAndRreshRefTpl: function (forceRefresh) {
- let me = zTreeOprObj,
- params = {};
- const valuationTypes = [
- "suggestion",
- "feasibility",
- "rough",
- "bill",
- "three_bill_budget",
- "ration",
- "changeBudget",
- "settlement",
- ];
- if (
- me.currentNode &&
- me.currentNode.nodeType === RT.NodeType.TEMPLATE &&
- me.currentNode.refId > 0
- ) {
- if (forceRefresh || !me.currentNode.rptTpl) {
- // 初始化dom
- // 该属性是根据项目汇总级别显示的
- $("#outputDesignDataBar").hide();
- $("#outputDesignData").attr("checked", false);
- // 初始化dom
- params.rptTplId = me.currentNode.refId;
- CommonAjax.postEx(
- "report_tpl_api/getRefRptTpl",
- params,
- 20000,
- true,
- function (result) {
- me.currentNode.rptTpl = result;
- me.currentNode.rptTpl[JV.NODE_MAIN_INFO][
- JV.NODE_MAIN_INFO_RPT_NAME
- ] = me.currentNode.name;
- if (me.currentNode.rptTpl["GROUP_KEY"]) {
- let grp_keys = me.currentNode.rptTpl["GROUP_KEY"].split("_");
- if (grp_keys.length > 0) {
- grp_keys[1] = me.currentNode.name;
- }
- me.currentNode.rptTpl["GROUP_KEY"] = grp_keys.join("_");
- }
- tplHelper.refreshTplView(me.currentNode.rptTpl);
- if (me.currentNode.hasOwnProperty("flags")) {
- if (me.currentNode.flags.hasOwnProperty("taxType")) {
- let val = parseInt(me.currentNode.flags["taxType"]);
- $("#element_flags_select")[0].selectedIndex = val;
- } else {
- $("#element_flags_select")[0].selectedIndex = 0;
- }
- $("#valuationSelector").hide();
- if (me.currentNode.flags.hasOwnProperty("valuationType")) {
- $(".mutiSelector").find("li").removeClass("checked");
- let valuationTypeStr = "";
- let valuationTypeStrList = [];
- let vType = me.currentNode.flags["valuationType"];
- // let vtIdx = valuationTypes.indexOf(vType);
- // $("#element_prjFlags_select")[0].selectedIndex = vtIdx + 1;
- if (vType instanceof Array) {
- for (let i = 0; i < vType.length; i++) {
- $("#valuationSelector_" + vType[i]).addClass("checked");
- valuationTypeStrList.push(
- valuationSelectorMap["valuationSelector_" + vType[i]]
- );
- }
- valuationTypeStr = valuationTypeStrList.join(",");
- } else if (vType) {
- $("#valuationSelector_" + vType).addClass("checked");
- valuationTypeStr =
- valuationSelectorMap["valuationSelector_" + vType];
- }
- $("#element_prjFlags_select")[0].value = vType;
- $("#element_prjFlags_selectStr")[0].value = valuationTypeStr;
- } else {
- $("#element_prjFlags_select")[0].value = "";
- $("#element_prjFlags_selectStr")[0].value = "";
- $("#valuationSelector .mutiSelector li").removeClass("checked");
- }
- if (me.currentNode.flags.hasOwnProperty("reportType")) {
- let rType = me.currentNode.flags["reportType"];
- if (rType === "billSummary")
- $("#element_rptFlags_select")[0].selectedIndex = 1;
- else if (rType === "gljSummary")
- $("#element_rptFlags_select")[0].selectedIndex = 2;
- else $("#element_rptFlags_select")[0].selectedIndex = 0;
- } else {
- $("#element_rptFlags_select")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("sumLevelType")) {
- let sumLvType = me.currentNode.flags["sumLevelType"];
- if (sumLvType === "construct")
- $("#element_sumLv_flags")[0].selectedIndex = 1;
- else if (sumLvType === "Single")
- $("#element_sumLv_flags")[0].selectedIndex = 2;
- else if (sumLvType === "custom")
- $("#element_sumLv_flags")[0].selectedIndex = 3;
- else if (sumLvType === "unitPriceContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 4;
- else if (sumLvType === "stageUnitContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 5;
- else if (sumLvType === "stageUnitFontContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 6;
- else if (sumLvType === "stageUnitBackContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 7;
- else if (sumLvType === "stageContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 8;
- else if (sumLvType === "stageGLJContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 9;
- else if (sumLvType === "stageBackContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 10;
- else if (sumLvType === "stageMultipleUnitContrast")
- $("#element_sumLv_flags")[0].selectedIndex = 11;
- else if (sumLvType === "complexUnit")
- $("#element_sumLv_flags")[0].selectedIndex = 12;
- else if (sumLvType === "complexConstruct")
- $("#element_sumLv_flags")[0].selectedIndex = 13;
- else if (sumLvType === "complexConstructMultiple")
- $("#element_sumLv_flags")[0].selectedIndex = 14;
- else if (sumLvType === "complexSelfConstructMultiple")
- $("#element_sumLv_flags")[0].selectedIndex = 15;
- else if (sumLvType === "businessSummary")
- $("#element_sumLv_flags")[0].selectedIndex = 16;
- else if (sumLvType === "changeProjectSummary")
- $("#element_sumLv_flags")[0].selectedIndex = 17;
- else if (sumLvType === "changeProjectGljSummary")
- $("#element_sumLv_flags")[0].selectedIndex = 18;
- else {
- $("#element_sumLv_flags")[0].selectedIndex = 0;
- }
- $("#outputDesignDataBar").show();
- if (me.currentNode.flags.hasOwnProperty("outputDesignData")) {
- if (me.currentNode.flags.outputDesignData) {
- $("#outputDesignData").attr("checked", true);
- } else {
- $("#outputDesignData").attr("checked", false);
- }
- }
- } else {
- $("#element_sumLv_flags")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("contrastType")) {
- let contrastType = me.currentNode.flags["contrastType"];
- if (contrastType === "chapter")
- $("#element_contrastType_select")[0].selectedIndex = 1;
- else if (contrastType === "bill")
- $("#element_contrastType_select")[0].selectedIndex = 2;
- else if (contrastType === "quantities")
- $("#element_contrastType_select")[0].selectedIndex = 3;
- else $("#element_contrastType_select")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("existLevel")) {
- let existLevel = me.currentNode.flags["existLevel"];
- if (existLevel === "true") {
- $("#element_existLevel_select")[0].selectedIndex = 1;
- } else if (existLevel === "false") {
- $("#element_existLevel_select")[0].selectedIndex = 2;
- } else {
- $("#element_existLevel_select")[0].selectedIndex = 0;
- }
- } else {
- $("#element_existLevel_select")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("existSummaryRule")) {
- let existSummaryRule = me.currentNode.flags["existSummaryRule"];
- if (existSummaryRule === "true") {
- $("#element_summaryRule_select")[0].selectedIndex = 1;
- } else if (existSummaryRule === "false") {
- $("#element_summaryRule_select")[0].selectedIndex = 2;
- } else {
- $("#element_summaryRule_select")[0].selectedIndex = 0;
- }
- } else {
- $("#element_summaryRule_select")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("constructSumType")) {
- let val = me.currentNode.flags["constructSumType"];
- if (val === "constructSum") {
- $("#element_constructSumFlags_select")[0].selectedIndex = 1;
- } else {
- $("#element_constructSumFlags_select")[0].selectedIndex = 0;
- }
- } else {
- $("#element_constructSumFlags_select")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("rptTplType")) {
- let val = me.currentNode.flags["rptTplType"];
- if (val === "construct") {
- $("#element_Flags_tplType")[0].selectedIndex = 1;
- } else if (val === "single") {
- $("#element_Flags_tplType")[0].selectedIndex = 2;
- } else if (val === "unit") {
- $("#element_Flags_tplType")[0].selectedIndex = 3;
- } else {
- $("#element_Flags_tplType")[0].selectedIndex = 0;
- }
- }
- if (me.currentNode.flags.hasOwnProperty("auditType")) {
- let val = me.currentNode.flags["auditType"];
- if (val === "project_compare") {
- $("#element_constructSumFlags_audit")[0].selectedIndex = 1;
- } else {
- $("#element_constructSumFlags_audit")[0].selectedIndex = 0;
- }
- } else {
- $("#element_constructSumFlags_audit")[0].selectedIndex = 0;
- }
- if (me.currentNode.flags.hasOwnProperty("costIndexType")) {
- let val = me.currentNode.flags["costIndexType"];
- if (val === "mainScaleContrast") {
- $("#element_costIndexFlags_audit")[0].selectedIndex = 1;
- } else if (val === "mainScaleContrastThree") {
- $("#element_costIndexFlags_audit")[0].selectedIndex = 2;
- } else {
- $("#element_costIndexFlags_audit")[0].selectedIndex = 0;
- }
- } else {
- $("#element_costIndexFlags_audit")[0].selectedIndex = 0;
- }
- } else {
- $("#element_flags_select")[0].selectedIndex = 0;
- $("#element_prjFlags_select")[0].selectedIndex = 0;
- $("#element_sumLv_flags")[0].selectedIndex = 0;
- $("#element_constructSumFlags_select")[0].selectedIndex = 0;
- // 清空工程类型
- $("#valuationSelector").hide();
- $("#element_prjFlags_select")[0].value = "";
- $("#element_prjFlags_selectStr")[0].value = "";
- $("#valuationSelector .mutiSelector li").removeClass("checked");
- $("#element_existLevel_select")[0].selectedIndex = 0;
- $("#element_Flags_tplType")[0].selectedIndex = 0;
- $("#element_costIndexFlags_audit")[0].selectedIndex = 0;
- $("#select_aid_report_data_select")[0].selectedIndex = 0;
- }
- if (
- $("#rpt_tpl_visual_tab")[0].className === "nav-link p-1 active"
- ) {
- setTimeout(function () {
- visualJumbo.iniSpreadJs();
- visualJumbo.setupTpl();
- }, 50);
- }
- },
- null,
- null
- );
- // 获取含量指标模板列表
- CommonAjax.postEx(
- "report_tpl_api/getAidReportDataList",
- { compilationID: $("#compilations").val() },
- 20000,
- true,
- function (result) {
- $("#select_aid_report_data_select").empty();
- $("#select_aid_report_data_select").append(
- `<option value=""> </option>`
- );
- result.forEach((i) => {
- if (i.aidReportID) {
- $("#select_aid_report_data_select").append(
- `<option value="${i.aidReportID}">${i.aidReportName}</option>`
- );
- }
- });
- if (me.currentNode.flags?.hasOwnProperty("aidReportID")) {
- let val = me.currentNode.flags["aidReportID"];
- $("#select_aid_report_data_select").val(val);
- }
- },
- null,
- null
- );
- } else {
- me.currentNode.rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MAIN_INFO_RPT_NAME] =
- me.currentNode.name;
- tplHelper.refreshTplView(me.currentNode.rptTpl);
- if ($("#rpt_tpl_visual_tab")[0].className === "nav-link p-1 active") {
- setTimeout(function () {
- visualJumbo.iniSpreadJs();
- visualJumbo.setupTpl();
- }, 50);
- }
- }
- }
- },
- getRefTpl: function () {
- let me = zTreeOprObj,
- rst = null;
- if (
- me.currentNode &&
- me.currentNode.nodeType === RT.NodeType.TEMPLATE &&
- me.currentNode.refId > 0
- ) {
- rst = me.currentNode.rptTpl;
- }
- return rst;
- },
- changeProperty: function (propStr, dom) {
- let me = zTreeOprObj;
- if (me.currentNode && me.currentNode.rptTpl) {
- let props = propStr.split(".");
- let lastProp = me.currentNode.rptTpl;
- for (let idx = 1; idx < props.length; idx++) {
- lastProp = lastProp[props[idx - 1]];
- }
- lastProp[props[props.length - 1]] = dom.value;
- }
- },
- extractMainInfo: function (rptTpl) {
- //模板信息
- rptTpl[JV.NODE_MAIN_INFO][JV.NODE_MAIN_INFO_RPT_NAME] =
- $("#rptTplName")[0].value;
- rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE] =
- JV.PAGES_SIZE_STR[$("#rptTplPageSize")[0].selectedIndex];
- if ($("#rptTplPageOrientation")[0].selectedIndex === 1) {
- rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_ORIENTATION] =
- JV.ORIENTATION_PORTRAIT;
- } else {
- rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_ORIENTATION] =
- JV.ORIENTATION_LANDSCAPE;
- }
- if (rptTpl[JV.NODE_FLOW_INFO]) {
- rptTpl[JV.NODE_FLOW_INFO][JV.PROP_MULTI_COLUMN] = parseInt(
- $("#rptTplMultiCols")[0].value
- );
- rptTpl[JV.NODE_FLOW_INFO][JV.PROP_ERASE_BLANK_ROWS] =
- $("#rptTplEraseBlankRows").get(0).checked || false;
- }
- rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_CROSS_DISPLAY_ORDER] =
- $("#element_cross_display_seq")[0].selectedIndex;
- //考虑到页边距必然跟用户设置走,所以这里没必要特意去设置了,全部下架
- },
- getParentNodeByNodeLevel: function (currentNode, level) {
- let rst = currentNode;
- while (rst !== null) {
- if (rst.level <= level) {
- break;
- } else {
- rst = rst.getParentNode();
- }
- }
- return rst;
- },
- };
- let userListObj = {
- foundedUserList: [],
- UserIdList: [],
- pushUser: function (user, newUsers) {
- let me = userListObj;
- if (me.UserIdList.indexOf(user._id) < 0) {
- me.UserIdList.push(user._id);
- let newUser = {
- userId: user._id,
- real_name: user.real_name,
- username: user.username,
- mobile: user.mobile,
- };
- me.foundedUserList.push(newUser);
- if (newUsers) {
- newUsers.push(newUser);
- }
- }
- },
- findUser: function () {
- let key = $("#rpt_user_input1").get(0).value;
- let newUsers = [];
- $.ajax({
- type: "GET",
- url: "user/search?keyword=" + key,
- cache: false,
- timeout: 5000,
- success: function (result) {
- if (result.data && result.data.length > 0) {
- for (let user of result.data) {
- userListObj.pushUser(user, newUsers);
- }
- if (newUsers.length > 0) {
- zTreeOprObj.addReportTemplate(newUsers);
- }
- }
- },
- error: function (jqXHR, textStatus, errorThrown) {},
- });
- },
- findUsersByIds: function (userIds, cb) {
- let params = {};
- params.userIds = userIds;
- CommonAjax.postEx(
- "user/getUserList",
- params,
- 20000,
- true,
- function (result) {
- for (let user of result) {
- userListObj.pushUser(user, null);
- }
- if (cb) {
- cb(result);
- }
- },
- null,
- null
- );
- },
- };
- function displayMessage(message, color, disappearTime, id) {
- let domId = id;
- if (!domId) domId = "id_after_saved_lbl";
- $("#" + domId)[0].style.color = color;
- $("#" + domId)[0].innerHTML = message;
- setTimeout(function () {
- $("#" + domId)[0].innerHTML = "";
- }, disappearTime);
- }
- $("#element_prjFlags_selectStr").on("click", function () {
- if ($("#valuationSelector").visible) {
- $("#valuationSelector").hide();
- } else {
- $("#valuationSelector").show();
- }
- return false;
- });
- $("#rpttplinfo").on("click", function () {
- $("#valuationSelector").hide();
- });
- $(".mutiSelector")
- .find("li")
- .on("click", function (e) {
- const hasChecked = $(this).hasClass("checked");
- if (hasChecked) {
- $(this).removeClass("checked");
- } else {
- $(this).addClass("checked");
- }
- const resultIDList = [];
- const resultList = [];
- $(".mutiSelector .checked").each(function (index, value) {
- resultList.push(valuationSelectorMap[$(value).attr("id")]);
- resultIDList.push($(value).attr("value"));
- });
- const result = resultList.join(",");
- $("#element_prjFlags_selectStr").val(result);
- $("#element_prjFlags_select").val(resultIDList);
- zTreeOprObj.onMutiChangeFlag(
- "valuationType",
- $("#element_prjFlags_select")
- );
- return false;
- });
|