zhangweicheng пре 6 година
родитељ
комит
55870ad97a
2 измењених фајлова са 14 додато и 13 уклоњено
  1. 9 0
      public/web/gljUtil.js
  2. 5 13
      web/building_saas/main/js/views/glj_view.js

+ 9 - 0
public/web/gljUtil.js

@@ -308,6 +308,15 @@ let gljUtil = {
         }, "code"])
         return list;
     },
+    getTotalQuantity:function(glj,ration,rd,gd){
+        if(ration){
+            let quantity = ration.quantity;
+            quantity = (quantity == 0 || quantity == undefined || quantity == null || quantity == "") ? 0 : quantity;
+            quantity = scMathUtil.roundForObj(quantity, rd);//计算前进行4舍5入
+            glj.quantity = scMathUtil.roundForObj(glj.quantity, gd);
+            return scMathUtil.roundToString(quantity * glj.quantity, gd);
+        }
+    },
     fixedFlag : {
         // 分部分项工程
         SUB_ENGINERRING: 1,

+ 5 - 13
web/building_saas/main/js/views/glj_view.js

@@ -685,21 +685,13 @@ var gljOprObj = {
         }
     },
     getTotalQuantity:function(glj,ration){
+        if (glj.isMixRatio == true) return;//如果是用于显示的组成物,则不用计算,跳过
         ration=ration?ration: _.find(projectObj.project.Ration.datas,{"ID":glj.rationID});
-        if(ration){
-            let quantity = ration.quantity;
-            quantity = (quantity == 0 || quantity == undefined || quantity == null || quantity == "") ? 0 : quantity;
-            if (glj.isMixRatio == true) {//如果是用于显示的组成物,则不用计算,跳过
-                return;
-            }
-            quantity = scMathUtil.roundForObj(quantity, getDecimal("ration.quantity"));//计算前进行4舍5入
-            glj.quantity = scMathUtil.roundForObj(glj.quantity, getDecimal("glj.quantity"));
-            glj.totalQuantity = scMathUtil.roundToString(quantity * glj.quantity, getDecimal("glj.quantity"));
-            if (glj.hasOwnProperty('subList')) {//需要计算glj下挂的组成物的总消耗量
-                this.calcMixRationTotalQuantity(glj.subList,glj.totalQuantity);
-            }
-            return  glj.totalQuantity;
+        glj.totalQuantity = gljUtil.getTotalQuantity(glj,ration,getDecimal("ration.quantity"),getDecimal("glj.quantity"));
+        if (glj.hasOwnProperty('subList')) {//需要计算glj下挂的组成物的总消耗量
+            this.calcMixRationTotalQuantity(glj.subList,glj.totalQuantity);
         }
+        return  glj.totalQuantity;
     },
     calcMixRationTotalQuantity(mList,pTotal){ //计算组成物的总消耗量
         for (let subG of mList) {