|
@@ -105,8 +105,23 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
|
|
|
try {
|
|
|
//所有数据
|
|
|
- for (String height : heightAll) {
|
|
|
- for (Map<String, Object> m : allData) {
|
|
|
+ for (Map<String, Object> m : allData) {
|
|
|
+ for (String height : heightAll) {
|
|
|
+ if(m.get("time").toString().contains("4:50")){
|
|
|
+ System.out.println("height = " + m);
|
|
|
+ }
|
|
|
+
|
|
|
+ //异常数据赋值为-99
|
|
|
+ if (m.get("abnormalType") != null) {
|
|
|
+ if (m.get("abnormalType").toString().contains(",")) {
|
|
|
+ String[] abnormalTypes = m.get("abnormalType").toString().split(",");
|
|
|
+ for (String abnormalType : abnormalTypes) {
|
|
|
+ m.put(abnormalType, -99f);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ m.put(m.get("abnormalType").toString(), -99f);
|
|
|
+ }
|
|
|
+ }
|
|
|
ProphaseAnemometryData one = new ProphaseAnemometryData();
|
|
|
//组装子表数据
|
|
|
one.setWsAve(m.get("wsAve_" + height) == null ? null : CalculationUtil.getBigDecimal(m.get("wsAve_" + height)).setScale(2, RoundingMode.HALF_UP).floatValue());
|
|
@@ -139,9 +154,8 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
|
|
|
// log.error("prophaseAnemometryDataArrayList = " + JSONUtil.toJsonPrettyStr(prophaseAnemometryDataArrayList));
|
|
|
// prophaseAnemometryDataMapper.insertSplice(prophaseAnemometryDataArrayList, equipmentId, height);
|
|
|
- }
|
|
|
|
|
|
- for (Map<String, Object> m : allData) {
|
|
|
+
|
|
|
ProphaseWeatherData prophaseAnemometryPublicData = new ProphaseWeatherData();
|
|
|
if (m.get("paMax") != null)
|
|
|
//kpa转hpa
|
|
@@ -190,6 +204,7 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
prophaseAnemometryPublicDataArrayList.add(prophaseAnemometryPublicData);
|
|
|
|
|
|
}
|
|
|
+
|
|
|
// log.error("prophaseAnemometryPublicDataArrayList = " + JSONUtil.toJsonPrettyStr(prophaseAnemometryPublicDataArrayList));
|
|
|
prophaseWeatherDataService.insertSplice(prophaseAnemometryPublicDataArrayList, equipmentId);
|
|
|
} catch (Exception e) {
|
|
@@ -652,13 +667,10 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
Timestamp startTime = new Timestamp(timeBegin.getTime());
|
|
|
Timestamp endTime = new Timestamp(timeEnd.getTime());
|
|
|
HashSet<String> heightSet = new HashSet<>();
|
|
|
- LambdaQueryWrapper<ProphaseAnemometryData> lambdaQueryWrapper = Wrappers.lambdaQuery();
|
|
|
- lambdaQueryWrapper.eq(ProphaseAnemometryData::getEquipmentId, equipmentId);
|
|
|
- lambdaQueryWrapper.between(ProphaseAnemometryData::getTs, startTime, endTime);
|
|
|
//获取测风塔数据
|
|
|
List<WindTowerInfo> list = windTowerInfoService.lambdaQuery().eq(WindTowerInfo::getEquipmentNo, equipmentId).list();
|
|
|
List<Map<String, Object>> mapList = new ArrayList<>();
|
|
|
- List<ProphaseAnemometryData> prophaseAnemometryPublicData = prophaseAnemometryDataService.list(lambdaQueryWrapper);
|
|
|
+ List<ProphaseAnemometryData> prophaseAnemometryPublicData = prophaseAnemometryDataService.selectAll(equipmentId, startTime, endTime);
|
|
|
List<ProphaseWeatherData> prophaseAnemometryPublicDataList = prophaseWeatherDataService.selectPublicData(equipmentId, startTime, endTime);
|
|
|
|
|
|
String heights = list.get(0).getHeights();
|
|
@@ -667,44 +679,43 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
heightSet.addAll(Arrays.asList(heights.split(",")));
|
|
|
heightSet.addAll(Arrays.asList(wdHeights.split(",")));
|
|
|
//组装数据
|
|
|
- System.out.println("cn.hutool.core.date.DateUtil.date() = " + cn.hutool.core.date.DateUtil.date());
|
|
|
for (ProphaseWeatherData anemometryPublicData : prophaseAnemometryPublicDataList) {
|
|
|
HashMap<String, Object> dataMap = new HashMap<>();
|
|
|
List<ProphaseAnemometryData> prophaseAnemometryData = prophaseAnemometryPublicData.stream().filter(p -> p.getTs().getTime() == anemometryPublicData.getTs().getTime()).collect(Collectors.toList());
|
|
|
dataMap.put("time", anemometryPublicData.getTs().getTime());
|
|
|
- dataMap.put("t_ave", anemometryPublicData.getTAve());
|
|
|
- dataMap.put("t_max", anemometryPublicData.getTMax());
|
|
|
- dataMap.put("t_min", anemometryPublicData.getTMin());
|
|
|
- dataMap.put("t_sta", anemometryPublicData.getTSta());
|
|
|
- dataMap.put("t_inst", anemometryPublicData.getTInst());
|
|
|
+ dataMap.put("tAve", anemometryPublicData.getTAve());
|
|
|
+ dataMap.put("tMax", anemometryPublicData.getTMax());
|
|
|
+ dataMap.put("tMin", anemometryPublicData.getTMin());
|
|
|
+ dataMap.put("tSta", anemometryPublicData.getTSta());
|
|
|
+ dataMap.put("tInst", anemometryPublicData.getTInst());
|
|
|
|
|
|
|
|
|
- dataMap.put("rh_ave", anemometryPublicData.getRhAve());
|
|
|
- dataMap.put("rh_max", anemometryPublicData.getRhMax());
|
|
|
- dataMap.put("rh_min", anemometryPublicData.getRhMin());
|
|
|
- dataMap.put("rh_sta", anemometryPublicData.getRhSta());
|
|
|
- dataMap.put("rh_inst", anemometryPublicData.getRhInst());
|
|
|
+ dataMap.put("rhAve", anemometryPublicData.getRhAve());
|
|
|
+ dataMap.put("rhMax", anemometryPublicData.getRhMax());
|
|
|
+ dataMap.put("rhMin", anemometryPublicData.getRhMin());
|
|
|
+ dataMap.put("rhSta", anemometryPublicData.getRhSta());
|
|
|
+ dataMap.put("rhInst", anemometryPublicData.getRhInst());
|
|
|
|
|
|
- dataMap.put("pa_ave", anemometryPublicData.getPaAve());
|
|
|
- dataMap.put("pa_max", anemometryPublicData.getPaMax());
|
|
|
- dataMap.put("pa_min", anemometryPublicData.getPaMin());
|
|
|
- dataMap.put("pa_sta", anemometryPublicData.getPaSta());
|
|
|
- dataMap.put("pa_inst", anemometryPublicData.getPaInst());
|
|
|
+ dataMap.put("paAve", anemometryPublicData.getPaAve());
|
|
|
+ dataMap.put("paMax", anemometryPublicData.getPaMax());
|
|
|
+ dataMap.put("paMin", anemometryPublicData.getPaMin());
|
|
|
+ dataMap.put("paSta", anemometryPublicData.getPaSta());
|
|
|
+ dataMap.put("paInst", anemometryPublicData.getPaInst());
|
|
|
|
|
|
- dataMap.put("air_density", anemometryPublicData.getAirDensity());
|
|
|
+ dataMap.put("airdensity", anemometryPublicData.getAirDensity());
|
|
|
|
|
|
if (prophaseAnemometryData.size() > 0) {
|
|
|
for (ProphaseAnemometryData prophaseAnemometryDatum : prophaseAnemometryData) {
|
|
|
- dataMap.put("ws_ave" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsAve());
|
|
|
- dataMap.put("ws_max" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsMax());
|
|
|
- dataMap.put("ws_min" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsMin());
|
|
|
- dataMap.put("ws_sta" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsSta());
|
|
|
- dataMap.put("ws_inst" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsInst());
|
|
|
- dataMap.put("wd_ave" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdAve());
|
|
|
- dataMap.put("wd_max" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdMax());
|
|
|
- dataMap.put("wd_min" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdMin());
|
|
|
- dataMap.put("wd_sta" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdSta());
|
|
|
- dataMap.put("wd_inst" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdInst());
|
|
|
+ dataMap.put("wsAve_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsAve());
|
|
|
+ dataMap.put("wsMax_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsMax());
|
|
|
+ dataMap.put("wsMin_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsMin());
|
|
|
+ dataMap.put("wsSta_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsSta());
|
|
|
+ dataMap.put("wsInst_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWsInst());
|
|
|
+ dataMap.put("wdAve_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdAve());
|
|
|
+ dataMap.put("wdMax_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdMax());
|
|
|
+ dataMap.put("wdMin_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdMin());
|
|
|
+ dataMap.put("wdSta_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdSta());
|
|
|
+ dataMap.put("wdInst_" + prophaseAnemometryDatum.getLayerHeight(), prophaseAnemometryDatum.getWdInst());
|
|
|
|
|
|
}
|
|
|
}
|
|
@@ -712,7 +723,6 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
Map<String, Object> collect = dataMap.entrySet().stream().filter(h -> h.getValue() != null).collect(Collectors.toMap(Map.Entry::getKey, h -> h.getValue()));
|
|
|
mapList.add(collect);
|
|
|
}
|
|
|
- System.out.println("cn.hutool.core.date.DateUtil.date() = " + cn.hutool.core.date.DateUtil.date());
|
|
|
return mapList;
|
|
|
}
|
|
|
|
|
@@ -840,7 +850,7 @@ public class WindTowerDataParentTableServiceImpl extends ServiceImpl<WindTowerDa
|
|
|
if (time >= startTime && time <= endTime) {
|
|
|
return file;
|
|
|
}
|
|
|
- }else if(name.contains(".elog")){
|
|
|
+ } else if (name.contains(".elog")) {
|
|
|
String[] elogNameTime = name.split("_");
|
|
|
long time = DateUtil.parse(elogNameTime[1], "yyyyMMdd").getTime();
|
|
|
if (time >= startTime && time <= endTime) {
|