From 6992aaf0587c09f7c511c1afd12e1519d91363d3 Mon Sep 17 00:00:00 2001 From: cjl <276999030@qq.com> Date: Thu, 14 Dec 2023 15:38:45 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/cjl' into qa --- screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java | 83 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 81 insertions(+), 2 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java index fb92312..8d56568 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java @@ -17,6 +17,7 @@ import com.moral.api.pojo.ext.wind.WindListExt; import com.moral.api.pojo.form.device.MonitorPointQueryForm; import com.moral.api.pojo.form.historyFiveMinutely.QueryDeviceAndFiveMinuteDataForm; +import com.moral.api.pojo.vo.historyFiveMinutely.QueryFiveDataByMacVO; import com.moral.api.pojo.vo.user.QxUser; import com.moral.api.service.DeviceService; import com.moral.api.service.HistoryFiveMinutelyService; @@ -38,6 +39,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; +import java.text.DecimalFormat; import java.util.*; import java.util.stream.Collectors; @@ -189,7 +191,21 @@ } return getWindData(windData,params); } + @Override + public List<Object> getAreaWindDataCenter(Map<String, Object> params) { +// String timeUnits = DateUtils.dateToDateString(new Date(), DateUtils.yyyyMM_EN); +// params.put("timeUnits", timeUnits); +// //������������ +// List<WindData> windData = historyFiveMinutelyMapper.getAreaWindData(params); +// return getWindData(windData); + params.put("timeUnits","202311"); + params.put("time","2023-11-05 09:00"); + params.put("macs",Arrays.asList("p5dnd7a0245472","p5dnd7a0245400","p5dnd7a0245385","p5dnd7a0245374")); + List<WindData> windData = historyHourlyMapper.getArea(params); + params.put("perdlen",50); + return getWindData(windData,params); + } //��������������������������� @Override @@ -234,7 +250,12 @@ data = data + " " + sensor.getShowUnit(); result.put(sensor.getCode(), data); } else { - result.put(sensor.getCode(), "-"); + if (sensor.getCode().equals("a01008") ||sensor.getCode().equals("a01007")){ + result.put(sensor.getCode(), "-"); + }else { + result.put(sensor.getCode(), "0"+" "+sensor.getShowUnit()); + } + } } //������������������ @@ -243,6 +264,64 @@ result.put("dataTime", datas.get("dataTime")); //������ return orderSixParam(result); + } + + @Override + public QueryFiveDataByMacVO queryFiveDataByMac(String mac, String chooseTime, String time) { + Map<String, Object> datas = null; + if (chooseTime.equals("true")) { + String timeUnits = DateUtils.stringToDateString(time, "yyyy-MM-dd HH:mm", DateUtils.yyyyMM_EN); + String dbDataStr = historyHourlyMapper.queryLastHourlyMac(mac, time, timeUnits); + if (dbDataStr == null) { + return null; + } + datas = JSON.parseObject(dbDataStr, HashMap.class); + datas.put("dataTime", time); + } else { + datas = queryLastDataByMac(mac); + if (ObjectUtils.isEmpty(datas)){ + return null; + } + } + //������������������ + Map<String, Object> result = new HashMap<>(); + + //������������������code������ + List<String> sensorCodes = Arrays.asList("a34004", "a34002", "a21005", "a21004", "a21026", "a05024", "a99054", "a01008", "a01007"); + //������������������ + Device device = deviceService.getDeviceUnitAlramInforByMac(mac); + //��������������������������� + for (Sensor sensor : device.getVersion().getSensors()) { + if (!sensorCodes.contains(sensor.getCode())) + continue; + Object dataO = datas.get(sensor.getCode()); + if (dataO != null) { + String data = String.valueOf(dataO); + result.put(sensor.getCode(), data); + } else { + if (sensor.getCode().equals("a01008") ||sensor.getCode().equals("a01007")){ + result.put(sensor.getCode(), "-"); + }else { + result.put(sensor.getCode(), "0"); + } + + } + } + String str = new DecimalFormat("#.######").format(Double.parseDouble(result.get("a21005").toString())); + QueryFiveDataByMacVO queryFiveDataByMacVO = new QueryFiveDataByMacVO(); + queryFiveDataByMacVO.setName(device.getName()); + queryFiveDataByMacVO.setDataTime(datas.get("dataTime").toString()); + queryFiveDataByMacVO.setA34004(result.get("a34004").toString()); + queryFiveDataByMacVO.setA34002(result.get("a34002").toString()); + queryFiveDataByMacVO.setA21026(result.get("a21026").toString()); + queryFiveDataByMacVO.setA21004(result.get("a21004").toString()); + queryFiveDataByMacVO.setA21005(str); + queryFiveDataByMacVO.setA05024(result.get("a05024").toString()); + queryFiveDataByMacVO.setA01008(result.get("a01008").toString()); + queryFiveDataByMacVO.setA01007(result.get("a01007").toString()); + queryFiveDataByMacVO.setA99054(result.get("a99054").toString()); + + return queryFiveDataByMacVO; } //��������������������������������� @@ -397,7 +476,7 @@ laLaMap.put("minLa", lami); - int perdlen = windDate(Objects.nonNull(params.get("monitorPointList"))?params.get("monitorPointList").toString():null); + int perdlen = Objects.nonNull(params.get("perdlen"))?Integer.parseInt(params.get("perdlen").toString()):windDate(Objects.nonNull(params.get("monitorPointList"))?params.get("monitorPointList").toString():null); int length = perdlen*10; Double lo1 = lomi - length * 0.00001141; -- Gitblit v1.8.0