Kaynağa Gözat

清单的指标建安费独立出来算法

chenshilong 3 yıl önce
ebeveyn
işleme
5cc9c5d96c
1 değiştirilmiş dosya ile 20 ekleme ve 18 silme
  1. 20 18
      web/over_write/js/henan_richang_2022.js

+ 20 - 18
web/over_write/js/henan_richang_2022.js

@@ -82,8 +82,7 @@ function overwriteFeeTypesWhenHasProperty(engineeringName) {
       { type: "indexMaterial", name: "指标材料费" },
       { type: "indexMaterial", name: "指标材料费" },
       { type: "indexMachine", name: "指标施工机械使用费" },
       { type: "indexMachine", name: "指标施工机械使用费" },
       { type: "indexEquipment", name: "指标设备购置费" },
       { type: "indexEquipment", name: "指标设备购置费" },
-      { type: "indexDirect", name: "指标直接费" },
-      { type: "indexCommon", name: "指标建安费" }
+      { type: "indexDirect", name: "指标直接费" }
     );
     );
   }
   }
 
 
@@ -93,9 +92,14 @@ function overwriteFeeTypesWhenHasProperty(engineeringName) {
     { type: "force", name: "规费" },
     { type: "force", name: "规费" },
     { type: "profit", name: "利润" },
     { type: "profit", name: "利润" },
     { type: "tax", name: "税金" },
     { type: "tax", name: "税金" },
-    { type: "common", name: "建安费" },
-    { type: "rationCommon", name: "定额建安费" }
+    { type: "common", name: "建安费" }
   );
   );
+
+  if (engineeringName === "日常养护") {
+    cpFeeTypes.push({ type: "rationCommon", name: "定额建安费" });
+  } else {
+    cpFeeTypes.push({ type: "indexCommon", name: "指标建安费" });
+  }
 }
 }
 
 
 if (typeof feeRateObject !== "undefined") {
 if (typeof feeRateObject !== "undefined") {
@@ -164,14 +168,14 @@ if (typeof baseFigureMap !== "undefined") {
       projectKind: ["日常养护"],
       projectKind: ["日常养护"],
     },
     },
     指标建筑安装工程费: {
     指标建筑安装工程费: {
-      base: "DEJZAZGCF",
+      base: "ZBJZAZGCF",
       fixedFlag: fixedFlag.CONSTRUCTION_INSTALL_FEE,
       fixedFlag: fixedFlag.CONSTRUCTION_INSTALL_FEE,
       filter: [fixedFlag.CONSTRUCTION_INSTALL_FEE],
       filter: [fixedFlag.CONSTRUCTION_INSTALL_FEE],
       pick: false,
       pick: false,
       projectKind: ["日常养护年度预算"],
       projectKind: ["日常养护年度预算"],
     },
     },
     "指标建筑安装工程费(不含专项费用)": {
     "指标建筑安装工程费(不含专项费用)": {
-      base: "DEJZAZGCFBHZXF",
+      base: "ZBJZAZGCFBHZXF",
       fixedFlag: null,
       fixedFlag: null,
       filter: [fixedFlag.SPECIAL_COST],
       filter: [fixedFlag.SPECIAL_COST],
       pick: true,
       pick: true,
@@ -288,28 +292,26 @@ if (typeof baseFigureTemplate !== "undefined") {
     },
     },
     // 定额建筑安装工程费 算法:取清单固定类别是“建筑安装工程费”的定额建安费(其中定额设备费按40%计算)。
     // 定额建筑安装工程费 算法:取清单固定类别是“建筑安装工程费”的定额建安费(其中定额设备费按40%计算)。
     DEJZAZGCF(tender) {
     DEJZAZGCF(tender) {
-      // const engName = projectObj.project.property.engineeringName;
       const feeField = "rationCommon";
       const feeField = "rationCommon";
-      // if (isLittleFix(engName)) {
-      // 小修的没有设备购置固定行
       const baseFee = cbTools.getBaseFee(fixedFlag.CONSTRUCTION_INSTALL_FEE, tender, feeField);
       const baseFee = cbTools.getBaseFee(fixedFlag.CONSTRUCTION_INSTALL_FEE, tender, feeField);
       const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.CONSTRUCTION_INSTALL_FEE);
       const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.CONSTRUCTION_INSTALL_FEE);
       const equipmentFee = cbTools.getEquipmentFee(fixedNode, tender, "equipment");
       const equipmentFee = cbTools.getEquipmentFee(fixedNode, tender, "equipment");
       return (baseFee - equipmentFee * 0.6).toDecimal(decimalObj.bills.totalPrice);
       return (baseFee - equipmentFee * 0.6).toDecimal(decimalObj.bills.totalPrice);
-      // } else {
-      //   const deductFlags = [fixedFlag.EQUIPMENT_ACQUISITION_FEE];
-      //   //建安费扣除定额设备购置费
-      //   const afterDeductFee = cbTools.getFeeWithDeduction(fixedFlag.CONSTRUCTION_INSTALL_FEE, deductFlags, tender, feeField, false);
-      //   //定额设备购置费
-      //   const equipmentAcFee = cbTools.getBaseFee(deductFlags[0], tender, "equipment");
-      //   const equipmentAcTaxFee = cbTools.getBaseFee(deductFlags[0], tender, "tax");
-      //   return (afterDeductFee + equipmentAcFee * 0.4 + equipmentAcTaxFee).toDecimal(decimalObj.bills.totalPrice);
-      // }
     },
     },
     DEJZAZGCFBHZXF(tender) {
     DEJZAZGCFBHZXF(tender) {
       // 定额建筑安装工程费(不含专项费用)
       // 定额建筑安装工程费(不含专项费用)
       return cbTools.getFeeWithDeduction(fixedFlag.CONSTRUCTION_INSTALL_FEE, [fixedFlag.SPECIAL_COST], tender, "rationCommon", true);
       return cbTools.getFeeWithDeduction(fixedFlag.CONSTRUCTION_INSTALL_FEE, [fixedFlag.SPECIAL_COST], tender, "rationCommon", true);
     },
     },
+    ZBJZAZGCF(tender) {
+      const feeField = "indexCommon";
+      const baseFee = cbTools.getBaseFee(fixedFlag.CONSTRUCTION_INSTALL_FEE, tender, feeField);
+      const fixedNode = projectObj.project.mainTree.roots.find((node) => node.getFlag() === fixedFlag.CONSTRUCTION_INSTALL_FEE);
+      const equipmentFee = cbTools.getEquipmentFee(fixedNode, tender, "equipment");
+      return (baseFee - equipmentFee * 0.6).toDecimal(decimalObj.bills.totalPrice);
+    },
+    ZBJZAZGCFBHZXF(tender) {
+      return cbTools.getFeeWithDeduction(fixedFlag.CONSTRUCTION_INSTALL_FEE, [fixedFlag.SPECIAL_COST], tender, "indexCommon", true);
+    },
     // 设备费 算法:取清单固定类别是“设备购置”的建安费
     // 设备费 算法:取清单固定类别是“设备购置”的建安费
     SBF(tender) {
     SBF(tender) {
       return cbTools.getBaseFee(fixedFlag.EQUIPMENT_ACQUISITION_FEE, tender, "common");
       return cbTools.getBaseFee(fixedFlag.EQUIPMENT_ACQUISITION_FEE, tender, "common");