From f5e4a1aacb32d0b6a067ecb47bc29e08eefd11cd Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Wed, 29 Apr 2020 14:35:21 +0800
Subject: [PATCH] update
---
src/main/java/com/moral/controller/ScreenController.java | 280 ++++++++++++++++++++++++++++---------------------------
1 files changed, 144 insertions(+), 136 deletions(-)
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 3920b26..0a39b4f 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -463,7 +463,7 @@
@GetMapping("month-sensor-average")
public Map<String, Object> getMonthAverageBySensor(HttpServletRequest request) {
Map<String, Object> parameters = getParametersStartingWith(request, null);
- return historyMinutelyService.getMonthAverageBySensor(parameters);
+ return historyMinutelyService.getAverageBySensor(parameters);
}
@GetMapping("check-activate")
@@ -823,139 +823,138 @@
return new ResultBean<List<Map<String, Object>>>(list);
}
- @GetMapping("report_avg_AreaData")
- @ApiOperation(value = "������������������������������������������", notes = "������������������������������������������")
- @ApiImplicitParams(value = {
- @ApiImplicitParam(name = "monitorPoint", value = "���������id", required = true, paramType = "query", dataType = "String"),
- @ApiImplicitParam(name = "mac", value = "������mac", required = false, paramType = "query", dataType = "String"),
- @ApiImplicitParam(name = "areaCode", value = "������������", required = true, paramType = "query", dataType = "String"),
- @ApiImplicitParam(name = "sensorKey", value = "���������key", required = true, paramType = "query", dataType = "String"),
- @ApiImplicitParam(name = "time", value = "������,������(���������2018-03)", required = true, paramType = "query", dataType = "String"),})
- public ResultBean<List<Map<String, Object>>> getAreaAvgDataByAreaCode(HttpServletRequest request)
- throws Exception {
- Map<String, Object> parameters = getParametersStartingWith(request, null);
- ParameterUtils.getTimeType4Time(parameters);
- parameters.put("monitorPointId", parameters.remove("monitorPoint"));
- parameters.put("areaCode", parameters.remove("areaCode"));
- String[] sensorKeys = parameters.remove("sensorKey").toString().split(",");
- String s=sensorKeys[0];
- parameters.put("sensors", Arrays.asList(sensorKeys));
- parameters.put("sensors2", s);
- List<Map<String, Object>> monitorList = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
- for (Map<String, Object> monitorMap : monitorList) {
- String time = monitorMap.get("time").toString();
- time = time.substring(time.length() - 2);
- monitorMap.put("time", Integer.valueOf(time));
- }
- Integer maxTime = 0;
- Integer max1 = 0;
- if (monitorList.size() != 0) {
- Map<String, Object> monitorMap = monitorList.get(monitorList.size() - 1);
- max1 = Integer.valueOf(monitorMap.get("time").toString());
- } else {
- max1 = 0;
- }
- String sensorKey1 = s;
- switch (s) {
- case "e1":
- sensorKey1 = "PM2_5";
- break;
- case "e2":
- sensorKey1 = "PM10";
- break;
- case "e10":
- sensorKey1 = "CO";
- break;
- case "e11":
- sensorKey1 = "SO2";
- break;
- case "e15":
- sensorKey1 = "O3";
- break;
- case "e16":
- sensorKey1 = "NO2";
- break;
- default:
- break;
- }
-
- parameters.put("sensors1", sensorKey1);
-
- List<Map<String, Object>> areaList = historyMinutelyService.getAreaAvgDataByAreaCode(parameters);
- if (areaList.isEmpty()) {
- Integer areaCode = Integer.valueOf(request.getParameter("areaCode"));
- areaCode = hangzhouAqiService.queryCityCode(areaCode);
- parameters.remove("areaCode");
- parameters.put("areaCode", String.valueOf(areaCode));
- areaList = historyMinutelyService.getAreaAvgDataByAreaCode(parameters);
- }
-
- for (Map<String, Object> areaMap : areaList) {
- String time = areaMap.get("time").toString();
- time = time.substring(time.length() - 2);
- areaMap.put("time", Integer.valueOf(time));
- }
-
- Integer max = 0;
- if (areaList.size() != 0) {
- Map<String, Object> areaMap = areaList.get(areaList.size() - 1);
- max = Integer.valueOf(areaMap.get("time").toString());
- } else {
- max = 0;
- }
-
- if (max1 >= max) {
- maxTime = max1;
- } else {
- maxTime = max;
- }
-
- ArrayList<Map<String, Object>> resultList = new ArrayList<>();
-
- for (int i = 0; i <= maxTime; i++) {
- resultList.add(null);
- }
-
- for (Map<String, Object> areaMap : areaList) {
- Integer time = Integer.valueOf(areaMap.get("time").toString());
- resultList.set(time, areaMap);
- }
-
- for (Map<String, Object> resultMap : resultList) {
- for (Map<String, Object> monitorMap : monitorList) {
- ArrayList<String> values = new ArrayList<>();
- String monitorTime = monitorMap.get("time").toString();
- if (resultMap != null) {
- String resultTime = resultMap.get("time").toString();
- if (resultTime.equals(monitorTime)) {
- String value = resultMap.remove(s).toString();
- String value1 = monitorMap.remove(s).toString();
- values.add(value);
- values.add(value1);
- resultMap.put("values", values);
- }
- } else {
- String value1 = monitorMap.get(s).toString();
- values.add(null);
- values.add(value1);
+ @GetMapping("report_avg_AreaData")
+ @ApiOperation(value = "������������������������������������������", notes = "������������������������������������������")
+ @ApiImplicitParams(value = {
+ @ApiImplicitParam(name = "monitorPoint", value = "���������id", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "mac", value = "������mac", required = false, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "areaCode", value = "������������", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "sensorKey", value = "���������key", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "time", value = "������,������(���������2018-03)", required = true, paramType = "query", dataType = "String"),})
+ public ResultBean<List<Map<String, Object>>> getAreaAvgDataByAreaCode(HttpServletRequest request)
+ throws Exception {
+ Map<String, Object> parameters = getParametersStartingWith(request, null);
+ ParameterUtils.getTimeType4Time(parameters);
+ parameters.put("monitorPointId", parameters.remove("monitorPoint"));
+ parameters.put("areaCode", parameters.remove("areaCode"));
+ String[] sensorKeys = parameters.remove("sensorKey").toString().split(",");
+ String s = sensorKeys[0];
+ parameters.put("sensors", Arrays.asList(sensorKeys));
+ parameters.put("sensors2", s);
+ List<Map<String, Object>> monitorList = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
+ for (Map<String, Object> monitorMap : monitorList) {
+ String time = monitorMap.get("time").toString();
+ time = time.substring(time.length() - 2);
+ monitorMap.put("time", Integer.valueOf(time));
}
- }
+ Integer maxTime = 0;
+ Integer max1 = 0;
+ if (monitorList.size() != 0) {
+ Map<String, Object> monitorMap = monitorList.get(monitorList.size() - 1);
+ max1 = Integer.valueOf(monitorMap.get("time").toString());
+ } else {
+ max1 = 0;
+ }
+ String sensorKey1 = s;
+ switch (s) {
+ case "e1":
+ sensorKey1 = "PM2_5";
+ break;
+ case "e2":
+ sensorKey1 = "PM10";
+ break;
+ case "e10":
+ sensorKey1 = "CO";
+ break;
+ case "e11":
+ sensorKey1 = "SO2";
+ break;
+ case "e15":
+ sensorKey1 = "O3";
+ break;
+ case "e16":
+ sensorKey1 = "NO2";
+ break;
+ default:
+ break;
+ }
+
+ parameters.put("sensors1", sensorKey1);
+
+ List<Map<String, Object>> areaList = historyMinutelyService.getAreaAvgDataByAreaCode(parameters);
+
+ if (areaList.isEmpty()) {
+ Integer areaCode = Integer.valueOf(request.getParameter("areaCode"));
+ areaCode = hangzhouAqiService.queryCityCode(areaCode);
+ parameters.remove("areaCode");
+ parameters.put("areaCode", String.valueOf(areaCode));
+ areaList = historyMinutelyService.getAreaAvgDataByAreaCode(parameters);
+ }
+
+ for (Map<String, Object> areaMap : areaList) {
+ String time = areaMap.get("time").toString();
+ time = time.substring(time.length() - 2);
+ areaMap.put("time", Integer.valueOf(time));
+ }
+
+ Integer max = 0;
+ if (areaList.size() != 0) {
+ Map<String, Object> areaMap = areaList.get(areaList.size() - 1);
+ max = Integer.valueOf(areaMap.get("time").toString());
+ } else {
+ max = 0;
+ }
+
+ if (max1 >= max) {
+ maxTime = max1;
+ } else {
+ maxTime = max;
+ }
+
+ ArrayList<Map<String, Object>> resultList = new ArrayList<>();
+
+ for (int i = 0; i <= maxTime; i++) {
+ resultList.add(null);
+ }
+
+ for (Map<String, Object> areaMap : areaList) {
+ Integer time = Integer.valueOf(areaMap.get("time").toString());
+ resultList.set(time, areaMap);
+ }
+
+ for (Map<String, Object> resultMap : resultList) {
+ for (Map<String, Object> monitorMap : monitorList) {
+ ArrayList<String> values = new ArrayList<>();
+ String monitorTime = monitorMap.get("time").toString();
+ if (resultMap != null) {
+ String resultTime = resultMap.get("time").toString();
+ if (resultTime.equals(monitorTime)) {
+ String value = resultMap.remove(s).toString();
+ String value1 = monitorMap.get(s).toString();
+ values.add(value);
+ values.add(value1);
+ resultMap.put("values", values);
+ }
+ } else {
+ String value1 = monitorMap.get(s).toString();
+ values.add(null);
+ values.add(value1);
+ }
+ }
+ }
+
+ resultList.removeAll(Collections.singleton(null));
+
+ for (Map<String, Object> resultMap : resultList) {
+ if (resultMap.containsKey(s)) {
+ ArrayList<String> values = new ArrayList<>();
+ values.add(resultMap.remove(s).toString());
+ values.add(null);
+ resultMap.put("values", values);
+ }
+ }
+ return new ResultBean<List<Map<String, Object>>>(resultList);
}
-
- resultList.removeAll(Collections.singleton(null));
-
- for (Map<String, Object> resultMap : resultList) {
- if (resultMap.containsKey(s)) {
- ArrayList<String> values = new ArrayList<>();
- values.add(resultMap.remove(s).toString());
- values.add(null);
- resultMap.put("values", values);
- }
- }
-
- return new ResultBean<List<Map<String, Object>>>(resultList);
-
- }
@GetMapping("getmpoint-byid")
@ApiOperation(value = "���������������������", notes = "���������������������,���������������������������������������������")
@@ -1342,7 +1341,12 @@
String et = parameters.get("endTime").toString();
String endYearAndDay = et.substring(0, et.lastIndexOf("-"));
String endHour = et.substring(et.lastIndexOf("-") + 1);
- String endTime = endYearAndDay + " " + endHour + ":00:00";
+ int endHourValue = Integer.valueOf(endHour);
+ int startHourValue = Integer.valueOf(startHour);
+ if (endHourValue <= startHourValue) {
+ endHourValue = startHourValue + 1;
+ }
+ String endTime = startYearAndDay + " " + endHourValue + ":00:00";
parameters.put("startTime", startTime);
parameters.put("endTime", endTime);
String mac = parameters.get("mac").toString();
@@ -1463,7 +1467,7 @@
@GetMapping("/carTrajectory")
@ApiOperation(value = "���������������������", notes = "���������������������")
@ApiImplicitParams(value = {
- @ApiImplicitParam(name = "mac", value = "������mac������������p5dnd7a0392082���", required = true, paramType = "query", dataType = "String"),
+ @ApiImplicitParam(name = "mac", value = "������mac������������p5dnd7a0392081���", required = true, paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "startTime", value = "������������(���������2020-03-19-14)", required = true, paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endTime", value = "������������(���������2020-03-19-17)", required = true, paramType = "query", dataType = "String")
})
@@ -1474,9 +1478,13 @@
String startHour = st.substring(st.lastIndexOf("-") + 1);
String startTime = startYearAndDay + " " + startHour + ":00:00";
String et = parameters.get("endTime").toString();
- String endYearAndDay = et.substring(0, et.lastIndexOf("-"));
String endHour = et.substring(et.lastIndexOf("-") + 1);
- String endTime = endYearAndDay + " " + endHour + ":00:00";
+ int endHourValue = Integer.valueOf(endHour);
+ int startHourValue = Integer.valueOf(startHour);
+ if (endHourValue <= startHourValue) {
+ endHourValue = startHourValue + 1;
+ }
+ String endTime = startYearAndDay + " " + endHourValue + ":00:00";
parameters.put("startTime", startTime);
parameters.put("endTime", endTime);
String mac = parameters.get("mac").toString();
--
Gitblit v1.8.0