From ace40d29ff8065ea801c57d249400caf27ece585 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Tue, 28 Aug 2018 14:18:40 +0800
Subject: [PATCH] 接口 优化

---
 src/main/java/com/moral/common/util/ParameterUtils.java              |    3 +++
 src/main/resources/mapper/HistoryMinutelyMapper.xml                  |    2 +-
 src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java |    9 ++++++---
 3 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/moral/common/util/ParameterUtils.java b/src/main/java/com/moral/common/util/ParameterUtils.java
index 3c5080a..8e5e06d 100644
--- a/src/main/java/com/moral/common/util/ParameterUtils.java
+++ b/src/main/java/com/moral/common/util/ParameterUtils.java
@@ -47,6 +47,7 @@
 
 	public static void  getElementByType(Map<String, Object> parameters){
 		if (parameters.containsKey("type")) {
+			parameters.put("timeUnits", "daily");
 			switch (parameters.get("type").toString()) {
 			case "year":
 				parameters.put("format", "yyyy");
@@ -65,12 +66,14 @@
 				parameters.put("typeFormat", "%Y-%m-%d %H");
 				parameters.put("timeLength", 24);
 				parameters.put("field", Calendar.DATE);
+				parameters.put("timeUnits", "minutely");
 				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);
+				parameters.put("timeUnits", "minutely");
 				break;
 			}
 		}
diff --git a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java
index 474d819..20c8d03 100644
--- a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java
@@ -37,6 +37,7 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.TypeReference;
 import com.moral.common.util.CalculateUtils;
+import com.moral.common.util.ParameterUtils;
 import com.moral.common.util.ReportTimeFormat;
 import com.moral.common.util.ResourceUtil;
 import com.moral.common.util.ValidateUtil;
@@ -139,7 +140,8 @@
 		List<Map<String, Object>> list = JSON.parseObject((String)parameters.remove("items"), new TypeReference<List<Map<String, Object>>>() {});
 		
 		String type = (String) parameters.get("type");
-		parameters.putAll(getElementByType(type));
+		// parameters.putAll(getElementByType(type));
+		ParameterUtils.getElementByType(parameters);
 		Integer timeLength = Integer.valueOf(parameters.remove("timeLength").toString());
 		if ("month".equals(type)) {
 			for (Map<String, Object> map : list) {
@@ -315,9 +317,10 @@
 
 	@Override
 	public void convertQueryParam(Map<String, Object> parameters) throws ParseException {
-		String type = (String) parameters.get("type");
 		if (!parameters.containsKey("field")) {
-			parameters.putAll(getElementByType(type));
+			// String type = (String) parameters.get("type");
+			// parameters.putAll(getElementByType(type));
+			ParameterUtils.getElementByType(parameters);
 		}
 		String time = (String) parameters.get("time");
 		String format = (String) parameters.get("format");
diff --git a/src/main/resources/mapper/HistoryMinutelyMapper.xml b/src/main/resources/mapper/HistoryMinutelyMapper.xml
index d9c4cd8..3a2d3c1 100644
--- a/src/main/resources/mapper/HistoryMinutelyMapper.xml
+++ b/src/main/resources/mapper/HistoryMinutelyMapper.xml
@@ -38,7 +38,7 @@
 				AVG(json->'$.${sensorKey}[0]') AS '${sensorKey}'
 			</foreach>
 		FROM
-			history_minutely h
+			history_${timeUnits} h
 		WHERE
 			h.time >= #{start}
 		AND h.time <![CDATA[<]]> #{end}

--
Gitblit v1.8.0