瀏覽代碼

先取6位,再取2位。解决 4145474.1249999995 取2位精度的四舍五入问题。

chenshilong 2 年之前
父節點
當前提交
c73785bfaf
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      web/building_saas/main/js/models/calc_program.js

+ 4 - 1
web/building_saas/main/js/models/calc_program.js

@@ -2145,10 +2145,13 @@ class CalcProgram {
     let nTQ = calcTools.uiNodeTenderQty(treeNode) ? calcTools.uiNodeTenderQty(treeNode) : 1;
 
     if (treeNode.calcType == treeNodeCalcType.ctRationCalcProgram) {
+      debugger;
       // 量价、工料机类型的定额要求"市场合价"
       if (calcTools.isVP_or_GLJR(treeNode)) {
         let u = treeNode.data.marketUnitFee ? treeNode.data.marketUnitFee : 0;
-        let t = (u * nQ).toDecimal(decimalObj.ration.totalPrice);
+        // 先取6位,再取2位。解决 4145474.1249999995 四舍五入问题。
+        let t = scMathUtil.roundForObj(u * nQ, 6);
+        t = scMathUtil.roundForObj(t, decimalObj.ration.totalPrice);
         if (treeNode.data.marketTotalFee != t) {
           treeNode.data.marketTotalFee = t;
           treeNode.changed = true;