From 6bff0b135589d238084b592cc9f4b90185426b2f Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Thu, 13 Jun 2019 16:39:20 +0800
Subject: [PATCH] AI
---
src/main/java/com/moral/service/impl/SensorServiceImpl.java | 6 +++
src/main/resources/mapper/SensorMapper.xml | 6 +++
src/main/java/com/moral/service/SensorService.java | 3 +
src/main/java/com/moral/mapper/SensorMapper.java | 2 +
src/main/java/com/moral/controller/ScreenController.java | 79 +++++++++++++++++++++++++++++++--------
5 files changed, 79 insertions(+), 17 deletions(-)
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 99a7cea..4b19fc3 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -970,17 +970,69 @@
})
public ResultBean<List<Map<String, Object>>> AIForecast (HttpServletRequest request) throws Exception {
Map<String, Object> parameters = getParametersStartingWith(request, null);
- ParameterUtils.getTimeType4Time(parameters);
+ ParameterUtils.getTimeType4Time(parameters);
String monitor_point_id = (String) parameters.get("monitorPoint");
- parameters.put("monitorPointId", parameters.remove("monitorPoint"));
- Object sensorKey = parameters.remove("sensorKey");
- parameters.put("sensors", Arrays.asList(sensorKey));
- List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
- System.out.println("ScreenController-----AIForecast-----list:"+list);
+ parameters.put("monitorPointId", parameters.remove("monitorPoint"));
+ String[] sensorKeys = parameters.remove("sensorKey").toString().split(",");
+ System.out.println("ScreenController-----AIForecast-----sensorKeys:"+sensorKeys.toString());
+ parameters.put("sensors", Arrays.asList(sensorKeys));
+ // monitorPointService.isCompensateCalculation(parameters);
+ List<Map<String, Object>> list = historyMinutelyService.getMonitorPointOrDeviceAvgData(parameters);
+ System.out.println("ScreenController-----AIForecast-----list:"+list);
+
+ //������������������
+ Map<String, Map<String, Object>> sensorUnitMap = sensorUnitService.getSensorsByMonitPointId(monitor_point_id);
+
+ /*if(sensorUnitMap!=null && !sensorUnitMap.isEmpty()) {
+ for (Map<String, Object> map : list) {
+ String time = map.get("time").toString();
+ time = time.substring(time.length() - 2);
+ map.put("time", Integer.valueOf(time));
+ List<Number> values = new ArrayList<Number>();
+ for (String string : sensorKeys) {
+ values.add((Number) map.remove(string));
+ }
+ map.put("values", values);
+ }
+ }else {
+ for (Map<String, Object> map : list) {
+ String time = map.get("time").toString();
+ time = time.substring(time.length() - 2);
+ map.put("time", Integer.valueOf(time));
+ List<Number> values = new ArrayList<Number>();
+ for (String string : sensorKeys) {
+ values.add((Number) map.remove(string));
+ }
+ map.put("values", values);
+ }
+ }*/
+
+ for (Map<String, Object> map : list) {
+ String time = map.get("time").toString();
+ time = time.substring(time.length() - 2);
+ map.put("time", Integer.valueOf(time));
+ List<Number> values = new ArrayList<Number>();
+ List<String> units = new ArrayList<String>();
+ for (String string : sensorKeys) {
+ if(sensorUnitMap!=null && !sensorUnitMap.isEmpty()) {
+ if(sensorUnitMap.get(string)!=null) {
+ units.add(sensorUnitMap.get(string).get("name").toString());
+ }else {
+ Map<String, Object> sensorMap = sensorService.getSensorBySensorKey(string);
+ units.add(sensorMap.get("unit").toString());
+ }
+ }else {
+ Map<String, Object> sensorMap = sensorService.getSensorBySensorKey(string);
+ units.add(sensorMap.get("unit").toString());
+ }
+ values.add((Number) map.remove(string));
+ }
+ map.put("values", values);
+ map.put("units", units);
+ }
- //������������������
- Map<String, Map<String, Object>> sensorMap = sensorUnitService.getSensorsByMonitPointId(monitor_point_id);
+ /*
if(sensorMap!=null && !sensorMap.isEmpty()) {
for (Map<String, Object> map : list) {
System.out.println("ScreenController-----AIForecast-----map:"+map);
@@ -997,16 +1049,9 @@
map.put("unit", "mg/m��");
}
}
- }else {
- for (Map<String, Object> map : list) {
- String time = map.get("time").toString();
- time = time.substring(time.length() - 2);
- map.put("time", Integer.valueOf(time));
- map.put("value", map.remove(sensorKey));
- map.put("unit", "mg/m��");
- }
- }
+ }*/
//return null;
+ System.out.println("ScreenController-----AIForecast-----list:"+list);
return new ResultBean<List<Map<String, Object>>>(list);
}
diff --git a/src/main/java/com/moral/mapper/SensorMapper.java b/src/main/java/com/moral/mapper/SensorMapper.java
index be79476..ce38a83 100644
--- a/src/main/java/com/moral/mapper/SensorMapper.java
+++ b/src/main/java/com/moral/mapper/SensorMapper.java
@@ -19,5 +19,7 @@
List<Map<String, Object>> getSensorsByDeviceVersionId(Map<String, Object> parameters);
List<Sensor> getSensorsByCriteria(Map<String, Object> parameters);
+
+ Map<String,Object> getSensorBySensorKey(@Param("sensorKey")String sensorKey);
}
\ No newline at end of file
diff --git a/src/main/java/com/moral/service/SensorService.java b/src/main/java/com/moral/service/SensorService.java
index dd0f733..1eb869d 100644
--- a/src/main/java/com/moral/service/SensorService.java
+++ b/src/main/java/com/moral/service/SensorService.java
@@ -1,6 +1,7 @@
package com.moral.service;
import java.util.List;
+import java.util.Map;
import com.moral.common.bean.PageBean;
import com.moral.entity.Sensor;
@@ -24,4 +25,6 @@
List<Sensor> queryByOrgId(Integer organizationId);
public List<Sensor> getAllSensors();
+
+ Map<String, Object> getSensorBySensorKey(String SensorKey);
}
diff --git a/src/main/java/com/moral/service/impl/SensorServiceImpl.java b/src/main/java/com/moral/service/impl/SensorServiceImpl.java
index c088849..fc9b469 100644
--- a/src/main/java/com/moral/service/impl/SensorServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/SensorServiceImpl.java
@@ -11,6 +11,7 @@
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.List;
+import java.util.Map;
@Service
public class SensorServiceImpl implements SensorService{
@@ -83,4 +84,9 @@
public List<Sensor> getAllSensors() {
return sensorMapper.selectAll();
}
+ @Override
+ public Map<String, Object> getSensorBySensorKey(String sensorKey) {
+ Map<String, Object> map = sensorMapper.getSensorBySensorKey(sensorKey);
+ return map;
+ }
}
diff --git a/src/main/resources/mapper/SensorMapper.xml b/src/main/resources/mapper/SensorMapper.xml
index 054e376..ecfc2a0 100644
--- a/src/main/resources/mapper/SensorMapper.xml
+++ b/src/main/resources/mapper/SensorMapper.xml
@@ -122,4 +122,10 @@
)
order by sen.id asc
</select>
+
+ <select id="getSensorBySensorKey" resultType="java.util.Map">
+ SELECT *
+ FROM sensor
+ WHERE sensor_key = #{sensor_key}
+ </select>
</mapper>
\ No newline at end of file
--
Gitblit v1.8.0