فهرست منبع

变更令表模板过滤调整

Tony Kang 1 سال پیش
والد
کامیت
74a3dd7f69
2فایلهای تغییر یافته به همراه12 افزوده شده و 21 حذف شده
  1. 10 19
      app/controller/report_controller.js
  2. 2 2
      app/view/report/index.ejs

+ 10 - 19
app/controller/report_controller.js

@@ -712,12 +712,6 @@ module.exports = app => {
                 const orders = ctx.query.order ? ctx.query.order : 0;
                 const state = ctx.session.sessionProject.page_show.openChangeState && ctx.query.state ? parseInt(ctx.query.state) : 0;
                 const changes = await ctx.service.change.getListByStatus(tenderId, 0, 1, sorts, orders, state);
-                // console.log(changes);
-                // 加一个dummy的通用报表
-                // const dummyCommonRptNode = { id: 1, name: '通用报表', pid: -1, rpt_type: 0, items: JSON.stringify(commonArrs) };
-                // treeNodes.push(dummyCommonRptNode);
-                // const custTreeNodes = await ctx.service.rptTreeNodeCust.getCustFoldersByUserId(this.ctx.session.sessionUser.accountId);
-                // const custCfg = await ctx.service.rptCustomizeCfg.getCustomizeCfgByUserId('Administrator');
                 const stageList = [];
                 const unitList = await ctx.service.constructionUnit.getAllDataByCondition({ where: { pid } }); // 找公司章用的
                 const isAdmin = ctx.session.sessionUser.is_admin;
@@ -764,20 +758,17 @@ module.exports = app => {
                 }
                 const cust_select_keys = JSON.stringify(['common_dynamic', 'customize_dynamic']); // 因其他地方也有可能保存用户报表的显示选择项,因当初设计问题,不好改数据库结构了,但可以调节内部json来满足需求
                 const rpt_tpl_items = { customize: [], common: [] };
-                const custTreeNodes = await ctx.service.rptTreeNodeCust.getCustFoldersByUserId(this.ctx.session.sessionUser.accountId);
-                if (custTreeNodes.length > 0) {
-                    const cust_select_item = JSON.parse(custTreeNodes[0].rpt_tpl_items);
-                    if (cust_select_item.common_dynamic) rpt_tpl_items.common = cust_select_item.common_dynamic;
-                    if (cust_select_item.customize_dynamic) rpt_tpl_items.customize = cust_select_item.customize_dynamic;
-                    if (!cust_select_item.hasOwnProperty('common_dynamic') && !cust_select_item.hasOwnProperty('customize_dynamic')) {
-                        commonArrs.forEach(item => {
-                            rpt_tpl_items.common.push(item.name);
-                        });
+                if (treeNodes && treeNodes.length > 0) {
+                    for (let tIdx = treeNodes.length - 1; tIdx >= 0; tIdx--) {
+                        if (treeNodes[tIdx].name === '通用报表') {
+                            const items = JSON.parse(treeNodes[tIdx].items);
+                            for (let itemIdx = items.length - 1; itemIdx >= 0; itemIdx--) {
+                                rpt_tpl_items.common.push(items[itemIdx].name);
+                            }
+                        } else {
+                            rpt_tpl_items.customize.push(treeNodes[tIdx].name);
+                        }
                     }
-                } else {
-                    commonArrs.forEach(item => {
-                        rpt_tpl_items.common.push(item.name);
-                    });
                 }
 
                 // 获取所有项目参与者

+ 2 - 2
app/view/report/index.ejs

@@ -389,7 +389,7 @@
     const BUDGET_ID = <%- budget_id %>;
     const CHNAGE_ID = '<%- changeId %>';
     const SP_ID = '<%- sp_id %>';
-    let SOURCE_TYPE = <%- source_type %>;
+    const SOURCE_TYPE = <%- source_type %>;
     const ALL_CHANGES = <%- changes %>;
     const PAGE_SHOW = {closeWatermark: 0, closeExportPdf: 0, closeExportExcel: 0, showArchive: 0, closeShowAllCustomized: 0, isTextSignature: 0, closeArchiveSignature: 0};
     <% if (pageShow !== null) { %>
@@ -561,7 +561,7 @@
                     TOP_TREE_NODES.splice(tnIdx, 1);
                 }
             }
-            if (TOP_TREE_NODES.length > 0 && SOURCE_TYPE === 1) {
+            if (TOP_TREE_NODES.length > 0) {
                 // 1.1 移除未被选择的模板
                 filterUnchkTplTreeNode(TOP_TREE_NODES[0], CUST_TREE_NODES.common);
                 TOP_TREE_NODES.unshift(individualNode); //定制在前