chenshilong 3 роки тому
батько
коміт
1b4892f020

+ 6 - 5
web/building_saas/main/js/views/project_glj_view.js

@@ -1277,8 +1277,8 @@ projectGljObject = {
         exportPriceToExcel: {
           name: "导出Excel预算价",
           icon: "fa-reply",
-          disabled: function () {
-            return false;
+          visible: function () {
+            return compilationName === "四川养护(2013)" || compilationName === "部颁2018计价标准";
           },
           callback: function (key, opt) {
             $("#electrovalenceDiv").modal("show");
@@ -1287,8 +1287,8 @@ projectGljObject = {
         importPriceFromExcel: {
           name: "导入Excel预算价",
           icon: "fa-share",
-          disabled: function () {
-            return false;
+          visible: function () {
+            return compilationName === "四川养护(2013)" || compilationName === "部颁2018计价标准";
           },
           callback: function (key, opt) {
             $("#importPriceForm").modal("show");
@@ -1853,13 +1853,14 @@ $(function () {
         throw "项目数据出错";
       }
 
-      let priceData = getExcelData(importJson.sheets);
+      const priceData = getExcelData(importJson.sheets);
       if (priceData.length === 0) {
         throw "当前Excel文件没有材料预算价!";
       }
 
       showAlert("正在导入预算价...", true);
       //
+      let gljList = projectObj.project.projectGLJ.datas.gljList;
     } catch (err) {
       console.log(err);
       showAlert(err);

+ 28 - 13
web/over_write/js/quanguo_2018.js

@@ -1,5 +1,4 @@
 // 公路云
-// 专门提供给川高用的,清单预算项目类型,清单树二合一,跟 sichuan_2013 同款。
 
 let isQG2018 = true;
 
@@ -166,7 +165,7 @@ const progression = ["施工场地建设费", "建设单位(业主)管理费", "
 const deficiency = {};
 if (typeof baseFigureMap !== "undefined") {
   const { fixedFlag } = commonConstants;
-  const boqMap = {
+  const budgetMap = {
     // 显示:除清单固定类别是“建筑安装工程费”部分可显示
     建筑安装工程费: {
       base: "JZAZGCF",
@@ -175,14 +174,14 @@ if (typeof baseFigureMap !== "undefined") {
       pick: false,
     },
     // 显示:除清单固定类别是“建筑安装工程费”部分可显示
-    // 定额建筑安装工程费: { // 重复,算法不同。有问题就试试这个
-    //   base: "DEJZAZGCF",
-    //   fixedFlag: fixedFlag.CONSTRUCTION_INSTALL_FEE,
-    //   filter: [
-    //     /* fixedFlag.CONSTRUCTION_INSTALL_FEE */
-    //   ],
-    //   pick: true,
-    // },
+    定额建筑安装工程费: {
+      base: "DEJZAZGCF",
+      fixedFlag: fixedFlag.CONSTRUCTION_INSTALL_FEE,
+      filter: [
+        /* fixedFlag.CONSTRUCTION_INSTALL_FEE */
+      ],
+      pick: true,
+    },
     // 显示:仅清单固定类别是“安全生产费”行可显示
     "建筑安装工程费(不含安全生产费)": {
       base: "JZAZGCFBHSC",
@@ -270,6 +269,15 @@ if (typeof baseFigureMap !== "undefined") {
       filter: [fixedFlag.SPREAD_BUDGET_FEE],
       pick: true,
     },
+  };
+  const boqMap = {
+    // 仅允许用于固定类别是“第100章至700章清单”以外的清单
+    各章清单合计: {
+      base: "GZQDHJ",
+      fixedFlag: fixedFlag.ONE_SEVEN_BILLS,
+      filter: [fixedFlag.ONE_SEVEN_BILLS],
+      pick: false,
+    },
     // 仅允许用于固定类别是“第100章至700章清单”以外的清单
     专项暂定合计: {
       base: "ZXZDHJ",
@@ -295,17 +303,21 @@ if (typeof baseFigureMap !== "undefined") {
       pick: true,
     },
   };
+  baseFigureMap.budget = budgetMap;
   baseFigureMap.boq = boqMap;
 }
 
 if (typeof baseFigureTemplate !== "undefined") {
   const { fixedFlag } = commonConstants;
-
-  baseFigureTemplate.boq = {
+  baseFigureTemplate.budget = {
     // 建设安装工程费 算法:取“建筑安装工程费”的金额
     JZAZGCF(tender) {
       return cbTools.getBaseFee(fixedFlag.CONSTRUCTION_INSTALL_FEE, tender, "common");
     },
+    // 定额建筑安装工程费 算法:取“定额建筑安装工程费”的金额
+    DEJZAZGCF(tender) {
+      return cbTools.getBaseFee(fixedFlag.CONSTRUCTION_INSTALL_FEE, tender, "rationCommon");
+    },
     // 建筑安装工程费(不含安全生产费) 算法:取固定类别是“建筑安装工程费”的“建安费”,扣除固定类别是“安全生产费”的“建安费”
     JZAZGCFBHSC(tender) {
       let baseFee = this["JZAZGCF"](tender);
@@ -452,6 +464,9 @@ if (typeof baseFigureTemplate !== "undefined") {
       // = P * [(1+i)^(n-1) -1]
       return (installFee * (Math.pow(1 + costGrowthRate, growthPeriod - 1) - 1)).toDecimal(decimalObj.bills.totalPrice);
     },
+  };
+
+  baseFigureTemplate.boq = {
     //{各章清单合计}
     // 取清单固定类别是“第100章至700章清单”的金额
     GZQDHJ: function (tender) {
@@ -466,7 +481,7 @@ if (typeof baseFigureTemplate !== "undefined") {
     // 取清单固定清单[第100章至700章清单]的金额,但扣除清单100章下的金额。
     // 如果是固定清单[第100章至700章清单]下100章以外清单引用此基数,要排除自身(目前只允许100章的清单使用,所以暂时不需要此判断)
     YBZYHQDHJ: function (tender) {
-      let oneToSeven = cbTools.findNodeByFlag(fixedFlag.CONSTRUCTION_INSTALL_FEE); // // 少了清单“第100章至700章清单”, 直接取“第一部分 公路养护工程费”
+      let oneToSeven = cbTools.findNodeByFlag(fixedFlag.ONE_SEVEN_BILLS);
       if (!oneToSeven) {
         return 0;
       }