|
|
@@ -170,16 +170,32 @@ public class UltraShortTermPowerForecastingController extends BaseController
|
|
|
{
|
|
|
Long time = data.getForecastTime() + plusMinutes * 60;
|
|
|
DataElectricityLocal realData = realDataMap.get(time);
|
|
|
- String powerStr = timePowerConsumer.apply(data);
|
|
|
+ double power = parsePower(timePowerConsumer.apply(data));
|
|
|
double actualPower = realData != null ? realData.getActualPower() : 0D;
|
|
|
UltraShortTermPowerForecastOnceData onceData = new UltraShortTermPowerForecastOnceData().setTime(TimeUtils.utcToGmt8Format(time))
|
|
|
- .setPower(Double.parseDouble(powerStr))
|
|
|
+ .setPower(power)
|
|
|
.setMonitoredPower(actualPower)
|
|
|
- .setBias(actualPower - Double.parseDouble(powerStr))
|
|
|
+ .setBias(actualPower - power)
|
|
|
;
|
|
|
return onceData;
|
|
|
}
|
|
|
|
|
|
+ private double parsePower(String power)
|
|
|
+ {
|
|
|
+ if (power == null || power.trim().isEmpty())
|
|
|
+ {
|
|
|
+ return 0D;
|
|
|
+ }
|
|
|
+ try
|
|
|
+ {
|
|
|
+ return Double.parseDouble(power.trim());
|
|
|
+ }
|
|
|
+ catch (NumberFormatException e)
|
|
|
+ {
|
|
|
+ return 0D;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 查询超短期功率预测数据,从 data_ultra_short_term_power_forecasting 表获取
|
|
|
*/
|