Forráskód Böngészése

报表,合同支付,金额小数位数问题

MaiXinRong 5 éve
szülő
commit
b2c0c56dd1
2 módosított fájl, 9 hozzáadás és 17 törlés
  1. 3 0
      app/service/tender_info.js
  2. 6 17
      test/app/service/report_memory.test.js

+ 3 - 0
app/service/tender_info.js

@@ -73,6 +73,9 @@ module.exports = app => {
             for (const ai of arrayInfo) {
                 info[ai] = !info[ai] || info[ai] === '' ? defaultInfo[ai] : JSON.parse(info[ai]);
             }
+            if (info.decimal) {
+                info.decimal._pay_tp = info.decimal.pay ? info.decimal.payTp : info.decimal.tp;
+            }
             return info;
         }
 

+ 6 - 17
test/app/service/report_memory.test.js

@@ -45,17 +45,6 @@ const addFields = function(table, name, field, type, tag) {
     }
     table.items.push(data);
 };
-const addTpFields = function(table, name, field, type) {
-    const data = {};
-    data.ID = table.ID * 100 + table.items.length + 1;
-    data.Name = name + '(' + field + ')';
-    data.DataType = type;
-    data.TableName = table.key;
-    data.descr = '';
-    data.mapExpression = "$PROJECT.REPORT.getProperty('" + table.key + "', '" + field + "')";
-    data.Precision = { type: 'fixed', fixedMapExpression: '$PROJECT.REPORT.getProperty("tender_info", "decimal.up")' };
-    table.items.push(data);
-};
 const saveTableDefine = async function (ctx, tableDefine, file) {
     delete tableDefine.ID;
     delete tableDefine.key;
@@ -345,16 +334,16 @@ describe('test/app/service/report_memory.test.js', () => {
 
             addFields(tableDefine, prefix + '名称', 'name', dataType.str);
             addFields(tableDefine, prefix + '计算公式', 'expr', dataType.str);
-            addTpFields(tableDefine, prefix + '金额', 'tp', dataType.currency, {type: 'tp', subType: 'pay'});
-            addTpFields(tableDefine, prefix + '截止上期-金额', 'pre_tp', dataType.currency, {type: 'tp', subType: 'pay'});
-            addTpFields(tableDefine, prefix + '截止本期-金额', 'end_tp', dataType.currency, {type: 'tp', subType: 'pay'});
+            addFields(tableDefine, prefix + '金额', 'tp', dataType.currency, {type: 'tp', subType: 'pay'});
+            addFields(tableDefine, prefix + '截止上期-金额', 'pre_tp', dataType.currency, {type: 'tp', subType: 'pay'});
+            addFields(tableDefine, prefix + '截止本期-金额', 'end_tp', dataType.currency, {type: 'tp', subType: 'pay'});
             addFields(tableDefine, prefix + '排序', 'order', dataType.int);
             addFields(tableDefine, prefix + '是否扣款项', 'minus', dataType.int);
             addFields(tableDefine, prefix + '支付类型', 'ptype', dataType.int);
-            addTpFields(tableDefine, prefix + '起扣金额', 'sprice', dataType.currency, {type: 'tp', subType: 'pay'});
-            addTpFields(tableDefine, prefix + '扣款限额', 'rprice', dataType.currency, {type: 'tp', subType: 'pay'});
+            addFields(tableDefine, prefix + '起扣金额', 'sprice', dataType.currency, {type: 'tp', subType: 'pay'});
+            addFields(tableDefine, prefix + '扣款限额', 'rprice', dataType.currency, {type: 'tp', subType: 'pay'});
             for (let i = 0 ;i < 10; i++) {
-                addTpFields(tableDefine, prefix + '流程-本期-金额_' + i, 'r' + i + '_tp', dataType.currency, {type: 'tp', subType: 'pay'});
+                addFields(tableDefine, prefix + '流程-本期-金额_' + i, 'r' + i + '_tp', dataType.currency, {type: 'tp', subType: 'pay'});
             }
             yield saveTableDefine(ctx, tableDefine, path.join(savePath, 'mem_stage_pay_define.json'));
         }