浏览代码

Merge branch 'dev' of http://192.168.1.41:3000/maixinrong/Calculation into dev

Tony Kang 1 年之前
父节点
当前提交
7505953813
共有 3 个文件被更改,包括 31 次插入22 次删除
  1. 23 18
      app/public/js/revise.js
  2. 2 2
      app/service/report_memory.js
  3. 6 2
      app/service/rpt_gather_memory.js

+ 23 - 18
app/public/js/revise.js

@@ -225,10 +225,10 @@ $(document).ready(() => {
         },
         getDefaultSelectInfo: function (sheet) {
             const tree = sheet.zh_tree;
-            if (!tree) return;
+            if (!tree) return [];
             const sel = sheet.getSelections()[0];
             const node = sheet.zh_tree.nodes[sel.row];
-            if (!node) return;
+            if (!node) return [];
             let count = 1;
             if (sel.rowCount > 1) {
                 for (let r = 1; r < sel.rowCount; r++) {
@@ -236,7 +236,7 @@ $(document).ready(() => {
                     if (rNode.level > node.level) continue;
                     if ((rNode.level < node.level) || (rNode.level === node.level && rNode.pid !== node.pid)) {
                         toastr.warning('请选择同一节点下的节点,进行该操作');
-                        return;
+                        return [];
                     }
                     count += 1;
                 }
@@ -399,21 +399,26 @@ $(document).ready(() => {
                         return;
                     }
                 }
-            // } else if (type === 'up-level') {
-            //     const parent = tree.getParent(node);
-            //     const children = parent ? parent.children : tree.children;
-            //     const index = children.indexOf(node);
-            //     for (let i = index; i < children.length; i++) {
-            //         const child = children[index];
-            //         if (tree.checkNodeUsed(child, pos)) {
-            //             if (i >= index + count) {
-            //                 toastr.warning('其后节点已计量,选中的节点不可升级');
-            //             } else {
-            //                 toastr.warning('选中的节点已计量,不可升级');
-            //             }
-            //             return;
-            //         }
-            //     }
+            } else if (type === 'up-level') {
+                const parent = tree.getParent(node);
+                const children = parent ? parent.children : tree.children;
+                const index = children.indexOf(node);
+                const lastSelect = children[index + count - 1];
+                if (tree.checkNodeUsed(lastSelect, pos) && (!lastSelect.children || lastSelect.children.length === 0) && (children.length > index + count)) {
+                    toastr.warning('选中的节点已计量,不可升级');
+                    return;
+                }
+                // for (let i = index; i < children.length; i++) {
+                //     const child = children[index];
+                //     if (tree.checkNodeUsed(child, pos)) {
+                //         if (i >= index + count) {
+                //             toastr.warning('其后节点已计量,选中的节点不可升级');
+                //         } else {
+                //             toastr.warning('选中的节点已计量,不可升级');
+                //         }
+                //         return;
+                //     }
+                // }
             } else if (type === 'down-level') {
                 const parent = tree.getParent(node);
                 const children = parent ? parent.children : tree.children;

+ 2 - 2
app/service/report_memory.js

@@ -543,7 +543,7 @@ module.exports = app => {
                     ? await this._loadStageBillsYear(this.ctx.tender, this.ctx.stage.s_time.split('-')[0])
                     : [];
                 const changeData = this._checkFieldsExistReg(fields, 'due_')
-                    ? await ctx.service.changeAuditList.getBillsSum(this.ctx.tender.id)
+                    ? await this.ctx.service.changeAuditList.getBillsSum(this.ctx.tender.id)
                     : [];
                 this.ctx.helper.assignRelaData(billsData, [
                     { data: memoData, fields: ['memo'], prefix: '', relaId: 'id' },
@@ -628,7 +628,7 @@ module.exports = app => {
                     prePosStage = this.ctx.stage.order > 1 ? await this.ctx.service.stagePosFinal.getFinalData(this.ctx.tender, this.ctx.stage.order - 1) : [];
                 }
                 const changeData = this._checkFieldsExistReg(fields, 'due_')
-                    ? await ctx.service.changeAuditList.getPosSum(this.ctx.tender.id)
+                    ? await this.ctx.service.changeAuditList.getPosSum(this.ctx.tender.id)
                     : [];
                 this.ctx.helper.assignRelaData(posData, [
                     {data: curPosStage, fields: ['contract_qty', 'qc_qty', 'qc_minus_qty', 'contract_expr', 'postil'], prefix: '', relaId: 'pid'},

+ 6 - 2
app/service/rpt_gather_memory.js

@@ -72,6 +72,7 @@ const gatherUtils = {
 
         gatherNode[prefix + "due_qc_qty"] = helper.add(gatherNode[prefix + "due_qc_qty"], sourceNode.due_qc_qty);
         gatherNode[prefix + "due_qc_tp"] = helper.add(gatherNode[prefix + "due_qc_tp"], sourceNode.due_qc_tp);
+        gatherNode[prefix + "due_qc_minus_qty"] = helper.add(gatherNode[prefix + "due_qc_minus_qty"], sourceNode.due_qc_minus_qty);
         gatherNode[prefix + "due_final_qty"] = helper.add(gatherNode[prefix + "due_final_qty"], sourceNode.due_final_qty);
         gatherNode[prefix + "due_final_tp"] = helper.add(gatherNode[prefix + "due_final_tp"], sourceNode.due_final_tp);
 
@@ -112,6 +113,7 @@ const gatherUtils = {
 
         gatherNode.s_due_qc_qty = helper.add(gatherNode.s_due_qc_qty, sourceNode.due_qc_qty);
         gatherNode.s_due_qc_tp = helper.add(gatherNode.s_due_qc_tp, sourceNode.due_qc_tp);
+        gatherNode.s_due_qc_minus_qty = helper.add(gatherNode.s_due_qc_minus_qty, sourceNode.due_qc_minus_qty);
         gatherNode.s_due_final_qty = helper.add(gatherNode.s_due_final_qty, sourceNode.due_final_qty);
         gatherNode.s_due_final_tp = helper.add(gatherNode.s_due_final_tp, sourceNode.due_final_tp);
     },
@@ -200,6 +202,7 @@ const gatherUtils = {
 
         gatherNode[prefix + "due_qc_qty"] = helper.add(gatherNode[prefix + "due_qc_qty"], sourceNode.due_qc_qty);
         gatherNode[prefix + "due_final_qty"] = helper.add(gatherNode[prefix + "due_final_qty"], sourceNode.due_final_qty);
+        gatherNode[prefix + "due_qc_minus_qty"] = helper.add(gatherNode[prefix + "due_qc_minus_qty"], sourceNode.due_qc_minus_qty);
 
         gatherNode.s_qty = helper.add(gatherNode.s_qty, sourceNode.quantity);
 
@@ -217,6 +220,7 @@ const gatherUtils = {
 
         gatherNode.s_due_qc_qty = helper.add(gatherNode.s_due_qc_qty, sourceNode.due_qc_qty);
         gatherNode.s_due_final_qty = helper.add(gatherNode.s_due_final_qty, sourceNode.due_final_qty);
+        gatherNode.s_due_qc_minus_qty = helper.add(gatherNode.s_due_qc_minus_qty, sourceNode.due_qc_minus_qty);
     },
     gatherZonePos: function (tender, gatherNode, sourceNode, prefix, helper) {
         gatherNode[prefix + 'id'] = tender.id;
@@ -581,7 +585,7 @@ module.exports = app => {
             });
             const billsData = await this.ctx.service.ledger.getData(tender.id);
             const dgnData = await this.ctx.service.stageBillsDgn.getDgnData(tender.id);
-            const changeBillsData = await this.ctx.service.changeAuditList.getBillsSum(this.ctx.tender.id);
+            const changeBillsData = await this.ctx.service.changeAuditList.getBillsSum(tender.id);
             this.ctx.helper.assignRelaData(billsData, [
                 { data: dgnData, fields: ['deal_dgn_qty1', 'deal_dgn_qty2', 'c_dgn_qty1', 'c_dgn_qty2'], prefix: '', relaId: 'id' },
                 { data: changeBillsData, fields: ['qc_qty', 'qc_tp', 'qc_minus_qty'], prefix: 'due_', relaId: 'gcl_id' },
@@ -598,7 +602,7 @@ module.exports = app => {
                 },
             });
             const posData = await this.ctx.service.pos.getPosData({ tid: tender.id });
-            const changePosData = await this.ctx.service.changeAuditList.getPosSum(this.ctx.tender.id);
+            const changePosData = await this.ctx.service.changeAuditList.getPosSum(tender.id);
             this.ctx.helper.assignRelaData(posData, [
                 { data: changePosData, fields: ['qc_qty', 'qc_minus_qty'], prefix: 'due_', relaId: 'mx_id' },
             ]);