From d09ee0c2ff93c799b0c19481f0890a5be5a2db03 Mon Sep 17 00:00:00 2001
From: 64850858 <648540858@qq.com>
Date: 星期五, 18 六月 2021 19:44:55 +0800
Subject: [PATCH] 解决启动设置所有设备离线未删除redis记录

---
 src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java |   26 +++++++++++++++++++++++++-
 1 files changed, 25 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
index 7e206bf..6600a75 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -1,5 +1,6 @@
 package com.genersoft.iot.vmp.storager.impl;
 
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 import com.genersoft.iot.vmp.common.StreamInfo;
@@ -70,6 +71,8 @@
 	@Autowired
     private VideoStreamSessionManager streamSession;
 
+	private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
 
 	/**
 	 * 鏍规嵁璁惧ID鍒ゆ柇璁惧鏄惁瀛樺湪
@@ -103,8 +106,11 @@
 	 */
 	@Override
 	public synchronized boolean updateDevice(Device device) {
+		String now = this.format.format(new Date(System.currentTimeMillis()));
+		device.setUpdateTime(now);
 		Device deviceByDeviceId = deviceMapper.getDeviceByDeviceId(device.getDeviceId());
 		if (deviceByDeviceId == null) {
+			device.setCreateTime(now);
 			return deviceMapper.add(device) > 0;
 		}else {
 			return deviceMapper.update(device) > 0;
@@ -117,8 +123,11 @@
 		String channelId = channel.getChannelId();
 		channel.setDeviceId(deviceId);
 		channel.setStreamId(streamSession.getStreamId(deviceId, channel.getChannelId()));
+		String now = this.format.format(new Date(System.currentTimeMillis()));
+		channel.setUpdateTime(now);
 		DeviceChannel deviceChannel = deviceChannelMapper.queryChannel(deviceId, channelId);
 		if (deviceChannel == null) {
+			channel.setCreateTime(now);
 			deviceChannelMapper.add(channel);
 		}else {
 			deviceChannelMapper.update(channel);
@@ -254,6 +263,18 @@
 		if (device == null) return false;
 		device.setOnline(0);
 		return deviceMapper.update(device) > 0;
+	}
+
+	/**
+	 * 鏇存柊鎵�鏈夎澶囩绾�
+	 *
+	 * @return true锛氭洿鏂版垚鍔�  false锛氭洿鏂板け璐�
+	 */
+	@Override
+	public synchronized boolean outlineForAll() {
+		logger.info("鏇存柊鎵�鏈夎澶囩绾�");
+		int result = deviceMapper.outlineForAll();
+		return result > 0;
 	}
 
 	/**
@@ -575,5 +596,8 @@
 		gbStreamMapper.setStatus(app, streamId, false);
 	}
 
-
+	@Override
+	public void updateParentPlatformStatus(String platformGbID, boolean online) {
+		platformMapper.updateParentPlatformStatus(platformGbID, online);
+	}
 }

--
Gitblit v1.8.0