|
@@ -46,12 +46,6 @@ if(typeof materialComponent !== 'undefined'){
|
|
|
}
|
|
|
|
|
|
// CSL, 2018-08-21 计算程序、基数 的覆盖。---------------------------------------------------------------------------------
|
|
|
-const baseMachineTypes_CQ_2018_JX = [ // 重庆2018新定额施工机具之三大机械类型
|
|
|
- gljType.GENERAL_MACHINE,
|
|
|
- gljType.INSTRUMENT,
|
|
|
- gljType.OTHER_MACHINE_USED
|
|
|
-];
|
|
|
-
|
|
|
baseMaterialTypes.push(gljType.OTHER_MATERIAL);
|
|
|
allMaterialTypes.delete(gljType.EQUIPMENT);
|
|
|
baseMachineTypes.delete(gljType.MACHINE_COMPOSITION);
|
|
@@ -60,122 +54,129 @@ baseMachineTypes.push(gljType.INSTRUMENT, gljType.FUEL_POWER_FEE, gljType.DEPREC
|
|
|
gljType.VERIFICATION_FEE, gljType.OTHER_FEE, gljType.OTHER_MACHINE_USED);
|
|
|
baseMachineMasterTypes.push(gljType.INSTRUMENT);
|
|
|
|
|
|
-if (rationCalcBases){
|
|
|
- for (let key in rationCalcBases) {
|
|
|
- delete rationCalcBases[key];
|
|
|
- };
|
|
|
+let overwriteRationCalcBases = function (taxType){
|
|
|
+ if (rationCalcBases){
|
|
|
+ for (let key in rationCalcBases) {
|
|
|
+ delete rationCalcBases[key];
|
|
|
+ };
|
|
|
+ let isJY = taxType == '2';
|
|
|
|
|
|
- rationCalcBases['定额人工费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.LABOUR], priceTypes.ptBasePrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['定额材料费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, baseMaterialTypes, priceTypes.ptBasePrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['定额其他材料费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.OTHER_MATERIAL], priceTypes.ptBasePrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['定额施工机具使用费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, baseMachineTypes_CQ_2018_JX, priceTypes.ptBasePrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['主材费(市场价)'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.MAIN_MATERIAL], priceTypes.ptMarketPrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['人工工日'] = function (node, isTender) {
|
|
|
- return calcTools.labourDays(node, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['人工费价差'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.LABOUR], priceTypes.ptDiffPrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['材料费价差'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, baseMaterialTypes, priceTypes.ptDiffPrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['计价材料价差'] = function (node, isTender) {
|
|
|
- let baseMaterialTypesWithoutOtherMaterial = [
|
|
|
- gljType.GENERAL_MATERIAL,
|
|
|
- gljType.CONCRETE,
|
|
|
- gljType.MORTAR,
|
|
|
- gljType.MIX_RATIO,
|
|
|
- gljType.COMMERCIAL_CONCRETE,
|
|
|
- gljType.COMMERCIAL_MORTAR
|
|
|
- ];
|
|
|
- return calcTools.rationBaseFee(node, baseMaterialTypesWithoutOtherMaterial, priceTypes.ptDiffPrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['机上人工费价差'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.MACHINE_LABOUR], priceTypes.ptDiffPrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['燃料动力费价差'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.FUEL_POWER_FEE], priceTypes.ptDiffPrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['定额其他施工机具使用费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.OTHER_MACHINE_USED], priceTypes.ptBasePrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['机械折旧费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
- gljType.DEPRECIATION_FEE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['特大机械检修费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [1, 2], baseMachineMasterTypes,
|
|
|
- gljType.INSPECTION_FEE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['中小机械检修费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [3, 4], baseMachineMasterTypes,
|
|
|
- gljType.INSPECTION_FEE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['特大机械维护费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [1, 2], baseMachineMasterTypes,
|
|
|
- gljType.MAINTENANCE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['中小机械维护费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [3, 4], baseMachineMasterTypes,
|
|
|
- gljType.MAINTENANCE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['安拆费及场外运输费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
- gljType.DISMANTLING_FREIGHT_FEE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['燃料动力费'] = function (node, isTender) {
|
|
|
- return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
- gljType.FUEL_POWER_FEE, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['定额仪器仪表费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.INSTRUMENT], priceTypes.ptBasePrice, isTender);
|
|
|
- };
|
|
|
- rationCalcBases['建筑面积'] = function (node, isTender) {
|
|
|
- return calcTools.getProjectFeatureProperty('buildingArea');
|
|
|
- };
|
|
|
- rationCalcBases['甲供定额人工费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲供定额人工费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲供定额材料费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲供定额材料费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲供定额施工机具费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲供定额施工机具费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲供主材费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲供主材费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲定定额人工费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲定定额人工费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲定定额材料费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲定定额材料费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲定定额施工机具费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲定定额施工机具费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['甲定主材费'] = function (node, isTender) {
|
|
|
- return calcTools.partASupplyFee(node, '甲定主材费', isTender);
|
|
|
- };
|
|
|
- rationCalcBases['暂估材料费'] = function (node, isTender) {
|
|
|
- return calcTools.estimateFee(node, true, isTender);
|
|
|
+ rationCalcBases['定额人工费'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.LABOUR], priceTypes.ptBasePrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['定额材料费'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, baseMaterialTypes, priceTypes.ptBasePrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['定额其他材料费'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.OTHER_MATERIAL], priceTypes.ptBasePrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['定额施工机具使用费'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.GENERAL_MACHINE, gljType.INSTRUMENT], priceTypes.ptBasePrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['主材费(市场价)'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.MAIN_MATERIAL], priceTypes.ptMarketPrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['人工工日'] = function (node, isTender) {
|
|
|
+ return calcTools.labourDays(node, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['人工费价差'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.LABOUR], priceTypes.ptDiffPrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['材料费价差'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, baseMaterialTypes, priceTypes.ptDiffPrice, isTender);
|
|
|
+ };
|
|
|
+ if (isJY){
|
|
|
+ rationCalcBases['计价材料价差'] = function (node, isTender) {
|
|
|
+ let baseMaterialTypesWithoutOtherMaterial = [
|
|
|
+ gljType.GENERAL_MATERIAL,
|
|
|
+ gljType.CONCRETE,
|
|
|
+ gljType.MORTAR,
|
|
|
+ gljType.MIX_RATIO,
|
|
|
+ gljType.COMMERCIAL_CONCRETE,
|
|
|
+ gljType.COMMERCIAL_MORTAR
|
|
|
+ ];
|
|
|
+ return calcTools.rationBaseFee(node, baseMaterialTypesWithoutOtherMaterial, priceTypes.ptDiffPrice, isTender);
|
|
|
+ };
|
|
|
+ };
|
|
|
+ rationCalcBases['机上人工费价差'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.MACHINE_LABOUR], priceTypes.ptDiffPrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['燃料动力费价差'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.FUEL_POWER_FEE], priceTypes.ptDiffPrice, isTender);
|
|
|
+ };
|
|
|
+ if (isJY) {
|
|
|
+ rationCalcBases['定额其他施工机具使用费'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.OTHER_MACHINE_USED], priceTypes.ptBasePrice, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['机械折旧费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
+ gljType.DEPRECIATION_FEE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['特大机械检修费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [1, 2], baseMachineMasterTypes,
|
|
|
+ gljType.INSPECTION_FEE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['中小机械检修费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [3, 4], baseMachineMasterTypes,
|
|
|
+ gljType.INSPECTION_FEE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['特大机械维护费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [1, 2], baseMachineMasterTypes,
|
|
|
+ gljType.MAINTENANCE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['中小机械维护费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [3, 4], baseMachineMasterTypes,
|
|
|
+ gljType.MAINTENANCE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['安拆费及场外运输费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
+ gljType.DISMANTLING_FREIGHT_FEE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['燃料动力费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
+ gljType.FUEL_POWER_FEE, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['定额仪器仪表费'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.INSTRUMENT], priceTypes.ptBasePrice, isTender);
|
|
|
+ };
|
|
|
+ };
|
|
|
+ rationCalcBases['建筑面积'] = function (node, isTender) {
|
|
|
+ return calcTools.getProjectFeatureProperty('buildingArea');
|
|
|
+ };
|
|
|
+ rationCalcBases['甲供定额人工费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲供定额人工费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲供定额材料费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲供定额材料费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲供定额施工机具费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲供定额施工机具费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲供主材费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲供主材费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲定定额人工费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲定定额人工费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲定定额材料费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲定定额材料费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲定定额施工机具费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲定定额施工机具费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲定主材费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, '甲定主材费', isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['暂估材料费'] = function (node, isTender) {
|
|
|
+ return calcTools.estimateFee(node, true, isTender);
|
|
|
+ };
|
|
|
+ // rationCalcBases['分包定额施工机具费'] = function (node, isTender) {
|
|
|
+ // if (node.data.isSubcontract)
|
|
|
+ // return calcTools.rationBaseFee(node, [gljType.GENERAL_MACHINE, gljType.INSTRUMENT, gljType.OTHER_MACHINE_USED], priceTypes.ptBasePrice, isTender)
|
|
|
+ // else
|
|
|
+ // return 0;
|
|
|
+ // };
|
|
|
};
|
|
|
- // rationCalcBases['分包定额施工机具费'] = function (node, isTender) {
|
|
|
- // if (node.data.isSubcontract)
|
|
|
- // return calcTools.rationBaseFee(node, [gljType.GENERAL_MACHINE, gljType.INSTRUMENT, gljType.OTHER_MACHINE_USED], priceTypes.ptBasePrice, isTender)
|
|
|
- // else
|
|
|
- // return 0;
|
|
|
- // };
|
|
|
};
|
|
|
|
|
|
var cpFeeTypes2018 = [
|