Ver código fonte

台账修订,单价调整,总额计量部分不补差

MaiXinRong 2 anos atrás
pai
commit
424bbfc222
2 arquivos alterados com 10 adições e 10 exclusões
  1. 10 9
      app/lib/revise_price.js
  2. 0 1
      app/public/js/tender_showhide.js

+ 10 - 9
app/lib/revise_price.js

@@ -57,6 +57,7 @@ class revisePriceCalc {
         const decimal = this.ctx.tender.info.decimal;
         billsTree.calculateAll(node => {
             if (!node.pre_id) return;
+            if (!node.pre_contract_qty && !node.pre_qc_qty) return;
             if (node.children && node.children.length > 0) return;
             const priceDiff = helper.sub(node.unit_price, node.pre_unit_price);
             if (!priceDiff) return;
@@ -119,7 +120,7 @@ class revisePriceCalc {
             if (node.children && node.children.length > 0) return;
             const priceDiff = helper.sub(node.unit_price, node.pre_unit_price);
             if (!priceDiff) return;
-            if (node.cur_id) {
+            if (node.cur_id && (node.cur_contract_qty || node.cur_qc_qty)) {
                 node.cur_contract_tp = helper.mul(node.cur_contract_qty, node.unit_price, decimal.tp);
                 node.cur_qc_tp = helper.mul(node.cur_qc_qty, node.unit_price, decimal.tp);
                 node.cur_positive_qc_tp = helper.mul(node.cur_positive_qc_qty, node.unit_price, decimal.tp);
@@ -135,7 +136,7 @@ class revisePriceCalc {
                     postil: node.postil,
                 });
             }
-            if (node.pre_id) {
+            if (node.pre_id && (node.pre_contract_qty || node.pre_qc_qty)) {
                 node.contract_pc_tp = helper.sub(helper.mul(node.pre_contract_qty, node.unit_price, decimal.tp), node.pre_contract_tp);
                 node.qc_pc_tp = helper.sub(helper.mul(node.pre_qc_qty, node.unit_price, decimal.tp), node.pre_qc_tp);
                 node.pc_tp = helper.add(node.contract_pc_tp, node.qc_pc_tp);
@@ -237,12 +238,7 @@ class revisePriceCalc {
             if (node.children && node.children.length > 0) return;
             const priceDiff = helper.sub(node.unit_price, node.pre_unit_price);
             if (!priceDiff) return;
-            node.contract_pc_tp = helper.sub(helper.mul(node.pre_contract_qty, node.unit_price, decimal.tp), node.pre_contract_tp);
-            node.qc_pc_tp = helper.sub(helper.mul(node.pre_qc_qty, node.unit_price, decimal.tp), node.pre_qc_tp);
-            node.pc_tp = helper.add(node.contract_pc_tp, node.qc_pc_tp);
-            node.positive_qc_pc_tp = helper.sub(helper.mul(node.pre_positive_qc_qty, node.unit_price, decimal.tp), node.pre_positive_qc_tp);
-            node.negative_qc_pc_tp = helper.sub(helper.mul(node.pre_negative_qc_qty, node.unit_price, decimal.tp), node.pre_negative_qc_tp);
-            if (node.cur_id) {
+            if (node.cur_id && (node.cur_contract_qty || node.cur_qc_qty)) {
                 node.cur_contract_tp = helper.mul(node.cur_contract_qty, node.unit_price, decimal.tp);
                 node.cur_qc_tp = helper.mul(node.cur_qc_qty, node.unit_price, decimal.tp);
                 node.cur_positive_qc_tp = helper.mul(node.cur_positive_qc_qty, node.unit_price, decimal.tp);
@@ -265,7 +261,12 @@ class revisePriceCalc {
                     });
                 }
             }
-            if (node.pre_id) {
+            if (node.pre_id && (node.pre_contract_qty || node.pre_qc_qty)) {
+                node.contract_pc_tp = helper.sub(helper.mul(node.pre_contract_qty, node.unit_price, decimal.tp), node.pre_contract_tp);
+                node.qc_pc_tp = helper.sub(helper.mul(node.pre_qc_qty, node.unit_price, decimal.tp), node.pre_qc_tp);
+                node.pc_tp = helper.add(node.contract_pc_tp, node.qc_pc_tp);
+                node.positive_qc_pc_tp = helper.sub(helper.mul(node.pre_positive_qc_qty, node.unit_price, decimal.tp), node.pre_positive_qc_tp);
+                node.negative_qc_pc_tp = helper.sub(helper.mul(node.pre_negative_qc_qty, node.unit_price, decimal.tp), node.pre_negative_qc_tp);
                 result.bpcData.push({
                     tid: stage.tid, sid: stage.id, sorder: stage.order, lid: node.id, org_price: node.pre_unit_price, unit_price: node.unit_price,
                     contract_pc_tp: node.contract_pc_tp, qc_pc_tp: node.qc_pc_tp, pc_tp: node.pc_tp,

+ 0 - 1
app/public/js/tender_showhide.js

@@ -232,7 +232,6 @@ $(document).ready(() => {
             },
         ],
         showLevel: function (tag) {
-
             switch (tag) {
                 case "1":
                 case "2":