From 35bfe435d09808e451de0f766f7660f91bdd35be Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Thu, 04 Apr 2019 15:00:45 +0800
Subject: [PATCH] update

---
 src/main/java/com/moral/service/MonitorPointService.java               |    2 ++
 src/main/java/com/moral/controller/ScreenController.java               |    2 ++
 src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java      |    9 +++++++++
 src/main/java/com/moral/service/impl/DeviceAdjustValueServiceImpl.java |    2 +-
 src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java   |    4 +++-
 5 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 32d638a..bfdd21f 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -606,6 +606,7 @@
 		parameters.put("monitorPointId", parameters.remove("monitorPoint"));
 		Object sensorKey = parameters.remove("sensorKey");
 		parameters.put("sensors", Arrays.asList(sensorKey));
+		monitorPointService.isCompensateCalculation(parameters);
 		List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
 		
 		for (Map<String, Object> map : list) {
@@ -724,6 +725,7 @@
 		parameters.put("monitorPointId", parameters.remove("monitorPoint"));
 		String[] sensorKeys = parameters.remove("sensorKey").toString().split(",");
 		parameters.put("sensors", Arrays.asList(sensorKeys));
+		monitorPointService.isCompensateCalculation(parameters);
 		List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
 		
 		for (Map<String, Object> map : list) {
diff --git a/src/main/java/com/moral/service/MonitorPointService.java b/src/main/java/com/moral/service/MonitorPointService.java
index f57ae34..04f02e9 100644
--- a/src/main/java/com/moral/service/MonitorPointService.java
+++ b/src/main/java/com/moral/service/MonitorPointService.java
@@ -37,4 +37,6 @@
 	List<MonitorPoint> getMonitorPointsAndDevicesByRegion(Map<String, Object> parameters);
 
 	Collection<Object> getDevicesStateByRegion(Map<String, Object> parameters);
+
+	void isCompensateCalculation(Map<String, Object> parameters);
 }
diff --git a/src/main/java/com/moral/service/impl/DeviceAdjustValueServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceAdjustValueServiceImpl.java
index 4c49899..6824615 100644
--- a/src/main/java/com/moral/service/impl/DeviceAdjustValueServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceAdjustValueServiceImpl.java
@@ -58,7 +58,7 @@
             Map<String,Float> adjustMap = new HashMap<>();
             if(adjustValue.getValue()!=null&&!adjustValue.getValue().isEmpty()){
                 for(Map.Entry<String,Float> entry:adjustValue.getValue().entrySet()){
-                    if(entry.getValue()!=null&&entry.getValue()!=0){
+                    if(entry.getValue()!=null){
                         adjustMap.put(entry.getKey(),entry.getValue());
                     }
                 }
diff --git a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java
index 20c8d03..9b932f8 100644
--- a/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/HistoryMinutelyServiceImpl.java
@@ -311,7 +311,9 @@
 	@Override
 	public List<Map<String, Object>> getMonitorPointOrDeviceAvgData(Map<String, Object> parameters) throws Exception {
 		convertQueryParam(parameters);
-
+		if (!ObjectUtils.isEmpty(parameters.get("compensate"))) {
+			parameters.put("timeUnits", "10min");
+		}
 		return historyMinutelyMapper.getMonitorPointOrDeviceAvgData(parameters);
 	}
 
diff --git a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java
index 0dfde57..1be75e8 100644
--- a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java
@@ -349,4 +349,13 @@
 		
 		return result.values();
 	}
+    
+    @Override
+    public void isCompensateCalculation(Map<String, Object> parameters) {
+		MonitorPoint monitorPoint = monitorPointMapper.selectByPrimaryKey(Integer.valueOf(parameters.get("monitorPointId").toString()));
+		if (Integer.valueOf(320581).equals(monitorPoint.getAreaCode())) {
+			parameters.put("compensate", true);
+		}
+    	
+	}
 }

--
Gitblit v1.8.0