Sfoglia il codice sorgente

山东接口调整

Tony Kang 1 anno fa
parent
commit
7d65a51f60

+ 25 - 8
web/building_saas/standard_interface/export/shandong_common.js

@@ -287,6 +287,10 @@ INTERFACE_EXPORT = (() => {
       Element
     } = INTERFACE_EXPORT_BASE;
 
+    const { 
+      isGLYun
+    } = window.commonUtil;    
+
     const {
       EXPORT_KIND: {
         BID_INVITATION,
@@ -299,7 +303,13 @@ INTERFACE_EXPORT = (() => {
       1: "GCLQD", // 招标
       2: "TBBJ", // 投标
       3: "ZBKZJ", // 控制价
-    };
+    }; // 默认是公路云的
+    if (!isGLYun()) {
+      // 养护云
+      cprjType[1] = 'YHGCLQD';
+      cprjType[2] = 'YHTBBJ';
+      cprjType[3] = 'YHZBKZJ';
+    }
     const isBidInvitation = exportKind === BID_INVITATION; // 是否是招标
     const isBidSubmission = exportKind === BID_SUBMISSION; // 是否是投标
     const isControl = exportKind === CONTROL; // 是否是控制价
@@ -1210,13 +1220,13 @@ INTERFACE_EXPORT = (() => {
         ];
         // Element.call(this, parentKey, pSumAttrs);
         parentNode.attrs.push(...pSumAttrs);
-        subNodes.forEach((node) => {
+        subNodes.forEach((node, index) => {
           let childNode = new Element(childKey);
           parentNode.children.push(childNode);
           const attrs = [
             {
               name: 'ItemNo',
-              value: (node.code) ? node.code : ''
+              value: (node.code) ? node.code : `${index + 1}`
             }, {
               name: 'Name',
               value: node.name
@@ -1850,17 +1860,23 @@ INTERFACE_EXPORT = (() => {
       }
       return items;
 
-      function setItem(bNode, level, list) {
+      function setItem(bNode, level, list, dftListCodeSeq = -1) {
+        const specialChkBillFlag = [fixedFlag.DAYWORK_LABOR, fixedFlag.LABOUR_SERVICE, fixedFlag.MATERIAL, fixedFlag.CONSTRUCTION_MACHINE];
         if (bNode.sourceType == ModuleNames.ration) return;
         // 判断: 1. 招标清单 2. 是否量价,都是的话,return
         if (isBidInvitation && (bNode.data.specialProvisional == "材料暂估" || bNode.data.specialProvisional == "工程设备")) {
           return;
         }
-        let item = new bill(bNode, level);
+        let item = new bill(bNode, level, dftListCodeSeq);
         if (bNode.children && bNode.children.length > 0) {
           level += 1;
+          let dftLCStartSeq = -1;
+          if (isFlag(bNode.data) && specialChkBillFlag.includes(bNode.data.flagsIndex.fixed.flag)) {
+            dftLCStartSeq = 1;
+          }
           for (let c of bNode.children) {
-            setItem(c, level, item.children);
+            setItem(c, level, item.children, dftLCStartSeq);
+            if (dftLCStartSeq > 0) dftLCStartSeq++;
           }
         }
         list.push(item);
@@ -1882,7 +1898,6 @@ INTERFACE_EXPORT = (() => {
         }
 
         function getItemType(node) {
-          const specialChkBillFlag = [fixedFlag.DAYWORK_LABOR, fixedFlag.LABOUR_SERVICE, fixedFlag.MATERIAL, fixedFlag.CONSTRUCTION_MACHINE];
           let Bills = projectObj.project.Bills;
           //是100~900章部分、或是计日工部分,叶子清单输出1,父项输出0;          
           if (Bills.isBelongOneToSeven(node) || Bills.isBelongDayWork(node)) {
@@ -1911,7 +1926,7 @@ INTERFACE_EXPORT = (() => {
 
         }
 
-        function bill(bNode, level) {
+        function bill(bNode, level, dftListCodeSeq = -1) {
           let data = bNode.data;
           let CostKind = 3;
           if (data.name === undefined || data.name === null) data.name = '';
@@ -1945,6 +1960,8 @@ INTERFACE_EXPORT = (() => {
             ListCode = _extractAdhocChapter(data.name);
           } else if (data.code && data.code != "") {
             ListCode = data.code;
+          } else if (dftListCodeSeq > 0) {
+            ListCode = `${dftListCodeSeq}`;
           }
 
           let qtyFormula = data.feesIndex && data.feesIndex.common ? data.feesIndex.common.tenderTotalFee : "";