Bläddra i källkod

各养护的设备费分别处理。
河南养护(2022):取清单固定类别是“第100章至700章清单”的定额建安费(其中定额设备费按40%计算,税金是全额计算)。
内蒙古养护(2019):取清单固定类别是“第100章至700章清单”的定额建安费(其中定额设备费+税金按40%计算)。
安徽养护(2018):取清单固定类别是“第100章至700章清单”的定额建安费(扣除定额设备购置费+税金)。(同重庆)

chenshilong 3 år sedan
förälder
incheckning
6decd9bc44

+ 5 - 3
web/building_saas/main/js/models/calc_base.js

@@ -834,8 +834,9 @@ let baseFigureTemplate = {
       let fullFeeField = tender ? "common.tenderTotalFee" : "common.totalFee";
       return projectObj.project.calcProgram.getTotalFee([oneToSeven], deductNodes, fullFeeField).toDecimal(decimalObj.bills.totalPrice);
     },
-    // {定额建安费(不含定额设备购置费)} 汇总非设备类型的定额的定额建安费
+    // {定额建安费(不含定额设备购置费)} 
     DEJAFBHDESBGZF: function (tender) {
+      // 旧:汇总定额的定额建安费(不含设备类型的定额、不含工料机定额、不含量x价清单)。因缺少量x价清单的定额建安费,新版本不再使用。
       if (isLowVer(historyVer1)) {
         const feeField = "rationCommon";
         const subFeeField = tender ? "tenderTotalFee" : "totalFee";
@@ -846,10 +847,11 @@ let baseFigureTemplate = {
         }, 0);
         return summaryFee.toDecimal(decimalObj.bills.totalPrice);
       } else {
+        // 新:根结点的定额建安费(含 量x价清单的定额建安费),扣除定额设备费+税金。其中,设备费:传入rationCommon时,表示定额设备费+税金。传入equipment表示定额设备费
         const baseFee = cbTools.getBaseFee(fixedFlag.ONE_SEVEN_BILLS, tender, "rationCommon");
         const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.ONE_SEVEN_BILLS);
-        const equipmentFee = cbTools.getEquipmentFee(fixedNode, tender, "rationCommon");
-        return (baseFee - equipmentFee).toDecimal(decimalObj.bills.totalPrice);
+        const equipmentTaxFee = cbTools.getEquipmentFee(fixedNode, tender, "rationCommon");
+        return (baseFee - equipmentTaxFee).toDecimal(decimalObj.bills.totalPrice);
       }
     },
   },

+ 15 - 2
web/over_write/js/anhui_2019.js

@@ -219,7 +219,13 @@ if (typeof baseFigureMap !== 'undefined') {
             fixedFlag: null,
             filter: [fixedFlag.ONE_HUNDRED_BILLS],
             pick: true
-        }
+        },
+        '定额建筑安装工程费(不含定额设备购置费)': {
+            base: "DEJZAZGCF",
+            fixedFlag: null,
+            filter: [fixedFlag.ONE_HUNDRED_BILLS],
+            pick: true,
+          },
     };
     baseFigureMap.budget = budgetMap;
     baseFigureMap.boq = boqMap;
@@ -369,7 +375,14 @@ if (typeof baseFigureTemplate !== 'undefined') {
             //计算金额
             let fullFeeField = tender ? 'common.tenderTotalFee' : 'common.totalFee';
             return projectObj.project.calcProgram.getTotalFee([oneToSeven], deductNodes, fullFeeField).toDecimal(decimalObj.bills.totalPrice);
-        }
+        },
+        // 清单项目基数:{定额建筑安装工程费(不含定额设备购置费)} 算法:取清单固定类别是“第100章至700章清单”的定额建安费(扣除定额设备购置费+税金),同重庆。显示:只有清单固定类别是“第100章清单总则”的部分可显示。
+        DEJZAZGCF(tender) {
+            const baseFee = cbTools.getBaseFee(fixedFlag.ONE_SEVEN_BILLS, tender, "rationCommon");
+            const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.ONE_SEVEN_BILLS);
+            const equipmentTaxFee = cbTools.getEquipmentFee(fixedNode, tender, "rationCommon");
+            return (baseFee - equipmentTaxFee).toDecimal(decimalObj.bills.totalPrice);
+        },
     };
 }
 

+ 2 - 2
web/over_write/js/henan_2022.js

@@ -525,11 +525,11 @@ if (typeof baseFigureTemplate !== "undefined") {
       let fullFeeField = tender ? "common.tenderTotalFee" : "common.totalFee";
       return projectObj.project.calcProgram.getTotalFee([oneToSeven], deductNodes, fullFeeField).toDecimal(decimalObj.bills.totalPrice);
     },
-    // 清单项目基数:{定额建筑安装工程费} 算法:取清单固定类别是“第100章至700章清单”的定额建安费(其中定额设备费按40%计算)。显示:只有清单固定类别是“第100章清单总则”的部分可显示。
+    // 清单项目基数:{定额建筑安装工程费} 算法:取清单固定类别是“第100章至700章清单”的定额建安费(其中定额设备费按40%计算,税金是全额计算)。显示:只有清单固定类别是“第100章清单总则”的部分可显示。
     DEJZAZGCF(tender) {
       const baseFee = cbTools.getBaseFee(fixedFlag.ONE_SEVEN_BILLS, tender, "rationCommon");
       const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.ONE_SEVEN_BILLS);
-      const equipmentFee = cbTools.getEquipmentFee(fixedNode, tender, "rationCommon");
+      const equipmentFee = cbTools.getEquipmentFee(fixedNode, tender, "equipment");
       return (baseFee - equipmentFee * 0.6).toDecimal(decimalObj.bills.totalPrice);
     },
   };

+ 15 - 2
web/over_write/js/neimeng_2019.js

@@ -193,7 +193,13 @@ if (typeof baseFigureMap !== 'undefined') {
             fixedFlag: null,
             filter: [fixedFlag.ONE_HUNDRED_BILLS],
             pick: true
-        }
+        },
+        '定额建筑安装工程费(定额设备购置费按40%计)': {
+            base: "DEJZAZGCF",
+            fixedFlag: null,
+            filter: [fixedFlag.ONE_HUNDRED_BILLS],
+            pick: true,
+          },
     };
     baseFigureMap.budget = budgetMap;
     baseFigureMap.boq = boqMap;
@@ -324,7 +330,14 @@ if (typeof baseFigureTemplate !== 'undefined') {
             //计算金额
             let fullFeeField = tender ? 'common.tenderTotalFee' : 'common.totalFee';
             return projectObj.project.calcProgram.getTotalFee([oneToSeven], deductNodes, fullFeeField).toDecimal(decimalObj.bills.totalPrice);
-        }
+        },
+        // 清单项目基数:{定额建筑安装工程费(定额设备购置费按40%计)} 算法:取清单固定类别是“第100章至700章清单”的定额建安费(其中定额设备费+设备税金之和按40%计算)。显示:只有清单固定类别是“第100章清单总则”的部分可显示。
+        DEJZAZGCF(tender) {
+        const baseFee = cbTools.getBaseFee(fixedFlag.ONE_SEVEN_BILLS, tender, "rationCommon");
+        const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.ONE_SEVEN_BILLS);
+        const equipmentTaxFee = cbTools.getEquipmentFee(fixedNode, tender, "rationCommon");
+        return (baseFee - equipmentTaxFee * 0.6).toDecimal(decimalObj.bills.totalPrice);
+      },
     };
 }