zhongzewei 6 лет назад
Родитель
Сommit
195296dad7

+ 43 - 3
web/building_saas/main/js/models/exportStandardInterface.js

@@ -849,8 +849,29 @@ const XMLStandard = (function () {
                 {name: '单位', value: source.unit, minLen: 1, maxLen: 20, whiteSpace: WHITE_SPACE.COLLAPSE, required: true},
                 {name: '数量', value: source.quantity, type: TYPE.DECIMAL, required: true},
                 {name: '风险系数', value: source.riskCoe, type: TYPE.DECIMAL, require: true},
-                {name: '基准单价', value: source.riskCoe, type: TYPE.DECIMAL, require: true},
-            ]
+                {name: '基准单价', value: source.standardPrice, type: TYPE.DECIMAL, require: true},
+                {name: '投标单价', value: source.marketPrice, type: TYPE.DECIMAL},
+                {name: '确认单价', value: '0', type: TYPE.DECIMAL},
+                {name: '备注', value: source.remark, maxLen: 255},
+            ];
+            element.call(this, '承包人材料差额法明细', attrs);
+        }
+        //承包人材料指数法表
+        function ExponentialGlj(source) {
+            element.call(this, '承包人材料指数法表', []);
+        }
+        //承包人材料指数法明细
+        function ExponentialGljDetail(source) {
+            let attrs = [
+                {name: '关联材料号', value: source.code, minLen: 1, maxLen: 20, whiteSpace: WHITE_SPACE.COLLAPSE, required: true},
+                {name: '名称', value: source.code, minLen: 1, maxLen: 255, whiteSpace: WHITE_SPACE.COLLAPSE, required: true},
+                {name: '规格', value: source.specs, maxLen: 255, whiteSpace: WHITE_SPACE.COLLAPSE},
+                {name: '变值权重B', value: source.varWeight, type: TYPE.DECIMAL, required: true},
+                {name: '基本价格指数', value: source.FO, type: TYPE.DECIMAL, require: true},
+                {name: '现行价格指数', value: source.FI, type: TYPE.DECIMAL, require: true},
+                {name: '备注', value: source.remark, maxLen: 255},
+            ];
+            element.call(this, '承包人材料指数法明细', attrs);
         }
         //人材机汇总定义
         function GljSummary() {
@@ -1388,10 +1409,29 @@ const XMLStandard = (function () {
             tender.children.push(chargeTax);
             //建设项目下评审材料汇总设置评审材料明细
             let curAppraisalSummary = curProjectEle.children.find(ele => ele.name === '评审材料汇总');
-            //投标导出人材机汇总
+            //人材机汇总相关
             let gljSumarryInfo = loadGlj(curAppraisalSummary, tenderDetail);
             if (gljSumarryInfo) {
+                //承包人材料差额法表
+                let diffGljs = materialAdjustObj.getPirceInfoDatas(tenderDetail.projectGLJ.datas.gljList);
+                if (diffGljs.length) {
+                    let diffP = new DifferentiaGlj();
+                    diffGljs.forEach(data => diffP.children.push(new DifferentiaGljDetail(data)));
+                    tender.children.push(diffP);
+                }
+                //承包人材料指数法表
+                let engineeringCostNode = tenderDetail.Bills.tree.roots.find(node => getNodeFlag(node) === fixedFlag.ENGINEERINGCOST);
+                if (engineeringCostNode) {
+                    let ecTotalFee = getFee(engineeringCostNode.data.fees, 'common.totalFee');
+                    let exponentialGljs = materialAdjustObj.getPriceCoeDatas(tenderDetail.projectGLJ.datas.gljList, ecTotalFee);
+                    if (exponentialGljs.length) {
+                        let exP = new ExponentialGlj();
+                        exponentialGljs.forEach(data => exP.children.push(new ExponentialGljDetail(data)));
+                        tender.children.push(exP);
+                    }
+                }
                 let {gljSummary, evalBidMaterial, evalEstimateMaterial} = gljSumarryInfo;
+                //投标导出人材机汇总
                 if (exportKind === ExportKind.Tender) {
                     tender.children.push(gljSummary);
                 }

+ 3 - 4
web/building_saas/main/js/views/material_adjust_view.js

@@ -136,7 +136,7 @@ let materialAdjustObj = {
     },
     getPirceInfoDatas:function(projectGLJList){
         let datas = [];
-        let gljList = this.filterAdjustGlj(projectGLJList);
+        let gljList = this.filterAdjustGlj(projectGLJList, 'is_info_adjust');
         gljList = sortProjectGLJ(gljList);
         for(let glj of gljList){
             datas.push(getInfoObject(glj));
@@ -150,9 +150,8 @@ let materialAdjustObj = {
             return data;
         }
     },
-    filterAdjustGlj:function (projectGLJList) {
+    filterAdjustGlj:function (projectGLJList, field) {
         let gljList = projectGLJList?projectGLJList:projectObj.project.projectGLJ.datas.gljList;
-        let field =  $("#adjustType").val() == "priceInfo"?"is_info_adjust":"is_coe_adjust";
         return _.filter(gljList,function (item) {
             return item.quantity !== 0 && item.quantity !== '0' && item[field] ===1
         });
@@ -163,7 +162,7 @@ let materialAdjustObj = {
             let node =  projectObj.project.Bills.getEngineeringCostNode(projectObj.mainController);
             totalFee = node && node.data.feesIndex && node.data.feesIndex.common?node.data.feesIndex.common.totalFee:0;
         }
-        let gljList = this.filterAdjustGlj(projectGLJList);
+        let gljList = this.filterAdjustGlj(projectGLJList, 'is_coe_adjust');
          gljList = sortProjectGLJ(gljList);
         for(let glj of gljList){
             datas.push(getCoeObject(glj,totalFee));