|
|
@@ -379,9 +379,10 @@ const ImportXML = (() => {
|
|
|
let obj = {
|
|
|
rowCode: getValue(itemSrc, ['_行代号']),
|
|
|
name: getValue(itemSrc, ['_项目名称']),
|
|
|
+ calcBase: getValue(itemSrc, ['_计算基础表达式'])
|
|
|
};
|
|
|
if (importFileKind === FileKind.tender) {
|
|
|
- obj.calcBase = getValue(itemSrc, ['_计算基础表达式']);
|
|
|
+ // obj.calcBase = getValue(itemSrc, ['_计算基础表达式']);
|
|
|
obj.feeRate = getValue(itemSrc, ['_费率']);
|
|
|
obj.fees = [{fieldName: 'common', totalFee: getValue(itemSrc, ['_金额']) || '0'}];
|
|
|
}
|
|
|
@@ -1023,6 +1024,7 @@ const ImportXML = (() => {
|
|
|
name: feeBills.name,
|
|
|
rowCode: feeBills.rowCode,
|
|
|
feeRate: feeBills.feeRate,
|
|
|
+ calcBase: feeBills.calcBase,
|
|
|
};
|
|
|
if (importFileKind === FileKind.tender) {
|
|
|
//subTaxData.rowCode = feeBills.rowCode;
|
|
|
@@ -1033,7 +1035,7 @@ const ImportXML = (() => {
|
|
|
}
|
|
|
needfulTemplate.push(subTaxData);
|
|
|
preSubTax = subTaxData;
|
|
|
- } else { //匹配固定项
|
|
|
+ } else {
|
|
|
let isMatched = false;
|
|
|
//匹配固定项
|
|
|
for (let match of toMatches) {
|
|
|
@@ -1061,7 +1063,13 @@ const ImportXML = (() => {
|
|
|
continue;
|
|
|
}
|
|
|
isMatched = true;
|
|
|
- findBills.calcBase = feeBills.calcBase;
|
|
|
+ // 文件有基数则导入基数,没有则用模板的基数
|
|
|
+ if (feeBills.calcBase) {
|
|
|
+ findBills.calcBase = feeBills.calcBase;
|
|
|
+ } else {
|
|
|
+ // 用了模板的基数,基数无视基数验证
|
|
|
+ findBills.ignoreValidator = true;
|
|
|
+ }
|
|
|
findBills.feeRate = feeBills.feeRate;
|
|
|
findBills.rowCode = feeBills.rowCode;
|
|
|
//后台配置的feeRateID优先级比feeRate高,导入数据有费率值时,需要清空这个配置
|
|
|
@@ -1161,7 +1169,9 @@ const ImportXML = (() => {
|
|
|
function updateZZCSItem(org, tar) {
|
|
|
for(let [k, v] of Object.entries(tar)) {
|
|
|
// 如果匹配到的清单自身已有固定ID,不更新固定ID
|
|
|
- if (k === 'flags' && Array.isArray(tar.flags) && tar.flags.length) {
|
|
|
+ // 如果目标清单没有基数,模板清单基数不更新
|
|
|
+ if ((k === 'flags' && Array.isArray(tar.flags) && tar.flags.length) ||
|
|
|
+ (k === 'calcBase' && !tar.calcBase)) {
|
|
|
continue;
|
|
|
}
|
|
|
org[k] = v;
|
|
|
@@ -1291,7 +1301,7 @@ const ImportXML = (() => {
|
|
|
JSCS_JXF: '{技术措施项目定额施工机具使用费}',
|
|
|
JSCS_ZCF: '{技术措施项目主材费}',
|
|
|
JSCS_GR: '{技术措施项目人工工日}',
|
|
|
- JZMZ: '{建筑面积}',
|
|
|
+ JZMJ: '{建筑面积}',
|
|
|
RCJJC: '{人材机价差}',
|
|
|
RGJC: '{人工价差}',
|
|
|
CLJC: '{材料价差}',
|
|
|
@@ -1325,7 +1335,7 @@ const ImportXML = (() => {
|
|
|
}
|
|
|
});
|
|
|
for (let bills of billsData) {
|
|
|
- if (!bills.calcBase) {
|
|
|
+ if (!bills.calcBase || bills.ignoreValidator) {
|
|
|
continue;
|
|
|
}
|
|
|
let sub = billsData.find(data => data.ParentID === bills.ID);
|