From faec027b63bb19d061098724754895ae801ad493 Mon Sep 17 00:00:00 2001 From: 沈斌 <bluelazysb@hotmail.com> Date: Mon, 30 Oct 2017 14:03:30 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/main/java/com/moral/monitor/listener/TaskListener.java | 25 ++++++++++++++++++++----- 1 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/moral/monitor/listener/TaskListener.java b/src/main/java/com/moral/monitor/listener/TaskListener.java index 046f0c0..e346459 100644 --- a/src/main/java/com/moral/monitor/listener/TaskListener.java +++ b/src/main/java/com/moral/monitor/listener/TaskListener.java @@ -4,6 +4,7 @@ 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; @@ -15,6 +16,7 @@ import org.springframework.amqp.rabbit.connection.Connection; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.io.UnsupportedEncodingException; @@ -52,12 +54,17 @@ String mac = msgData.get("mac"); String ver = msgData.get("ver"); + if(StringUtils.isEmpty(ver) || StringUtils.isEmpty(mac)) { + return; + } + Map<String, Float> adjustMap; - if(RedisUtil.hasKey(redisTemplate, mac)) { - adjustMap = JSON.parseObject(RedisUtil.get(redisTemplate, mac), new TypeReference<Map<String, Float>>() {}); + String adjust_key = "adjust_" + mac; + if(RedisUtil.hasKey(redisTemplate, adjust_key)) { + adjustMap = JSON.parseObject(RedisUtil.get(redisTemplate, adjust_key), new TypeReference<Map<String, Float>>() {}); } else { adjustMap = getAdjustData(mac); - RedisUtil.set(redisTemplate, mac, JSON.toJSONString(adjustMap)); + RedisUtil.set(redisTemplate, adjust_key, JSON.toJSONString(adjustMap)); } if(!adjustMap.isEmpty()) { @@ -74,7 +81,7 @@ // System.out.println(message); // System.out.println(JSON.toJSONString(msgData)); -// rabbitTemplate.convertAndSend("monitors_data", "", JSON.toJSONString(msgData).getBytes()); + rabbitTemplate.convertAndSend("monitors_data2", "", 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 @@ -87,13 +94,21 @@ 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)); + //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) { -- Gitblit v1.8.0