|
|
@@ -308,7 +308,7 @@ const INTERFACE_EXPORT_BASE = (() => {
|
|
|
}
|
|
|
if (child.rowCode) {
|
|
|
const regStr = /{[^{}]+}/.test(child.rowCode) ? child.rowCode : `\\b${child.rowCode}\\b`;
|
|
|
- rowCodeData.push({ reg: new RegExp(regStr, 'g'), ID: child.ID });
|
|
|
+ rowCodeData.push({ reg: new RegExp(regStr, 'g'), ID: child.ID, rowCode: child.rowCode });
|
|
|
}
|
|
|
if (child.calcBase) {
|
|
|
toBeTransformBills.push(child);
|
|
|
@@ -321,8 +321,13 @@ const INTERFACE_EXPORT_BASE = (() => {
|
|
|
setBills(billsTarget, -1);
|
|
|
// 转换计算基数,将行引用转换为ID引用
|
|
|
toBeTransformBills.forEach(bills => {
|
|
|
- rowCodeData.forEach(({ reg, ID }) => {
|
|
|
- bills.calcBase = bills.calcBase.replace(reg, `@${ID}`);
|
|
|
+ rowCodeData.forEach(({ reg, ID, rowCode }) => {
|
|
|
+ const rowCodeReg = new RegExp(`{${rowCode}}`);
|
|
|
+ if (rowCodeReg.test(bills.calcBase)) {
|
|
|
+ bills.calcBase = bills.calcBase.replace(rowCodeReg, `@${ID}`);
|
|
|
+ } else {
|
|
|
+ bills.calcBase = bills.calcBase.replace(reg, `@${ID}`);
|
|
|
+ }
|
|
|
});
|
|
|
});
|
|
|
rst.forEach(bills => delete bills.children);
|