|
@@ -45,18 +45,26 @@ if(typeof materialComponent !== 'undefined'){
|
|
|
materialComponent = [201];
|
|
|
}
|
|
|
|
|
|
-// CSL, 2018-08-21 计算程序、基数 的覆盖。
|
|
|
-if (rationCalcBases){
|
|
|
- baseMaterialTypes.push(gljType.OTHER_MATERIAL);
|
|
|
- allMaterialTypes.delete(gljType.EQUIPMENT);
|
|
|
- baseMachineTypes.delete(gljType.MACHINE_COMPOSITION);
|
|
|
- baseMachineTypes.push(gljType.INSTRUMENT, gljType.FUEL_POWER_FEE, gljType.DEPRECIATION_FEE,
|
|
|
- gljType.INSPECTION_FEE, gljType.MAINTENANCE, gljType.DISMANTLING_FREIGHT_FEE,
|
|
|
- gljType.VERIFICATION_FEE, gljType.OTHER_FEE, gljType.OTHER_MACHINE_USED);
|
|
|
+// 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);
|
|
|
+baseMachineTypes.push(gljType.INSTRUMENT, gljType.FUEL_POWER_FEE, gljType.DEPRECIATION_FEE,
|
|
|
+ gljType.INSPECTION_FEE, gljType.MAINTENANCE, gljType.DISMANTLING_FREIGHT_FEE,
|
|
|
+ gljType.VERIFICATION_FEE, gljType.OTHER_FEE, gljType.OTHER_MACHINE_USED);
|
|
|
+baseMachineMasterTypes.push(gljType.INSTRUMENT);
|
|
|
|
|
|
+if (rationCalcBases){
|
|
|
changePropNames(rationCalcBases,
|
|
|
['定额基价人工费', '定额基价材料费', '甲供定额基价人工费', '甲供定额基价材料费', '甲定定额基价人工费', '甲定定额基价材料费', '分包定额基价人工费','分包定额基价材料费'],
|
|
|
- ['定额人工费', '定额材料费', '甲供定额人工费', '甲供定额材料费', '甲定定额人工费', '甲定定额材料费', '分包定额人工费','分包定额材料费']);
|
|
|
+ ['定额人工费', '定额材料费', '甲供定额人工费', '甲供定额材料费', '甲定定额人工费', '甲定定额材料费', '分包定额人工费','分包定额材料费']
|
|
|
+ );
|
|
|
deletePropNames(rationCalcBases, [
|
|
|
'定额基价机械费', '定额基价机上人工费', '机械费价差', '主材费价差', '设备费价差','甲供定额基价机械费','甲定定额基价机械费',
|
|
|
'设备费', '甲供设备费', '甲定设备费', '分包设备费', '分包定额基价机械费']);
|
|
@@ -65,7 +73,7 @@ if (rationCalcBases){
|
|
|
return calcTools.rationBaseFee(node, [gljType.OTHER_MATERIAL], priceTypes.ptBasePrice, isTender);
|
|
|
},
|
|
|
rationCalcBases['定额施工机具使用费'] = function (node, isTender) {
|
|
|
- return calcTools.rationBaseFee(node, [gljType.GENERAL_MACHINE, gljType.INSTRUMENT, gljType.OTHER_MACHINE_USED], priceTypes.ptBasePrice, isTender);
|
|
|
+ return calcTools.rationBaseFee(node, baseMachineTypes_CQ_2018_JX, priceTypes.ptBasePrice, isTender);
|
|
|
},
|
|
|
rationCalcBases['计价材料价差'] = function (node, isTender) {
|
|
|
let baseMaterialTypesWithoutOtherMaterial = [
|
|
@@ -78,32 +86,42 @@ if (rationCalcBases){
|
|
|
];
|
|
|
return calcTools.rationBaseFee(node, baseMaterialTypesWithoutOtherMaterial, priceTypes.ptDiffPrice, isTender);
|
|
|
},
|
|
|
- rationCalcBases['机上人工费价差'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['机上人工费价差'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.MACHINE_LABOUR], priceTypes.ptDiffPrice, isTender);
|
|
|
};
|
|
|
- rationCalcBases['机械燃料动力费价差'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['主材费(市场价)'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.MAIN_MATERIAL], priceTypes.ptMarketPrice, isTender);
|
|
|
};
|
|
|
- rationCalcBases['机械折旧费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['机械燃料动力费价差'] = function (node, isTender) {
|
|
|
+ return calcTools.rationBaseFee(node, [gljType.FUEL_POWER_FEE], priceTypes.ptDiffPrice, isTender);
|
|
|
};
|
|
|
- rationCalcBases['特大机械检修费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['机械折旧费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [], baseMachineMasterTypes,
|
|
|
+ gljType.DEPRECIATION_FEE, isTender);
|
|
|
};
|
|
|
- rationCalcBases['中小机械检修费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['特大机械检修费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [1, 2], baseMachineMasterTypes,
|
|
|
+ gljType.INSPECTION_FEE, isTender);
|
|
|
};
|
|
|
- rationCalcBases['特大机械维护费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['中小机械检修费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [3, 4], baseMachineMasterTypes,
|
|
|
+ gljType.INSPECTION_FEE, isTender);
|
|
|
};
|
|
|
- rationCalcBases['中小机械维护费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['特大机械维护费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [1, 2], baseMachineMasterTypes,
|
|
|
+ gljType.MAINTENANCE, isTender);
|
|
|
};
|
|
|
- rationCalcBases['机械安拆费及场外运输费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['中小机械维护费'] = function (node, isTender) {
|
|
|
+ return calcTools.machineDetailFee(node, node.data.gljList, [3, 4], baseMachineMasterTypes,
|
|
|
+ gljType.MAINTENANCE, isTender);
|
|
|
};
|
|
|
- rationCalcBases['机械燃料动力费'] = function () {
|
|
|
- return 0;
|
|
|
+ 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);
|
|
@@ -111,22 +129,51 @@ if (rationCalcBases){
|
|
|
rationCalcBases['定额其他施工机具使用费'] = function (node, isTender) {
|
|
|
return calcTools.rationBaseFee(node, [gljType.OTHER_MACHINE_USED], priceTypes.ptBasePrice, isTender);
|
|
|
},
|
|
|
- rationCalcBases['甲供定额施工机具费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['甲供定额施工机具费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, rationCalcBasesNameMap.JGDESGJJF, isTender);
|
|
|
+ };
|
|
|
+ rationCalcBases['甲定定额施工机具费'] = function (node, isTender) {
|
|
|
+ return calcTools.partASupplyFee(node, rationCalcBasesNameMap.JDDESGJJF, isTender);
|
|
|
};
|
|
|
- rationCalcBases['分包定额施工机具费'] = function () {
|
|
|
- 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;
|
|
|
};
|
|
|
- rationCalcBases['甲定定额施工机具费'] = function () {
|
|
|
- return 0;
|
|
|
+ rationCalcBases['建筑面积'] = function (node, isTender) {
|
|
|
+ return calcTools.getProjectFeatureProperty('buildingArea');
|
|
|
};
|
|
|
+};
|
|
|
+
|
|
|
+if (rationCalcBasesNameMap) {
|
|
|
+ let str = '基价';
|
|
|
+ for (let pn in rationCalcBasesNameMap){
|
|
|
+ if (rationCalcBasesNameMap[pn].includes(str))
|
|
|
+ rationCalcBasesNameMap[pn] = rationCalcBasesNameMap[pn].replace(new RegExp(str, "g"), '');
|
|
|
+ };
|
|
|
+
|
|
|
+ rationCalcBasesNameMap.DEQTCLF = '定额其他材料费';
|
|
|
+ rationCalcBasesNameMap.DESGJJSYF = '定额施工机具使用费';
|
|
|
+ rationCalcBasesNameMap.JJCLJC = '计价材料价差';
|
|
|
+ rationCalcBasesNameMap.JSRGFJC = '机上人工费价差';
|
|
|
+ rationCalcBasesNameMap.JXRLDLFJC = '机械燃料动力费价差';
|
|
|
+ rationCalcBasesNameMap.JXZJF = '机械折旧费';
|
|
|
+ rationCalcBasesNameMap.TDJXJXF = '特大机械检修费';
|
|
|
+ rationCalcBasesNameMap.ZXJXJXF = '中小机械检修费';
|
|
|
+ rationCalcBasesNameMap.TDJXWHF = '特大机械维护费';
|
|
|
+ rationCalcBasesNameMap.ZXJXWHF = '中小机械维护费';
|
|
|
+ rationCalcBasesNameMap.XXACJCWYSF = '机械安拆费及场外运输费';
|
|
|
+ rationCalcBasesNameMap.JXRLDLF = '机械燃料动力费';
|
|
|
+ rationCalcBasesNameMap.DEYQYBF = '定额仪器仪表费';
|
|
|
+ rationCalcBasesNameMap.DEQTSGJJSYF = '定额其他施工机具使用费';
|
|
|
+ rationCalcBasesNameMap.JGDESGJJF = '甲供定额施工机具费';
|
|
|
+ rationCalcBasesNameMap.JDDESGJJF = '甲定定额施工机具费';
|
|
|
+ rationCalcBasesNameMap.FGDESGJJF = '分包定额施工机具费';
|
|
|
+ rationCalcBasesNameMap.ZCF_SCJ = '主材费(市场价)';
|
|
|
+ rationCalcBasesNameMap.JZMJ = '建筑面积';
|
|
|
+};
|
|
|
|
|
|
-}
|
|
|
-else {
|
|
|
- let s = '加载超前,覆盖失败!';
|
|
|
- console.log(s);
|
|
|
- alert(s);
|
|
|
-}
|
|
|
|
|
|
//清单计算基数相关
|
|
|
if(typeof baseFigureMap !== 'undefined'){
|