Commit de0d4225 authored by ZWT's avatar ZWT

feat(吉林演示): 松原

1.排查并修复各时段间开优化功能执行异常导致未执行间开优化问题;
2.排查并修复15天间开优化功能执行后,优化结果时间段展示错乱问题;
3.排查并修复光伏功率预测展示功能,实际功率未展示问题;
4.排查并修复天气数据获取服务,数据处理后入库缺少数据问题;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent a0400588
......@@ -110,9 +110,9 @@ public class EnergyConsumptionAnalysisService {
.spaceRunDuration(item.getProductionTime())
.dailyLiquidProduction(item.getDailyLiquidProduction())
.dailyElectricityConsumption(item.getDailyElectricityConsumption())
.dailyCarbonReduction(ServiceUtil.calculateCarbonReductionTon(item.getPhotovoltaicPower()))
.monthDailyCarbonReduction(ServiceUtil.calculateCarbonReductionTon(item.getMonthPhotovoltaicPower()))
.yearDailyCarbonReduction(ServiceUtil.calculateCarbonReductionTon(item.getYearPhotovoltaicPower()))
.dailyCarbonReduction(ServiceUtil.calculateCarbonReduction(item.getPhotovoltaicPower()))
.monthDailyCarbonReduction(ServiceUtil.calculateCarbonReduction(item.getMonthPhotovoltaicPower()))
.yearDailyCarbonReduction(ServiceUtil.calculateCarbonReduction(item.getYearPhotovoltaicPower()))
.build());
}
return XPageResult.success(outputs, input, pageInfo.getTotal());
......@@ -209,8 +209,8 @@ public class EnergyConsumptionAnalysisService {
break;
}
output = new GetEconomicBenefitsOutput();
output.setCarbonReduction(ServiceUtil.calculateCarbonReductionTon(currentMap.getOrDefault(dateTime, BigDecimal.ZERO)));
output.setLastCarbonReduction(ServiceUtil.calculateCarbonReductionTon(lastMap.getOrDefault(dateTime, BigDecimal.ZERO)));
output.setCarbonReduction(ServiceUtil.calculateCarbonReduction(currentMap.getOrDefault(dateTime, BigDecimal.ZERO)));
output.setLastCarbonReduction(ServiceUtil.calculateCarbonReduction(lastMap.getOrDefault(dateTime, BigDecimal.ZERO)));
output.setDateStr(yearFlag ? dateTime.toString(BusinessConstant.DATE_FORMAT_MONTH) : dateTime.toDateStr());
outputs.add(output);
}
......@@ -246,7 +246,7 @@ public class EnergyConsumptionAnalysisService {
output.setAccumulatePowerGeneration(statistics.getPhotovoltaicPower().setScale(2, RoundingMode.HALF_UP));
output.setDailyElectricityConsumption(statistics.getDailyElectricityConsumption().setScale(2, RoundingMode.HALF_UP));
output.setEconomicBenefit(ServiceUtil.getEconomicBenefitYuan(statistics.getPhotovoltaicPower(), BusinessConstant.ENV_SY));
output.setCarbonReduction(ServiceUtil.calculateCarbonReductionTon(statistics.getPhotovoltaicPower()));
output.setCarbonReduction(ServiceUtil.calculateCarbonReduction(statistics.getPhotovoltaicPower()));
}
return XSingleResult.success(output);
}
......@@ -1470,7 +1470,7 @@ public class EnergyConsumptionAnalysisService {
liquidProduction = ent.getDailyLiquidProduction();
electricityConsumption = ent.getDailyElectricityConsumption();
economicBenefit = ServiceUtil.getEconomicBenefitYuan(ent.getPhotovoltaicPower(), oilFieldCode);
carbonReduction = ServiceUtil.calculateCarbonReductionTon(ent.getPhotovoltaicPower());
carbonReduction = ServiceUtil.calculateCarbonReduction(ent.getPhotovoltaicPower());
}
return XSingleResult.success(GetWellProductionStatusOutput.builder()
.sumWellNumber(sumWellNumber)
......
......@@ -447,47 +447,26 @@ public class ServiceUtil {
return economicBenefit(photovoltaicPower, oilFieldCode, true);
}
/**
* 计算累计减碳量(万吨)
*
* @param photovoltaicPower 光伏发电
* @return {@link BigDecimal }
*/
public static BigDecimal calculateCarbonReduction(BigDecimal photovoltaicPower) {
return carbonReduction(photovoltaicPower, false);
}
/**
* 计算累计减碳量(吨)
*
* @param photovoltaicPower 光伏发电
* @return {@link BigDecimal }
*/
public static BigDecimal calculateCarbonReductionTon(BigDecimal photovoltaicPower) {
return carbonReduction(photovoltaicPower, true);
}
/*----------------------------------- 私有方法 -----------------------------------*/
/**
* 碳减排
*
* @param photovoltaicPower 光伏发电
* @param isTon 是吨
* @return {@link BigDecimal }
*/
private static BigDecimal carbonReduction(BigDecimal photovoltaicPower, boolean isTon) {
public static BigDecimal calculateCarbonReduction(BigDecimal photovoltaicPower) {
BigDecimal carbonReduction;
if (photovoltaicPower.compareTo(BigDecimal.ZERO) > 0) {
carbonReduction = photovoltaicPower
.multiply(BusinessConstant.BIG_DECIMAL_6_67)
.divide(isTon ? BigDecimal.ONE : BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
.divide(BusinessConstant.BIG_DECIMAL_10000, 4, RoundingMode.HALF_UP);
} else {
carbonReduction = BigDecimal.ZERO;
}
return carbonReduction;
}
/*----------------------------------- 私有方法 -----------------------------------*/
/**
* 计算经济效益
*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment