From 5ff099fc8a7271da4de8ff950b31a7dc15490d94 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Fri, 27 Oct 2017 16:49:43 +0800
Subject: [PATCH] 更换 import 引用

---
 src/main/java/com/moral/monitor/listener/TaskListener.java |   51 +++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 43 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/moral/monitor/listener/TaskListener.java b/src/main/java/com/moral/monitor/listener/TaskListener.java
index 8417a65..35a1ea3 100644
--- a/src/main/java/com/moral/monitor/listener/TaskListener.java
+++ b/src/main/java/com/moral/monitor/listener/TaskListener.java
@@ -3,6 +3,9 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.TypeReference;
 import com.moral.monitor.dao.JobDao;
+import com.moral.monitor.dao.TaskDao;
+import com.moral.monitor.entity.History;
+import com.moral.monitor.entity.Sensor;
 import com.moral.monitor.util.RedisUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -17,9 +20,8 @@
 import javax.annotation.Resource;
 import java.io.UnsupportedEncodingException;
 import java.math.BigDecimal;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 public class TaskListener implements MessageListener {
 
@@ -27,10 +29,10 @@
     RabbitTemplate rabbitTemplate;
 
     @Resource
-    CachingConnectionFactory rabbitConnectionFactory;
+    JobDao jobDao;
 
     @Resource
-    JobDao jobDao;
+    TaskDao taskDao;
 
     @Resource
     RedisTemplate<String, String> redisTemplate;
@@ -49,6 +51,7 @@
 
         Map<String, String> msgData = JSON.parseObject(message, new TypeReference<Map<String, String>>() {});
         String mac = msgData.get("mac");
+        String ver = msgData.get("ver");
 
         Map<String, Float> adjustMap;
         if(RedisUtil.hasKey(redisTemplate, mac)) {
@@ -69,11 +72,37 @@
             }
         }
 
-        System.out.println(message);
-        System.out.println(JSON.toJSONString(msgData));
+//        System.out.println(message);
+//        System.out.println(JSON.toJSONString(msgData));
 
-        rabbitTemplate.convertAndSend("monitors_data_2", "", JSON.toJSONString(msgData).getBytes());
+//        rabbitTemplate.convertAndSend("monitors_data", "", JSON.toJSONString(msgData).getBytes());
 //        rabbitTemplate.send("monitors_data_3", "", new Message(JSON.toJSONString(msgData).getBytes(), new MessageProperties()));
+
+        int state = (new Random()).nextInt(4) % 5; //TODO
+//        rabbitTemplate.convertAndSend("monitors_alarm", "", "{\"mac\": \"" + mac + "\", \"state\": " + state + "}");
+
+        //������������������
+        jobDao.updateStateByMac(mac, state);
+
+        //������������������
+        taskDao.insertTologger(mac, message, getDate());
+
+        //������������������
+        List<History> histories = new ArrayList<History>();
+        List<Sensor> sensorList = taskDao.selectFromsensorByver(ver);
+        for (Sensor sensor : sensorList) {
+            String key = sensor.getMac_key();
+            if(msgData.containsKey(key)) {
+                //taskDao.insertTohistory(mac, sensor.getSensor(), key, msgData.get(key));
+                History history = new History();
+                history.setMac(mac);
+                history.setMac_key(key);
+                history.setSensor(sensor.getSensor());
+                history.setMac_value(Double.valueOf(msgData.get(key)));
+                histories.add(history);
+            }
+        }
+        jobDao.batchInsertHistory(histories);
     }
 
     private Map<String, Float> getAdjustData(String mac) {
@@ -91,4 +120,10 @@
         }
         return dataMap;
     }
+
+    private String getDate() {
+        Date d = new Date();
+        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        return formatter.format(d);
+    }
 }

--
Gitblit v1.8.0