zhangweicheng 6 vuotta sitten
vanhempi
commit
66fc24ed5a

+ 1 - 1
web/building_saas/main/js/models/calc_base.js

@@ -100,7 +100,7 @@ let cbTools = {
         //首先提取出多处引用的进行排序
         for(let i = 0, len = figureF.length; i < len; i++){
             let figure = figureF[i];
-            if(figure.type === 'base' && cbTools.isDef(calcBase.baseFigures[figure.value])){
+            if(figure.type === 'base' &&  calcBase.baseFigures && cbTools.isDef(calcBase.baseFigures[figure.value])){
                 let bill = this.isDef(calcBase.baseFigures[figure.value]['fixedBill']) ? calcBase.baseFigures[figure.value]['fixedBill']['bill'] : null;
                 let figureMultiRef = calcBase.baseFigures[figure.value]['multiRef'];
                 if(this.isDef(figureMultiRef)){

+ 4 - 2
web/building_saas/main/js/models/ration_glj.js

@@ -424,7 +424,6 @@ let ration_glj = {
                 }
                 rationNode.data.adjustState = result.adjustState;
                 projectObj.mainController.refreshTreeNode([rationNode]);
-                gljOprObj.refreshView();
                 for (let o of oldData) {
                     if (this.needShowToTree(o)) {
                         let node = me.findGLJNodeByID(o.ID);  //找到对应的树节点
@@ -434,6 +433,7 @@ let ration_glj = {
                 project.calcProgram.calcAndSave(rationNode,function () {
                     installationFeeObj.calcInstallationFee();
                 });
+                gljOprObj.refreshView();
                 projectObj.project.projectGLJ.loadData();
             }catch (e){
                 console.log(e)
@@ -494,7 +494,9 @@ let ration_glj = {
                 projectObj.project.projectGLJ.loadData(function () {//等项目工料机加载完成后再给用户编辑
                     me.refreshTreeNodeIfNeeded(recode);//刷新造价书上的树节点(如果需要)
                     me.reCalcWhenGLJChange(recode);//触发计算定额以及父节点
-					zmhs_obj.refreshStableDataIfNeeded();                    $.bootstrapLoading.end();
+					zmhs_obj.refreshStableDataIfNeeded();
+                    gljOprObj.refreshView();
+					$.bootstrapLoading.end();
                     installationFeeObj.calcInstallationFee();
                 });
             };

+ 6 - 7
web/building_saas/main/js/views/fee_rate_view.js

@@ -594,13 +594,12 @@ var feeRateObject={
                      let doc = {"subFeeRate":temR.subFeeRate};
                      let valueKey = valueArray.join('-');
                      let valueMaps = r.subFeeRate.valueMaps;
-                     if(subRate.name == "工地转移(km)"&& value && value < 50){//工地转移50km以内按50km算
-                         valueKey = "50";
-                         temP.value = scMathUtil.roundForObj(value,getDecimal("feeRate")) ;//设置显示的节点值
-                     }
-                     if(subRate.name == "综合里程(km)"&& value && value < 3){//综合里程3km以内按3km算
-                          valueKey = "3";
-                         temP.value = scMathUtil.roundForObj(value,getDecimal("feeRate")) ;//设置显示的节点值
+                     if(me.feeRateSpecialHandle){//不同编办特殊处理
+                         let sf = me.feeRateSpecialHandle(subRate,value);
+                         if(!_.isEmpty(sf)){
+                             valueKey = sf.valueKey;
+                             temP.value = sf.value;
+                         }
                      }
                      let rate = _.find(valueMaps,{"ID":valueKey});
                      if(isDef(rate)) {//找到了,直接改费率值

+ 3 - 3
web/building_saas/main/js/views/glj_view.js

@@ -1168,9 +1168,9 @@ var gljOprObj = {
                     //gljOprObj.sheetData = gljOprObj.sheetData.concat(result.showData);
                     project.projectGLJ.loadData(function () {
                         project.ration_glj.addToMainTree(result.showData);//组成物不会显示到造价书页面
-                        gljOprObj.refreshView();
                         project.calcProgram.calcAndSave(selected);
                         projectObj.mainController.refreshTreeNode([selected]);
+                        gljOprObj.refreshView();
                         $.bootstrapLoading.end();
                     });
                 }
@@ -1215,7 +1215,6 @@ var gljOprObj = {
                 let data = result.data;
                 let nodes = [selected];
                 project.projectGLJ.loadData(function () {//加载完项目工料机再计算
-                    gljOprObj.refreshView();
                     let node = project.ration_glj.updateGLJNodeAfterReplace(data);
                     if(node) nodes.push(node);
                     /*if (project.ration_glj.needShowToTree(data)) {//当替换的是主材或设备时,刷新对应的树节点
@@ -1232,6 +1231,7 @@ var gljOprObj = {
                     selected.data.name = result.name;
                     projectObj.mainController.refreshTreeNode(nodes);
                     project.calcProgram.calcAndSave(selected);
+                    gljOprObj.refreshView();
                     $.bootstrapLoading.end();
                 });
             }
@@ -1272,9 +1272,9 @@ var gljOprObj = {
                 }
             })
             project.projectGLJ.loadData(function () {
-                me.refreshView();
                 var rationNodes = me.refreshStateAfterMreplace(stateList, nodes);
                 project.calcProgram.calcNodesAndSave(rationNodes);
+                me.refreshView();
                 $.bootstrapLoading.end();
             });
         })

+ 25 - 0
web/over_write/js/chongqing_2018.js

@@ -45,6 +45,24 @@ if(typeof materialComponent !== 'undefined'){
     materialComponent = [201];
 }
 
+//重庆综合里程、工地转移费率值修改特殊处理
+
+if(typeof feeRateObject !== 'undefined'){
+   feeRateObject.feeRateSpecialHandle = function (subRate,value) {
+       let result = {};
+       if(subRate.name == "工地转移(km)"&& value && value < 50){//工地转移50km以内按50km算
+           result.valueKey = "50";
+           result.value = scMathUtil.roundForObj(value,getDecimal("feeRate")) ;//设置显示的节点值
+       }
+       if(subRate.name == "综合里程(km)"&& value && value < 3){//综合里程3km以内按3km算
+           result.valueKey = "3";
+           result.value = scMathUtil.roundForObj(value,getDecimal("feeRate")) ;//设置显示的节点值
+       }
+       return result;
+   }
+}
+
+
 // CSL, 2018-08-21 计算程序定额基数、取费类别的覆盖。-----------------------------------------------------------------------
 // 重庆养护作为原始代码模块,以下变量及方法定义已写入原始位置,此处无需覆盖。其它地区的养护需在此位置覆盖,参见neimeng_2019.js。
 // let isCQ2018 = true;
@@ -53,6 +71,9 @@ if(typeof materialComponent !== 'undefined'){
 
 
 //清单计算基数相关
+/*
+ 2019-11-27   baseFigureMap 的结构变了,覆盖后导致报错,暂时注释,待确认
+
 if(typeof baseFigureMap !== 'undefined'){
     baseFigureMap = {
         //与清单直接关联=======
@@ -112,6 +133,10 @@ if(typeof baseFigureMap !== 'undefined'){
             multiRef: [fixedFlag.SUB_ENGINERRING, fixedFlag.MEASURE, fixedFlag.OTHER, fixedFlag.CHARGE]},//相关固定行
     };
 }
+
+*/
+
+
 if(typeof baseFigureTemplate !== 'undefined'){
     baseFigureTemplate['ZZS'] =  function (tender) {//增值税
         if(cbTools.isUnDef(calcBase.fixedBills[fixedFlag.ADDED_VALUE_TAX])){

+ 14 - 0
web/over_write/js/neimeng_2019.js

@@ -254,4 +254,18 @@ if(typeof materialCalcObj !== 'undefined' && materialCalcObj.rationSetting){
     if(h) h.visible = true;
     let mt = _.find(materialCalcObj.freightSetting.header,{"dataCode":"materialType"});
     if(mt) mt.visible = true;
+}
+
+
+//内蒙施工进出场(km)费率值修改特殊处理
+
+if(typeof feeRateObject !== 'undefined'){
+    feeRateObject.feeRateSpecialHandle = function (subRate,value) {
+        let result = {};
+        if(subRate.name == "施工进出场(km)"&& value && value < 5){//输入的数值(公里数)< 5时,该项费用不计取。
+            result.valueKey = "0";
+            result.value = scMathUtil.roundForObj(value,getDecimal("feeRate")) ;//设置显示的节点值
+        }
+        return result;
+    }
 }