瀏覽代碼

广东导出接口:清单、定额的编码、名称、单位加上自检

vian 5 年之前
父節點
當前提交
4f0d5337f5
共有 2 個文件被更改,包括 12 次插入9 次删除
  1. 1 1
      public/web/encoding_util.js
  2. 11 8
      web/over_write/js/guangdong_2018_export.js

+ 1 - 1
public/web/encoding_util.js

@@ -2,7 +2,7 @@ const encodingUtil = (() => {
 
     /**
      * 根据编码方式获取编码数据
-     * @param {Set} source - 字符串集合数据源
+     * @param {Array} source - 字符串集合数据源
      * @param {String} encoding - 编码方式
      */
     async function getEncodedData(source, encoding, toBase64 = false) {

+ 11 - 8
web/over_write/js/guangdong_2018_export.js

@@ -1433,17 +1433,18 @@ const XMLStandard = (function () {
         // 清单项目
         function WorkElement(node, kind, specialty) {
             const bills = node.data;
+            const row = node.serialNo() + 1;
             const attrs = [
                 // 项目编码
-                { name: 'Number', dName: '项目编码', required: true, value: bills.code || '' },
+                { name: 'Number', dName: '项目编码', required: true, value: bills.code || '', minLen: 1, failHint: `第${row}行清单-“项目编码”` },
                 // 项目名称
-                { name: 'Name', dName: '项目名称', required: true, value: bills.name },
+                { name: 'Name', dName: '项目名称', required: true, value: bills.name, minLen: 1, failHint: `第${row}行清单-“项目名称”` },
                 // 项目特征
                 { name: 'Attr', value: bills.itemCharacterText },
                 // 工作内容
                 { name: 'WorkContent', value: bills.jocContentText },
                 // 计量单位
-                { name: 'Unit', dName: '计量单位', required: true, value: bills.unit },
+                { name: 'Unit', dName: '计量单位', required: true, value: bills.unit, minLen: 1, failHint: `第${row}行清单-“计量单位”` },
                 // 工程量
                 { name: 'Quantity', type: _type.DECIMAL, value: bills.quantity },
                 // 计算基数
@@ -1514,16 +1515,18 @@ const XMLStandard = (function () {
             _base.Element.call(this, 'WorkContent', attrs, '工序内容');
         }
         // 定额子目
-        function Norm(ration, libCode, kind) {
+        function Norm(node, libCode, kind) {
+            const ration = node.data;
+            const row = node.serialNo() + 1;
             // 通过定额库编码,读取编码中间的数字,如房建定额库编码是“GD 1 2018",工程专业取“1”。
             const reg = /GD (\d+)/;
             const matched = libCode.match(reg);
             const specialty = matched && matched[1] || '1';
             const attrs = [
                 // 定额编码
-                { name: 'Number', dName: '定额编码', required: true, value: ration.code },
-                { name: 'Name', dName: '定额名称', required: true, value: ration.name },
-                { name: 'Unit', dName: '计量单位', required: true, value: ration.unit },
+                { name: 'Number', dName: '定额编码', required: true, value: ration.code, minLen: 1, failHint: `第${row}行定额-“定额编码”` },
+                { name: 'Name', dName: '定额名称', required: true, value: ration.name, minLen: 1, failHint: `第${row}行定额-“定额名称”` },
+                { name: 'Unit', dName: '计量单位', required: true, value: ration.unit, minLen: 1, failHint: `第${row}行定额-“计量单位”` },
                 { name: 'Quantity', type: _type.DECIMAL, value: ration.quantity },
                 // 单价
                 { name: 'Price', type: _type.DECIMAL, value: _util.getFee(ration.fees, 'common.unitFee') },
@@ -2512,7 +2515,7 @@ const XMLStandard = (function () {
         function loadRation(node, kind) {
             // 定额
             const libCode = getLibCode(node.data, tenderDetail.projectInfo.engineeringInfo.ration_lib);
-            const norm = new Norm(node.data, libCode, kind);
+            const norm = new Norm(node, libCode, kind);
             // 工程量计算表
             const expressElement = loadQuantityExpressions(tenderDetail.quantity_detail.datas, false, node.data.ID);
             if (expressElement.length) {