Переглянути джерело

fix: 安徽马鞍山导出接口,定额人材机调价消耗量取不到值的问题

vian 5 роки тому
батько
коміт
c76eeb61cc

+ 3 - 4
web/building_saas/standard_interface/export/anhui_maanshan.js

@@ -660,12 +660,11 @@ INTERFACE_EXPORT = (() => {
             const rationRoot = new Qdxdezj();
             const rationEles = rationNodes.map(node => {
                 const rationEle = new QdxdezjMx(node.data);
-                // 定额人材机
+                /* // 定额人材机
                 let rationGLJList = curDetail.ration_glj.datas.filter(glj => glj.rationID === node.data.ID);
-                // 定额人材机排序
-                rationGLJList = gljUtil.sortRationGLJ(rationGLJList);
+                rationGLJList = gljUtil.sortRationGLJ(rationGLJList); */
                 const rationGLJRoot = new Qdxdercjhl();
-                const rationGLJEles = rationGLJList.map(glj => new QdxdercjhlMx(projectGLJIDToRcjID[glj.projectGLJID], glj.tenderQuantity));
+                const rationGLJEles = node.data.rationGLJList.map(glj => new QdxdercjhlMx(projectGLJIDToRcjID[glj.projectGLJID], glj.tenderQuantity));
                 rationGLJRoot.children.push(...rationGLJEles);
                 rationEle.children.push(rationGLJRoot);
                 return rationEle;

+ 8 - 0
web/building_saas/standard_interface/export/base.js

@@ -749,6 +749,14 @@ const INTERFACE_EXPORT_BASE = (() => {
                 }
             });
         });
+        // 处理定额人材机,将定额人材机挂到定额的rationGLJList字段中,同时将定额人材机进行排序、计算调价消耗量
+        tenderDetail.Ration.datas.forEach(ration => {
+            ration.rationGLJList = tenderDetail.ration_glj.datas.filter(glj => {
+                gljUtil.getTotalQuantity(glj, ration, decimalInfo.ration.quantity, decimalInfo.glj.quantity);
+                return glj.rationID === ration.ID;
+            });
+            ration.rationGLJList = gljUtil.sortRationGLJ(ration.rationGLJList);
+        });
 
         // 获取暂估价材料数据,getData原始数据evaluate_list.datas里的数据缺少一些价格数据,需要调用额外接口
         tenderDetail.evaluateMaterialData = configMaterialObj.getEvaluateMaterialDatas(projectGLJList, evaluateList, decimalInfo);