Przeglądaj źródła

①点击清空调价,人材机单价调整系数不会回到默认值1。
②调价后,回到造价书计算程序,数据刷新有误。

chenshilong 5 lat temu
rodzic
commit
4ebb52b375

+ 9 - 5
web/building_saas/main/js/models/calc_program.js

@@ -2252,6 +2252,14 @@ class CalcProgram {
         return me.getTotalFee(baseNodes, excludeNodes, tender);
         return me.getTotalFee(baseNodes, excludeNodes, tender);
     };
     };
 
 
+    initGljPriceTenderCoe (){
+        if (projectObj.project.property.tenderSetting && projectObj.project.property.tenderSetting.gljPriceTenderCoe
+            && (projectObj.project.property.tenderSetting.gljPriceTenderCoe != 1)){
+            projectObj.project.property.tenderSetting.gljPriceTenderCoe = 1;    // 修改缓存值,用于计算
+            projectObj.project.property.needRestoreGgljPriceTenderCoe = true;   // 做个标记,告诉回调函数
+        }
+    };
+
     // 反向调价需初始化调价树、缓存数据等
     // 反向调价需初始化调价树、缓存数据等
     initReverseTenderDatas (){
     initReverseTenderDatas (){
         for(let node of tender_obj.tenderTree.items){
         for(let node of tender_obj.tenderTree.items){
@@ -2265,11 +2273,7 @@ class CalcProgram {
             this.clearTenderCache(node);
             this.clearTenderCache(node);
         };
         };
         // 反向调价时人材机单价调整系数要归1:因为既可以调量又可以调价,以哪个为基准进行反调?过于复杂,仅以通用的调量逻辑为基准即可满足需求。
         // 反向调价时人材机单价调整系数要归1:因为既可以调量又可以调价,以哪个为基准进行反调?过于复杂,仅以通用的调量逻辑为基准即可满足需求。
-        if (projectObj.project.property.tenderSetting && projectObj.project.property.tenderSetting.gljPriceTenderCoe
-            && (projectObj.project.property.tenderSetting.gljPriceTenderCoe != 1)){
-            projectObj.project.property.tenderSetting.gljPriceTenderCoe = 1;    // 修改缓存值,用于计算
-            projectObj.project.property.needRestoreGgljPriceTenderCoe = true;   // 做个标记,告诉回调函数
-        }
+        this.initGljPriceTenderCoe();
     };
     };
 
 
     // 反向调价
     // 反向调价

+ 2 - 1
web/building_saas/main/js/views/calc_program_view.js

@@ -52,7 +52,8 @@ let calcProgramObj = {
             case 1:
             case 1:
                 // doNothing
                 // doNothing
                 break;
                 break;
-            case 2, 4:
+            case 2:
+            case 4:
                 projectObj.project.calcProgram.innerCalc(treeNode, []);
                 projectObj.project.calcProgram.innerCalc(treeNode, []);
                 projectObj.project.calcProgram.rationMap = null;
                 projectObj.project.calcProgram.rationMap = null;
                 delete treeNode.changed;
                 delete treeNode.changed;

+ 22 - 21
web/building_saas/main/js/views/tender_price_view.js

@@ -460,27 +460,6 @@ $(function () {
         //console.log($('#gljPriceTenderCoe').val()) ;
         //console.log($('#gljPriceTenderCoe').val()) ;
     });
     });
 
 
-    $('#cleanTender').bind('click',function () {
-        let me = tender_obj,datas = [];
-        for(let node of me.tenderTree.items){
-            let tem_updateData = {type:node.sourceType,data:{}};
-            me.cleanTargetPrice(tem_updateData,node);
-            me.cleanTenderCoe(tem_updateData,node);
-            me.cleanTenderPrice(tem_updateData,node);
-            if(!_.isEmpty(tem_updateData.data)){//如果需要更新
-                tem_updateData.data.ID = node.data.ID;
-                datas.push(tem_updateData);
-            }
-        }
-        datas.push({type:ModuleNames.project,data:{'ID' : projectObj.project.ID(),'property.tenderSetting.gljPriceTenderCoe':1}});//恢复人材机单价调整系数为1。
-        // datas.push({type:ModuleNames.project,data:{'ID' : projectObj.project.ID(),'property.hasTender': false}});
-        me.updateTenderData(datas,function () {
-            // me.refreshTenderTreeByDatas(datas);
-            $('#calcTender').trigger('click');
-        });
-
-    });
-
     $('#calcPriceOption').change(function(){
     $('#calcPriceOption').change(function(){
         let me = tender_obj;
         let me = tender_obj;
 
 
@@ -528,6 +507,28 @@ $(function () {
         projectObj.project.calcProgram.doTenderCalc(callback);
         projectObj.project.calcProgram.doTenderCalc(callback);
     });
     });
 
 
+    $('#cleanTender').bind('click',function () {
+        let me = tender_obj,datas = [];
+        for(let node of me.tenderTree.items){
+            let tem_updateData = {type:node.sourceType,data:{}};
+            me.cleanTargetPrice(tem_updateData,node);
+            me.cleanTenderCoe(tem_updateData,node);
+            me.cleanTenderPrice(tem_updateData,node);
+            if(!_.isEmpty(tem_updateData.data)){//如果需要更新
+                tem_updateData.data.ID = node.data.ID;
+                datas.push(tem_updateData);
+            }
+        };
+        projectObj.project.calcProgram.initGljPriceTenderCoe();
+        datas.push({type:ModuleNames.project,data:{'ID' : projectObj.project.ID(),'property.tenderSetting.gljPriceTenderCoe':1}});//恢复人材机单价调整系数为1。
+        // datas.push({type:ModuleNames.project,data:{'ID' : projectObj.project.ID(),'property.hasTender': false}});
+        me.updateTenderData(datas,function () {
+            // me.refreshTenderTreeByDatas(datas);
+            $('#calcTender').trigger('click');
+        });
+
+    });
+
     $('#cbShowTenderFields').on('click', function () {
     $('#cbShowTenderFields').on('click', function () {
         let showFields = $('#cbShowTenderFields').prop("checked");
         let showFields = $('#cbShowTenderFields').prop("checked");
         projectObj.project.saveProperty('tenderSetting.showTenderFields', showFields);
         projectObj.project.saveProperty('tenderSetting.showTenderFields', showFields);