浏览代码

分部:开放单位、工程量列可编辑,计算单价。

chenshilong 3 年之前
父节点
当前提交
fc0ab5de09
共有 2 个文件被更改,包括 15 次插入10 次删除
  1. 5 1
      web/building_saas/main/js/models/calc_program.js
  2. 10 9
      web/building_saas/main/js/views/main_tree_col.js

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

@@ -1930,9 +1930,13 @@ class CalcProgram {
           if (node.data.feesIndex && node.data.feesIndex[ft.type]) {
             btf = (btf + parseFloatPlus(node.data.feesIndex[ft.type].totalFee)).toDecimal(decimalObj.process);
             bttf = (bttf + parseFloatPlus(node.data.feesIndex[ft.type].tenderTotalFee)).toDecimal(decimalObj.process);
+            // TASK #3834 (概算)造价书界面,新增“指标”列,指标=定额建安费(分部的合价)/ 分部的工程量,取两位小数。针对分部。
+            if (calcTools.isBill_FB(node))
+              buf = (btf / bq).toDecimal(-2);
           }
         }
-      } else if (commonCalcType == 1 || commonCalcType == 3) {
+      }
+      else if (commonCalcType == 1 || commonCalcType == 3) {
         if (treeNode.data.lockUnitPrice == true) {
           // 清单单价锁定
           if (treeNode.data.feesIndex && treeNode.data.feesIndex[ft.type]) {

+ 10 - 9
web/building_saas/main/js/views/main_tree_col.js

@@ -276,7 +276,7 @@ let MainTreeCol = {
             if(MainTreeCol.readOnly.glj(node)|| (node.sourceType === projectObj.project.Ration.getSourceType()&&node.data.type===rationType.gljRation)){//是主材或者设备、或者是工料机类型的定额
                 return true;
             }
-            
+
             //2020-11-30 为了多行复制时,遇到只读的大项费,spreadjs 粘贴事件能触发,放开这里的只读限制
            /*  if(Bills.isTopThreeNode(node)){//是大项1、2、3项的编号设置为只读
                 return true;
@@ -298,7 +298,8 @@ let MainTreeCol = {
             return false;
         },
         forUnit:function (node) {
-            if(MainTreeCol.readOnly.bills(node)&&(node.data.type==billType.DXFY||node.data.type==billType.FB)){//在大项费用、分部行,计量单位只读。
+            // 新需求:TASK #3834(概算)造价书界面,开放单位、工程量列可编辑。
+            if(MainTreeCol.readOnly.bills(node)&&(node.data.type==billType.DXFY)){//在大项费用、分部行,计量单位只读。
                 return true;
             }else {
                return calcTools.isRationItem(node);
@@ -339,7 +340,7 @@ let MainTreeCol = {
             const isOverHeight = OVER_HEIGHT.isOverHeight(node);
             const notFBFXAndMeasure = !projectObj.project.Bills.isFBFX(node)
                 && !projectObj.project.Bills.isMeasure(node);
-            const hasCalcBase = !!node.data.calcBase;    
+            const hasCalcBase = !!node.data.calcBase;
             return isOverHeight || notFBFXAndMeasure || hasCalcBase;
         }
     },
@@ -350,11 +351,11 @@ let MainTreeCol = {
              if(node.sourceType == ModuleNames.bills){//清单悬浮提示
                 //显示工程量计算规则
                 if(node.data.ruleText){
-                    tips += `<label class="font_blue">工程量计算规则:<br>${node.data.ruleText.replace(/\n/g,"<br>")}</label>`; 
+                    tips += `<label class="font_blue">工程量计算规则:<br>${node.data.ruleText.replace(/\n/g,"<br>")}</label>`;
                 }
                 if(projectObj.ifItemCharHiden(setting)){//项目特征列隐藏的时候
                     tips += node.data.itemCharacterText?`<br>${node.data.itemCharacterText}`:'';
-                } 
+                }
              }
             if(node.sourceType == ModuleNames.ration && node.data.type == rationType.ration){//定额类型时,显示人材机,工作内容等
                 //这里的人材机需要进行过滤,在初始化时组装会影响性能,应实时显示
@@ -449,7 +450,7 @@ let MainTreeCol = {
         },
         mainBills:function (node) {
             if(MainTreeCol.mainBillsEnable(node)) {
-                return projectObj.project.projectInfo.property.lockBills 
+                return projectObj.project.projectInfo.property.lockBills
                     ? sheetCommonObj.getReadOnlyCheckBox()
                     : sheetCommonObj.getCheckBox(true)
             };
@@ -636,10 +637,10 @@ let MainTreeCol = {
         let isFBNode = node.sourceType == ModuleNames.bills&&node.data.type == billType.FB;
         if(isFBNode){
            let CELL =sheetCommonObj.getCusButtonCellType(()=>{
-            $("#selectFBFor").val("replace");   
+            $("#selectFBFor").val("replace");
             $('#selectFBDiv').modal('show');
             })
-            cell.cellType(CELL); 
+            cell.cellType(CELL);
         }
     }
 };
@@ -765,7 +766,7 @@ let colSettingObj = {
         for(let i = 0; i < cols.length; i++){
             let colSetting = cols[i];
             if(colSetting.data.field === field){
-                
+
                 return i;
             }
         }