From 51a9ac0eaa65d214b338685b7cb83c21a5a32589 Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Thu, 28 Jun 2018 16:34:46 +0800
Subject: [PATCH] 刷新redis 里设备信息 添加 versionNum.并保持多处调用一致。

---
 src/main/resources/mapper/DeviceMapper.xml                  |    6 +++---
 src/main/java/com/moral/controller/ScreenController.java    |    3 +++
 src/main/java/com/moral/service/impl/DeviceServiceImpl.java |   15 +++++++--------
 3 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index 16dc30f..e549d66 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -609,6 +609,9 @@
 				}
 			}
 		}
+		if(rtdLayout.getDefaultMonitorItems().size() == 0 ) {
+			rtdLayout.getDefaultMonitorItems().addAll(rtdLayout.getCoreMonitorItems());
+		}
 		return new ResultBean(rtdLayout);
 	}
 
diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
index e2873c2..bbac004 100644
--- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -13,6 +13,8 @@
 import com.moral.common.exception.BusinessException;
 import com.moral.common.util.ExampleUtil;
 import com.moral.common.util.RedisUtils;
+import com.moral.entity.DeviceVersion;
+import com.moral.mapper.DeviceVersionMapper;
 import com.moral.mapper.MonitorPointMapper;
 import com.moral.mapper.OrganizationMapper;
 import org.apache.commons.collections.MapUtils;
@@ -58,6 +60,8 @@
     private Class ENTITY_CLASS = Device.class;
     @Resource
 	OrganizationMapper orgMapper;
+    @Resource
+	DeviceVersionMapper deviceVersionMapper;
 	@Resource
 	RedisUtils redisUtils;
 	@Override
@@ -173,6 +177,7 @@
 		simpleDevice.setMac(device.getMac()); // mac
 		simpleDevice.setMonitorPointId(device.getMonitorPointId());// ���������id
 		simpleDevice.setOrganizationIds(device.getOrganizationIds());// ������������
+		simpleDevice.setDeviceVersion(device.getDeviceVersion());
 		redisUtils.set(key,simpleDevice);
 	}
 	private Device getDeviceFromRedis(String mac) {
@@ -310,15 +315,9 @@
 	 */
 	private void refreshDeviceInRedis(String mac){
 	     if(!StringUtils.isBlank(mac)){
-	     	 Device devQuery = new Device();
-	     	 devQuery.setMac(mac);
-	     	 Device device = deviceMapper.selectOne(devQuery);
-	     	 if(device.getMonitorPointId()!=null){
-	     	 	List<Integer> orgIds = monitorPointMapper.selectOrganizationIds(device.getMonitorPointId());
-	     	 	device.setOrganizationIds(orgIds);
-			 }
+	     	 Device device = deviceMapper.selectWithOrgIdsByMac(mac);
              String key = "device_"+mac;
-             redisUtils.set(key,device);
+			 setDeviceToRedis(key,device);
          }else
 		 {
 		 	log.warn("param mac is null in method [refreshDeviceInRedis]");
diff --git a/src/main/resources/mapper/DeviceMapper.xml b/src/main/resources/mapper/DeviceMapper.xml
index cf6ecf2..4d483d0 100644
--- a/src/main/resources/mapper/DeviceMapper.xml
+++ b/src/main/resources/mapper/DeviceMapper.xml
@@ -252,14 +252,15 @@
 		select
 		dev.*,
 		mpt.name as monitor_point_name,
-		pro.name as profession_name
+		pro.name as profession_name,
+		dvn.version as device_version_value
 		from device dev
+		left join device_version dvn on dev.device_version_id = dvn.id
         left join monitor_point  mpt on dev.monitor_point_id = mpt.id
         left join profession  pro on pro.id = dev.profession_id
 		where dev.mac = #{mac,jdbcType=VARCHAR}
 		limit 0,1
 	</select>
-
 	<select id="getDeviceCountByRegion" resultType="java.lang.Integer">
 		SELECT
 			COUNT( * ) 
@@ -294,7 +295,6 @@
 			AND d.profession_id = #{professionId}
 			</if>
 	</select>
-
 	<select id="getDevicesByProfession" resultType="com.moral.entity.Device">
 		SELECT
 			* 

--
Gitblit v1.8.0