|
|
@@ -546,7 +546,13 @@ let baseFigureTemplate = {
|
|
|
if(cbTools.isUnDef(bill) || cbTools.isUnDef(bill.ID)) return 0;
|
|
|
let node = cbTools.getNodeByID(bill.ID);
|
|
|
if(cbTools.isUnDef(node)) return 0;
|
|
|
- return projectObj.project.calcProgram.getBeforeTaxTotalFee([node], tender);
|
|
|
+ // 排除的节点:调用的节点、材料(工程设备)暂估价
|
|
|
+ let excludeNodes = [node];
|
|
|
+ let materialProvisional = calcTools.getNodeByFlag(fixedFlag.MATERIAL_PROVISIONAL);
|
|
|
+ if (materialProvisional) {
|
|
|
+ excludeNodes.push(materialProvisional);
|
|
|
+ }
|
|
|
+ return projectObj.project.calcProgram.getBeforeTaxTotalFee(excludeNodes, tender);
|
|
|
},
|
|
|
'RCJJC': function (tender) {//人材机价差
|
|
|
return (this['RGJC'](tender) + this['CLJC'](tender) + this['JXJC'](tender)).toDecimal(decimalObj.bills.totalPrice);
|
|
|
@@ -874,12 +880,20 @@ let baseFigureTemplate = {
|
|
|
return rst;
|
|
|
},
|
|
|
'ZGCLFFZM': function (tender) {//暂估材料费(从子目汇总)
|
|
|
- const totalFeeType = tender ? 'tenderTotalFee' : 'totalFee';
|
|
|
+ /*const totalFeeType = tender ? 'tenderTotalFee' : 'totalFee';
|
|
|
let bill = calcBase.fixedBills[calcBase.fixedFlag.ENGINEERINGCOST]['bill'];
|
|
|
projectObj.project.calcProgram.calculate(cbTools.getNodeByID(bill.ID), false, false, true);
|
|
|
if(cbTools.isUnDef(bill)) return 0;
|
|
|
if(cbTools.isUnDef(bill.feesIndex) || Object.keys(bill.feesIndex).length === 0) return 0;
|
|
|
- return cbTools.isDef(bill.feesIndex.estimate) && cbTools.isDef(bill.feesIndex.estimate[totalFeeType]) ? bill.feesIndex.estimate[totalFeeType] : 0;
|
|
|
+ return cbTools.isDef(bill.feesIndex.estimate) && cbTools.isDef(bill.feesIndex.estimate[totalFeeType]) ? bill.feesIndex.estimate[totalFeeType] : 0;*/
|
|
|
+ let feeField = 'estimate',
|
|
|
+ subFeeField = tender ? 'tenderTotalFee' : 'totalFee';
|
|
|
+ // 分部分项暂估合价
|
|
|
+ let subEngineeringFee = cbTools.getBillsFee(fixedFlag.SUB_ENGINERRING, feeField, subFeeField);
|
|
|
+ // 技术措施项目暂估合价
|
|
|
+ let techFee = cbTools.getBillsFee(fixedFlag.CONSTRUCTION_TECH, feeField, subFeeField);
|
|
|
+ return (subEngineeringFee + techFee).toDecimal(decimalObj.bills.totalPrice);
|
|
|
+
|
|
|
},
|
|
|
'FBF': function (tender) {//分包费
|
|
|
const totalFeeType = tender ? 'tenderTotalFee' : 'totalFee';
|
|
|
@@ -1028,7 +1042,7 @@ let baseFigureMap = {
|
|
|
'安全文明施工专项费': {base: 'AQWMSGZXF', fixedFlag: fixedFlag.SAFETY_CONSTRUCTION, class: 'CSXM'},
|
|
|
//不于清单直接关联==========
|
|
|
'建筑面积': {base: 'JZMJ', class: 'FBFX'},
|
|
|
- '税前工程造价': {base: 'SQGCZJ', class: 'SQGCZJ',//安全文明施工专项费用使用
|
|
|
+ '税前工程造价': {base: 'SQGCZJ', class: 'SQGCZJ', //安全文明施工专项费用使用
|
|
|
cycleCalcRef: [fixedFlag.SUB_ENGINERRING, fixedFlag.OTHER, fixedFlag.CHARGE], //循环计算相关固定行,由于计算排除了本身,不用判断措施项目
|
|
|
multiRef: [fixedFlag.SUB_ENGINERRING, fixedFlag.OTHER, fixedFlag.CHARGE]}, //相关固定行,需要关联措施项目,因为需要提取出多处引用的进行排序
|
|
|
'人材机价差': {base: 'RCJJC', class: 'RCJ'},
|