|
@@ -9,6 +9,7 @@ import com.hb.proj.car.service.CarRptUtils;
|
|
import com.hb.xframework.util.DateUtil;
|
|
import com.hb.xframework.util.DateUtil;
|
|
|
|
|
|
public class EnergyWaterSumVOUtil {
|
|
public class EnergyWaterSumVOUtil {
|
|
|
|
+
|
|
|
|
|
|
/**
|
|
/**
|
|
* 计算同比值
|
|
* 计算同比值
|
|
@@ -23,7 +24,7 @@ public class EnergyWaterSumVOUtil {
|
|
v1=voIndex.get(month);
|
|
v1=voIndex.get(month);
|
|
if(preVoIndex.get(month)!=null){
|
|
if(preVoIndex.get(month)!=null){
|
|
if(v1==null){
|
|
if(v1==null){
|
|
- v1=new EnergyWaterSumVO(null,null,null);
|
|
|
|
|
|
+ v1=new EnergyWaterSumVO(null,null,null,null);
|
|
voIndex.put(month, v1);
|
|
voIndex.put(month, v1);
|
|
}
|
|
}
|
|
v1.setComparedValue(preVoIndex.get(month));
|
|
v1.setComparedValue(preVoIndex.get(month));
|
|
@@ -100,22 +101,45 @@ public class EnergyWaterSumVOUtil {
|
|
* @param workloads
|
|
* @param workloads
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
- public static Map<String,EnergyWaterSumVO> build(List<ERP> erps,List<OtherConsume> kls,List<Wpg> wpgs,List<WpgCorrect> wpgCorrects,List<Workload> workloads){
|
|
|
|
|
|
+ public static Map<String, EnergyWaterSumVO> build(List<ERP> erps,
|
|
|
|
+ List<OtherConsume> kls, List<Wpg> wpgs,
|
|
|
|
+ List<WpgCorrect> wpgCorrects, List<Workload> workloads,
|
|
|
|
+ List<CarConsume> carConsumes, EnergyWaterSumTotalVal totalVal) {
|
|
Map<String,EnergyWaterSumVO> voIdx=new HashMap<String,EnergyWaterSumVO>();
|
|
Map<String,EnergyWaterSumVO> voIdx=new HashMap<String,EnergyWaterSumVO>();
|
|
String month=null;
|
|
String month=null;
|
|
EnergyWaterSumVO vo=null;
|
|
EnergyWaterSumVO vo=null;
|
|
|
|
|
|
Map<String,ERP> monthErps=builderERPKlMonthGroup(erps,kls); //汽油、柴油
|
|
Map<String,ERP> monthErps=builderERPKlMonthGroup(erps,kls); //汽油、柴油
|
|
Map<String,Wpg> monthWpgs=buildWpgWithCorrect(wpgs,wpgCorrects) ; //水电气
|
|
Map<String,Wpg> monthWpgs=buildWpgWithCorrect(wpgs,wpgCorrects) ; //水电气
|
|
- Map<String,Workload> monthWorkloads=new HashMap<String,Workload>(); //工作量
|
|
|
|
|
|
+ Map<String,Workload> monthWorkloads=new HashMap<String,Workload>(workloads.size()); //工作量
|
|
|
|
+
|
|
|
|
+ double total1=0,total2=0;
|
|
|
|
+ int total3=0;
|
|
|
|
+
|
|
for(Workload wk : workloads){
|
|
for(Workload wk : workloads){
|
|
month=DateUtil.format(wk.getRptMonth(), "MM");
|
|
month=DateUtil.format(wk.getRptMonth(), "MM");
|
|
monthWorkloads.put(month, wk);
|
|
monthWorkloads.put(month, wk);
|
|
|
|
+ total3+=wk.getWellCount()!=null?wk.getWellCount().intValue():0;
|
|
|
|
+ total1+=wk.getIndustryValue()!=null?wk.getIndustryValue().doubleValue():0;
|
|
|
|
+ total2+=wk.getAddedValue()!=null?wk.getAddedValue().doubleValue():0;
|
|
}
|
|
}
|
|
|
|
+ totalVal.setWellCount(total3);
|
|
|
|
+ totalVal.setIndustryValue(total1);
|
|
|
|
+ totalVal.setAddedValue(total2);
|
|
|
|
+
|
|
|
|
+ total1=0;
|
|
|
|
+ Map<String,CarConsume> monthCarConsume=new HashMap<String,CarConsume>(carConsumes.size()); //车辆明细消耗统计
|
|
|
|
+ for(CarConsume carCon : carConsumes){
|
|
|
|
+ month=DateUtil.format(carCon.getRptDate(), "MM");
|
|
|
|
+ monthCarConsume.put(month, carCon);
|
|
|
|
+ total1+=carCon.getEngineCostKg()!=null?carCon.getEngineCostKg().doubleValue():0;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ totalVal.setEngineCost(total1);
|
|
|
|
|
|
for(int m=1;m<=12;m++){
|
|
for(int m=1;m<=12;m++){
|
|
month=String.format("%02d", m);
|
|
month=String.format("%02d", m);
|
|
- vo=new EnergyWaterSumVO(monthErps.get(month),monthWpgs.get(month),monthWorkloads.get(month));
|
|
|
|
|
|
+ vo=new EnergyWaterSumVO(monthErps.get(month),monthWpgs.get(month),monthWorkloads.get(month),monthCarConsume.get(month));
|
|
vo.initCoal();
|
|
vo.initCoal();
|
|
voIdx.put(month, vo);
|
|
voIdx.put(month, vo);
|
|
}
|
|
}
|
|
@@ -145,7 +169,7 @@ public class EnergyWaterSumVOUtil {
|
|
|
|
|
|
for(int m=1;m<=12;m++){
|
|
for(int m=1;m<=12;m++){
|
|
month=String.format("%02d", m);
|
|
month=String.format("%02d", m);
|
|
- vo=new EnergyWaterSumVO(monthErps.get(month),monthWpgs.get(month),null);
|
|
|
|
|
|
+ vo=new EnergyWaterSumVO(monthErps.get(month),monthWpgs.get(month),null,null);
|
|
vo.initCoal();
|
|
vo.initCoal();
|
|
if(vo.getErpKl()!=null){
|
|
if(vo.getErpKl()!=null){
|
|
vo.getErpKl().setOilCoal(CarRptUtils.addDouble(vo.getErpKl().getOilCoal(),vo.getErpKl().getCoilCoal()));
|
|
vo.getErpKl().setOilCoal(CarRptUtils.addDouble(vo.getErpKl().getOilCoal(),vo.getErpKl().getCoilCoal()));
|