فهرست منبع

feat:安徽马鞍山导入接口增加导入暂估材料、评标材料

vian 5 سال پیش
والد
کامیت
c9b2b5b5af

+ 13 - 1
modules/pm/facade/pm_facade.js

@@ -1939,9 +1939,21 @@ async function importTenderDetail(tenderData) {
     const engineering = await engineeringModel.getEngineering(tenderData.property.engineering_id);
     const mainTreeCol = await mainColLibModel.findOne({ ID: tenderData.property.colLibID });
     await projectSettingModel.create({ projectID: tenderData.ID, main_tree_col: mainTreeCol.main_tree_col, glj_col: engineering.glj_col });
+    const task = [];
     // 清单
     if (tenderData.bills && tenderData.bills.length) {
-        await billsModel.insertMany(tenderData.bills);
+        task.push(billsModel.insertMany(tenderData.bills));
+    }
+    // 暂估价材料表
+    if (tenderData.evaluationList.length) {
+        task.push(evaluateListModel.insertMany(tenderData.evaluationList));
+    }
+    // 评标材料表
+    if (tenderData.bidEvaluationList.length) {
+        task.push(bidListModel.insertMany(tenderData.bidEvaluationList));
+    }
+    if (task.length) {
+        await Promise.all(task);
     }
 }
 

+ 1 - 1
web/building_saas/pm/js/pm_newMain.js

@@ -4169,4 +4169,4 @@ if(isShow){
    let welcomeTimer = setInterval("countdown()", 1000);   
  }
  $('#welcomePage').modal('show');//是否显示欢迎页
-} 
+} 

+ 23 - 1
web/building_saas/standard_interface/import/anhui_maanshan.js

@@ -190,6 +190,27 @@ INTERFACE_IMPORT = (() => {
       });
     }
 
+    // 提取人材机数据(暂估材料和评标材料)
+    function setupGLJSummary(tenderSrc) {
+      function gljRefMapFunc(glj) {
+        return {
+          seq: getValue(glj, ['_Xh']),
+          code: getValue(glj, ['_Bm']),
+          name: getValue(glj, ['_Mc']),
+          specs: getValue(glj, ['_Ggxh']),
+          unit: getValue(glj, ['_Dw']),
+          quantity: getValue(glj, ['_Sl']),
+          marketPrice: getValue(glj, ['_Dj']),
+          totalPrice: getValue(glj, ['_Hj']),
+          remark: getValue(glj, ['_Bz']),
+        };
+      }
+      return {
+        evaluationList: arrayValue(tenderSrc, ['ZgCl', 'ZgClMx']).map(gljRefMapFunc),
+        bidEvaluationList: arrayValue(tenderSrc, ['JpCl', 'JpClMx']).map(gljRefMapFunc),
+      }
+    }
+
     // 提取单位工程数据
     function setupTender(midSrc, tenderSrc) {
       //const feeRateSrc = getValue(tenderSrc, ['Qfxx']);
@@ -198,7 +219,8 @@ INTERFACE_IMPORT = (() => {
         name: getValue(tenderSrc, ['_Dwgcmc']),
         feature: setupFeature(midSrc, tenderSrc),
         //feeRate: setupFeeRate(feeRateSrc),
-        bills: setupBills(billsSrc)
+        bills: setupBills(billsSrc),
+        ...setupGLJSummary(tenderSrc),
       };
     }
 

+ 7 - 0
web/building_saas/standard_interface/import/base.js

@@ -366,6 +366,13 @@ const INTERFACE_EXPORT_BASE = (() => {
       };
       delete tender.feature;
       tender.bills = handleBills(tender.bills, _.cloneDeep(templateData.bills), tender.ID,); // 必须要拷贝一份,否则多单位工程情况下,前单位工程的清单数据会被后单位工程的覆盖
+      // 给暂估材料和评标材料设置项目数据
+      const setGLJRefFunc = glj => {
+        glj.ID = uuid.v1();
+        glj.projectID = tender.ID;
+      }
+      tender.evaluationList.forEach(setGLJRefFunc);
+      tender.bidEvaluationList.forEach(setGLJRefFunc);
     });
   }