From 4428fd50d5e8216d5d7bd63a7fc2e1bb8e239d9d Mon Sep 17 00:00:00 2001
From: ZhuDongming <773644075@qq.com>
Date: Wed, 13 May 2020 13:58:13 +0800
Subject: [PATCH] update大屏地图跳转定位问题
---
src/main/java/com/moral/controller/ReportController.java | 89 +++++++++++++++++++++++++++++---------------
1 files changed, 58 insertions(+), 31 deletions(-)
diff --git a/src/main/java/com/moral/controller/ReportController.java b/src/main/java/com/moral/controller/ReportController.java
index 5d90395..d3c7e6c 100644
--- a/src/main/java/com/moral/controller/ReportController.java
+++ b/src/main/java/com/moral/controller/ReportController.java
@@ -4,6 +4,8 @@
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
+import java.util.Collections;
+import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -99,23 +101,13 @@
@GetMapping("newExcel")
public ResultBean<Boolean> getNExcelReport(HttpServletRequest request, HttpServletResponse response) throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
- List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
- ArrayList<String> sensorKeys = (ArrayList<String>) parameters.get("sensorKeys");
- for (Map<String, Object> map : list) {
- for (String sensorKey : sensorKeys) {
- if (map.get(sensorKey) == null) {
- map.put(sensorKey, "");
- }
- }
- }
-
String type = parameters.get("type").toString();
String time = parameters.get("time").toString();
- String timeb = "";
+ String timeb;
if (parameters.get("timeb") == null) {
- timeb = parameters.get("time").toString();
- } else {
- timeb = parameters.get("timeb").toString();
+ timeb = time;
+ }else {
+ timeb=parameters.get("timeb").toString();
}
String[] endTimes = timeb.split("-");
@@ -123,21 +115,12 @@
String beginTime = "";
String endTime = "";
List<String> monthList1 = new ArrayList<>();
- monthList1.add("01");
- monthList1.add("03");
- monthList1.add("05");
- monthList1.add("07");
- monthList1.add("08");
- monthList1.add("10");
- monthList1.add("12");
+ Collections.addAll(monthList1,"01","03","05","07","08","10","12");
List<String> monthList2 = new ArrayList<>();
- monthList2.add("04");
- monthList2.add("06");
- monthList2.add("09");
- monthList2.add("11");
+ Collections.addAll(monthList2,"04","06","09","11");
+
Integer year = Integer.valueOf(endTimes[0]);
int i = 0;
-
if (type.equals("year")) {
dateFormat = "yyyy-MM";
beginTime = time + "-01";
@@ -163,11 +146,11 @@
beginTime = time + " 00";
endTime = timeb + " 23";
i = Calendar.HOUR_OF_DAY;
- } else if (type.equals("hour")) {
- dateFormat = "yyyy-MM-dd HH:mm";
- beginTime = time + ":00:00";
- endTime = timeb + ":59:00";
- i = Calendar.MINUTE;
+ }else if(type.equals("hour")){
+ dateFormat="yyyy-MM-dd HH:mm";
+ beginTime=time+":00:00";
+ endTime=timeb+":59:00";
+ i=Calendar.MINUTE;
}
SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
@@ -182,6 +165,50 @@
resultList.add(map);
}
+ if(type.equals("year")){
+ SimpleDateFormat sd = new SimpleDateFormat("yyyy");
+ Date dt = sd.parse(timeb);
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(dt);
+ calendar.add(Calendar.YEAR, 1);
+ Date dt1 = calendar.getTime();
+ timeb = sd.format(dt1);
+ }else if(type.equals("month")){
+ SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM");
+ Date dt = sd.parse(timeb);
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(dt);
+ calendar.add(Calendar.MONTH, 1);
+ Date dt1 = calendar.getTime();
+ timeb = sd.format(dt1);
+ }else if(type.equals("day")){
+ SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd");
+ Date dt = sd.parse(timeb);
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(dt);
+ calendar.add(Calendar.DAY_OF_MONTH, 1);
+ Date dt1 = calendar.getTime();
+ timeb = sd.format(dt1);
+ }else if(type.equals("hour")){
+ SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH");
+ Date dt = sd.parse(timeb);
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(dt);
+ calendar.add(Calendar.HOUR_OF_DAY, 1);
+ Date dt1 = calendar.getTime();
+ timeb = sd.format(dt1);
+ }
+ parameters.put("timeb",timeb);
+ List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
+ ArrayList<String> sensorKeys = (ArrayList<String>)parameters.get("sensorKeys");
+ for (Map<String, Object> map : list) {
+ for (String sensorKey : sensorKeys) {
+ if(map.get(sensorKey)==null){
+ map.put(sensorKey,"");
+ }
+ }
+ }
+
for (Map<String, Object> map : resultList) {
for (Map<String, Object> resultMap : list) {
if (resultMap.get("time").equals(map.get("time"))) {
--
Gitblit v1.8.0