|
@@ -6,6 +6,7 @@ import cn.hutool.core.date.DateField;
|
|
|
import cn.hutool.core.date.DateRange;
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
+import cn.hutool.core.lang.Dict;
|
|
|
import cn.hutool.core.text.StrBuilder;
|
|
|
import cn.hutool.core.thread.ThreadUtil;
|
|
|
import cn.hutool.core.util.NumberUtil;
|
|
@@ -35,6 +36,7 @@ import java.util.function.Function;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
+//@Service
|
|
|
public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
private static Logger logger = LoggerFactory.getLogger(JavaFunctionJobHandler.class);
|
|
|
|
|
@@ -536,7 +538,8 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
}
|
|
|
wrapper.clear();
|
|
|
wrapper.lambda().between(StationInfoDay::getRecordDate, beginTq, endTq);
|
|
|
- List<StationInfoDay> sids = stationInfoDayService.list(wrapper);
|
|
|
+// List<StationInfoDay> sids = stationInfoDayService.list(wrapper);
|
|
|
+ List<StationInfoDay> sids = null;
|
|
|
Map<String, List<StationInfoDay>> sidMap;
|
|
|
if (CollUtil.isNotEmpty(sids)) {
|
|
|
sidMap = sids.stream().collect(Collectors.groupingBy(StationInfoDay::getStationId));
|
|
@@ -955,7 +958,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
|
|
|
List<PointInfo> entity = getEntity("Z-ZXYG-JX", "meter");
|
|
|
entity = entity.stream().filter(e -> !"".equals(e.getProjectId())).collect(Collectors.toList());
|
|
|
- getZeroNextData(entity, time0, time);
|
|
|
+ getSectionDataByEntity(entity,goldenUri(), time0, time);
|
|
|
Map<String, PointInfo> swdlMap = entity.stream().collect(Collectors.toMap(PointInfo::getLineId, Function.identity()));
|
|
|
List<LineInfoDay> byDate = getLineinfoByDate(time0, entity);
|
|
|
String lineId;
|
|
@@ -1452,6 +1455,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
infoDay.setSlss(0.0);
|
|
|
infoDay.setDjss(loss.get("djss"));
|
|
|
infoDay.setGzss(loss.get("gzss"));
|
|
|
+ infoDay.setXnss(loss.get("xnss"));
|
|
|
//if (infoDay.getRfdl() == 0) {
|
|
|
// infoDay.setXnss(0.0);
|
|
|
//} else {
|
|
@@ -3582,9 +3586,9 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
info1.setPointDatas(Collections.singletonList(data1));
|
|
|
result.add(info1);
|
|
|
} else {
|
|
|
+ System.out.println("wtId: " + wtId + ",状态值无批配: " + data1.getValue());
|
|
|
// Map<String, PointData> latest2 = adapter.getLatest(goldenUri(), collect);
|
|
|
data1.setDoubleValue(2.0);
|
|
|
- System.out.println("wtId: " + wtId + ",状态值无批配: " + data1.getValue());
|
|
|
info1.setPointDatas(Collections.singletonList(data1));
|
|
|
result.add(info1);
|
|
|
}
|
|
@@ -3656,8 +3660,8 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
info1.setPointDatas(Collections.singletonList(data1));
|
|
|
result.add(info1);
|
|
|
} else {
|
|
|
- data1.setDoubleValue(2.0);
|
|
|
System.out.println("wtId: " + wtId + ",状态值无批配: " + data1.getValue());
|
|
|
+ data1.setDoubleValue(2.0);
|
|
|
info1.setPointDatas(Collections.singletonList(data1));
|
|
|
result.add(info1);
|
|
|
}
|
|
@@ -4361,7 +4365,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
List<PointInfo> entityFdl = getEntity("AI121", "turbine");
|
|
|
getSectionDataByEntity(entityFdl, goldenUri(), start, date);
|
|
|
|
|
|
- List<TurbineInfoMin> mins = getTurbineinfoByMin(date, entityFs);
|
|
|
+ List<TurbineInfoMin> mins = getTurbineinfoByMin(start, entityFs);
|
|
|
for (TurbineInfoMin min : mins) {
|
|
|
String tbId = min.getTurbineId();
|
|
|
List<PointData> fsDatas = rawMapFs.get(tbId).getPointDatas();
|
|
@@ -4557,8 +4561,8 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
info1.setPointDatas(Collections.singletonList(data1));
|
|
|
result.add(info1);
|
|
|
} else {
|
|
|
- data1.setDoubleValue(2.0);
|
|
|
System.out.println("wtId: " + wtId + ",状态值无批配: " + data1.getValue());
|
|
|
+ data1.setDoubleValue(2.0);
|
|
|
info1.setPointDatas(Collections.singletonList(data1));
|
|
|
result.add(info1);
|
|
|
}
|
|
@@ -4590,7 +4594,8 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
return entityAiZt;
|
|
|
}
|
|
|
|
|
|
- public void calcStationSjglAgcPjfsHjwdDlMin(Date time,Map<String, Double> fjhjwd) {
|
|
|
+ public void calcStationSjglAgcPjfsHjwdDlMin(Date time) {
|
|
|
+ Dict fjhjwd = CalcCache.dictMap.get("fjhjwd");
|
|
|
DateTime end = DateUtil.beginOfMinute(time);
|
|
|
int i = Math.floorDiv(end.minute(), 15) * 15;
|
|
|
end.setMinutes(i);
|
|
@@ -4613,10 +4618,10 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
Map<String, List<PointInfo>> fdlsMap = entity.stream().collect(Collectors.groupingBy(PointInfo::getStationId));
|
|
|
|
|
|
QueryWrapper<TurbineInfoMin> wrapper = new QueryWrapper<>();
|
|
|
- wrapper.select("sum(llgl) llgl,sum(kygl) kygl,avg(pjfs) pjfs,station_id").eq("record_date", end).groupBy("station_id");
|
|
|
+ wrapper.select("sum(llgl) llgl,sum(kygl) kygl,avg(pjfs) pjfs,station_id").eq("record_date", begin).groupBy("station_id");
|
|
|
List<TurbineInfoMin> list = turbineInfoMinService.list(wrapper);
|
|
|
Map<String, TurbineInfoMin> minMap = list.stream().collect(Collectors.toMap(TurbineInfoMin::getStationId, Function.identity()));
|
|
|
- List<StationInfoMin> byDate = getStationinfoByMin(end, entityAgc);
|
|
|
+ List<StationInfoMin> byDate = getStationinfoByMin(begin, entityAgc);
|
|
|
Map<String, Map<Double, Long>> zttsMap = calcSectionStationZtts(end);
|
|
|
for (StationInfoMin day : byDate) {
|
|
|
String id = day.getStationId();
|
|
@@ -4637,6 +4642,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
double rfdl = fdlInfos.stream().mapToDouble(pi -> {
|
|
|
double v = (pi.getPointDatas().get(1).getValue() - pi.getPointDatas().get(0).getValue()) * pi.getCoef();
|
|
|
if (v < 0) v = 0;
|
|
|
+ System.out.println(pi.getLineId()+","+v);
|
|
|
return v;
|
|
|
}).sum();
|
|
|
if (rfdl >= 42400.0) rfdl = day.getPjgl() / 4.0;
|
|
@@ -4657,7 +4663,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
double v = wd.getPointDatas().stream().filter(p -> p.getValue() != 0.0).mapToDouble(PointData::getValue).average().orElse(0.0);
|
|
|
if (v > 83) v = 0;
|
|
|
if (v == 0) {
|
|
|
- v = fjhjwd.getOrDefault(wd.getTurbineId(), 0.0);
|
|
|
+ v = fjhjwd.get(wd.getTurbineId(), 0.0);
|
|
|
} else {
|
|
|
fjhjwd.put(wd.getTurbineId(), v);
|
|
|
}
|
|
@@ -5732,7 +5738,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public void calcCdqKhfs(Date date) {
|
|
|
+ public void calcKhfs(Date date) {
|
|
|
DateTime begin = DateUtil.offsetDay(DateUtil.beginOfDay(date), -1);
|
|
|
DateTime end = DateUtil.offsetDay(DateUtil.endOfDay(date), -1);
|
|
|
DateTime beginDq = DateUtil.offsetDay(begin, -2);
|
|
@@ -5827,7 +5833,6 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
calculateForecastScore(examin2, ycglss, sjglss, WIND_STANDARD, capacity, pdtHour.getHours());
|
|
|
peList.add(examin2);
|
|
|
});
|
|
|
-
|
|
|
}
|
|
|
QueryWrapper<PredictExamin2> examin2Wrapper = new QueryWrapper<>();
|
|
|
examin2Wrapper.eq("predict_type", "DQ").eq("device_type", "station")
|
|
@@ -5894,8 +5899,7 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
double Q_D2 = calculatePenalty(splitForecast.get(1), Pi_rs1, capacity, dtlMap);
|
|
|
List<Double> Pi_rs2 = splitActual.get(2).stream().map(StationInfoMin::getPjgl).collect(Collectors.toList());
|
|
|
double Q_D3 = calculatePenalty(splitForecast.get(2), Pi_rs2, capacity, dtlMap);
|
|
|
- double[] weights = {0.6, 0.3, 0.1};
|
|
|
- return Q_D1 * weights[0] + Q_D2 * weights[1] + Q_D3 * weights[2];
|
|
|
+ return Q_D1 * 0.6d + Q_D2 * 0.3d + Q_D3 * 0.1d;
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -5963,14 +5967,6 @@ public class JavaFunctionJobHandler extends IJobHandler {
|
|
|
return K;
|
|
|
}
|
|
|
|
|
|
- // private double calculateWeightedSum(double[] integralDifferences, double weight) {
|
|
|
- // double sum = 0;
|
|
|
- // for (double diff : integralDifferences) {
|
|
|
- // sum += diff;
|
|
|
- // }
|
|
|
- // return sum * weight;
|
|
|
- // }
|
|
|
-
|
|
|
/**
|
|
|
* 计算超短期预测考核总分
|
|
|
*/
|