From e66b0932eb782c6ec771ffaa9957e6d5d5361286 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Tue, 07 Aug 2018 12:49:06 +0800
Subject: [PATCH] 增加 年查询
---
src/main/java/com/moral/common/util/ParameterUtils.java | 78 +++++++++++++++++++++++++++++++++++++++
src/main/java/com/moral/controller/ScreenController.java | 21 ++--------
2 files changed, 83 insertions(+), 16 deletions(-)
diff --git a/src/main/java/com/moral/common/util/ParameterUtils.java b/src/main/java/com/moral/common/util/ParameterUtils.java
new file mode 100644
index 0000000..3c5080a
--- /dev/null
+++ b/src/main/java/com/moral/common/util/ParameterUtils.java
@@ -0,0 +1,78 @@
+package com.moral.common.util;
+
+import java.util.Calendar;
+import java.util.Map;
+
+public class ParameterUtils {
+
+ public static void getTimeType4Time(Map<String, Object> parameters) {
+ if (parameters.containsKey("time")) {
+ int length = ((String) parameters.get("time")).split("-").length;
+ if (length == 2) {
+ parameters.put("type", "month");
+ } else if (length == 3) {
+ parameters.put("type", "day");
+ } else if (length == 1) {
+ parameters.put("type", "year");
+ }
+ }
+ }
+
+ public static void getRegionType4RegionCode(Map<String, Object> parameters) {
+ String regionType = "village";
+ String nextLevel = "";
+ if (parameters.containsKey("regionCode")) {
+ String regionCode = parameters.get("regionCode").toString();
+ if (regionCode.length() == 6) {
+ if (regionCode.endsWith("0000")) {
+ regionType = "province";
+ nextLevel = "city";
+ } else if (regionCode.endsWith("00")) {
+ regionType = "city";
+ nextLevel = "area";
+ } else {
+ regionType = "area";
+ nextLevel = "town";
+ }
+ } else if (regionCode.length() == 12) {
+ if (regionCode.endsWith("000")) {
+ regionType = "town";
+ nextLevel = "village";
+ }
+ }
+ }
+ parameters.put("regionType", regionType);
+ parameters.put("nextLevel", nextLevel);
+ }
+
+ public static void getElementByType(Map<String, Object> parameters){
+ if (parameters.containsKey("type")) {
+ switch (parameters.get("type").toString()) {
+ case "year":
+ parameters.put("format", "yyyy");
+ parameters.put("typeFormat", "%Y-%m");
+ parameters.put("timeLength", 12);
+ parameters.put("field", Calendar.YEAR);
+ break;
+ case "month":
+ parameters.put("format", "yyyy-MM");
+ parameters.put("typeFormat", "%Y-%m-%d");
+ parameters.put("timeLength", 28);
+ parameters.put("field", Calendar.MONTH);
+ break;
+ case "day":
+ parameters.put("format", "yyyy-MM-dd");
+ parameters.put("typeFormat", "%Y-%m-%d %H");
+ parameters.put("timeLength", 24);
+ parameters.put("field", Calendar.DATE);
+ break;
+ case "hour":
+ parameters.put("format", "yyyy-MM-dd HH");
+ parameters.put("typeFormat", "%Y-%m-%d %H:%i");
+ parameters.put("timeLength", 60);
+ parameters.put("field", Calendar.HOUR);
+ break;
+ }
+ }
+ }
+}
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index ba2a89e..286fa38 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -10,6 +10,7 @@
import javax.servlet.http.HttpServletRequest;
import com.alibaba.fastjson.*;
+import com.moral.common.util.ParameterUtils;
import com.moral.common.util.StringUtils;
import com.moral.entity.*;
import com.moral.entity.alarm.AlarmConfig;
@@ -528,17 +529,10 @@
@GetMapping("report_avg_datas")
public ResultBean<List<Map<String, Object>>> getMonitorPointOrDeviceAvgData(HttpServletRequest request) throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
- int length = ((String)parameters.get("time")).split("-").length;
- if (length == 2) {
- parameters.put("type", "month");
- } else if (length == 3){
- parameters.put("type", "day");
- }
+ ParameterUtils.getTimeType4Time(parameters);
parameters.put("monitorPointId", parameters.remove("monitorPoint"));
- String sensorKey = parameters.remove("sensorKey").toString();
- List<String> sensorKeys = new ArrayList<String>();
- sensorKeys.add(sensorKey);
- parameters.put("sensors", sensorKeys);
+ Object sensorKey = parameters.remove("sensorKey");
+ parameters.put("sensors", Arrays.asList(sensorKey));
List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
for (Map<String, Object> map : list) {
@@ -652,12 +646,7 @@
})
public ResultBean<List<Map<String, Object>>> getMonitorPointOrDeviceAvgDataBySensorKey(HttpServletRequest request) throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
- int length = ((String)parameters.get("time")).split("-").length;
- if (length == 2) {
- parameters.put("type", "month");
- } else if (length == 3){
- parameters.put("type", "day");
- }
+ ParameterUtils.getTimeType4Time(parameters);
parameters.put("monitorPointId", parameters.remove("monitorPoint"));
String[] sensorKeys = parameters.remove("sensorKey").toString().split(",");
parameters.put("sensors", Arrays.asList(sensorKeys));
--
Gitblit v1.8.0