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 | 37 +++++++++++++++++++++++++++++++++---- 1 files changed, 33 insertions(+), 4 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 8354b56..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; @@ -12,6 +13,8 @@ import com.genersoft.iot.vmp.vmanager.gb28181.platform.bean.ChannelReduce; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.datasource.DataSourceTransactionManager; import org.springframework.stereotype.Component; @@ -29,6 +32,9 @@ @SuppressWarnings("rawtypes") @Component public class VideoManagerStoragerImpl implements IVideoManagerStorager { + + private Logger logger = LoggerFactory.getLogger(VideoManagerStoragerImpl.class); + @Autowired DataSourceTransactionManager dataSourceTransactionManager; @@ -65,6 +71,8 @@ @Autowired private VideoStreamSessionManager streamSession; + private SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + /** * 鏍规嵁璁惧ID鍒ゆ柇璁惧鏄惁瀛樺湪 @@ -98,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; @@ -112,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); @@ -232,7 +246,7 @@ return false; } device.setOnline(1); - System.out.println("鏇存柊璁惧鍦ㄧ嚎"); + logger.info("鏇存柊璁惧鍦ㄧ嚎: " + deviceId); return deviceMapper.update(device) > 0; } @@ -244,11 +258,23 @@ */ @Override public synchronized boolean outline(String deviceId) { - System.out.println("鏇存柊璁惧绂荤嚎: " + deviceId); + logger.info("鏇存柊璁惧绂荤嚎: " + deviceId); Device device = deviceMapper.getDeviceByDeviceId(deviceId); 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; } /** @@ -540,7 +566,7 @@ @Override public void updateMediaList(List<StreamPushItem> streamPushItems) { if (streamPushItems == null || streamPushItems.size() == 0) return; - System.out.printf("updateMediaList: " + streamPushItems.size()); + logger.info("updateMediaList: " + streamPushItems.size()); streamPushMapper.addAll(streamPushItems); // TODO 寰呬紭鍖� for (int i = 0; i < streamPushItems.size(); i++) { @@ -570,5 +596,8 @@ gbStreamMapper.setStatus(app, streamId, false); } - + @Override + public void updateParentPlatformStatus(String platformGbID, boolean online) { + platformMapper.updateParentPlatformStatus(platformGbID, online); + } } -- Gitblit v1.8.0