From a6f9c090cb73f4ae97c40401068216a0b3fcb97d Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期四, 08 九月 2022 10:50:44 +0800
Subject: [PATCH] 重启服务时上级平台直接注销再注册
---
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java | 30 ++++++++++++------------------
1 files changed, 12 insertions(+), 18 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java
index 82f0947..88cb8c0 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java
@@ -26,6 +26,7 @@
import org.springframework.transaction.TransactionStatus;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
+import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import java.util.*;
@@ -110,11 +111,11 @@
if (CollectionUtils.isEmpty(deviceChannelList)) {
return false;
}
- List<DeviceChannel> allChannelInPlay = deviceChannelMapper.getAllChannelInPlay();
- Map<String,DeviceChannel> allChannelMapInPlay = new ConcurrentHashMap<>();
- if (allChannelInPlay.size() > 0) {
- for (DeviceChannel deviceChannel : allChannelInPlay) {
- allChannelMapInPlay.put(deviceChannel.getChannelId(), deviceChannel);
+ List<DeviceChannel> allChannels = deviceChannelMapper.queryAllChannels(deviceId);
+ Map<String,DeviceChannel> allChannelMap = new ConcurrentHashMap<>();
+ if (allChannels.size() > 0) {
+ for (DeviceChannel deviceChannel : allChannels) {
+ allChannelMap.put(deviceChannel.getChannelId(), deviceChannel);
}
}
TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
@@ -122,17 +123,19 @@
List<DeviceChannel> channels = new ArrayList<>();
StringBuilder stringBuilder = new StringBuilder();
Map<String, Integer> subContMap = new HashMap<>();
- if (deviceChannelList.size() > 1) {
+ if (deviceChannelList.size() > 0) {
// 鏁版嵁鍘婚噸
Set<String> gbIdSet = new HashSet<>();
for (DeviceChannel deviceChannel : deviceChannelList) {
if (!gbIdSet.contains(deviceChannel.getChannelId())) {
gbIdSet.add(deviceChannel.getChannelId());
- if (allChannelMapInPlay.containsKey(deviceChannel.getChannelId())) {
- deviceChannel.setStreamId(allChannelMapInPlay.get(deviceChannel.getChannelId()).getStreamId());
+ if (allChannelMap.containsKey(deviceChannel.getChannelId())) {
+ deviceChannel.setStreamId(allChannelMap.get(deviceChannel.getChannelId()).getStreamId());
+ deviceChannel.setHasAudio(allChannelMap.get(deviceChannel.getChannelId()).isHasAudio());
}
+
channels.add(deviceChannel);
- if (!StringUtils.isEmpty(deviceChannel.getParentId())) {
+ if (!ObjectUtils.isEmpty(deviceChannel.getParentId())) {
if (subContMap.get(deviceChannel.getParentId()) == null) {
subContMap.put(deviceChannel.getParentId(), 1);
}else {
@@ -152,8 +155,6 @@
}
}
- }else {
- channels = deviceChannelList;
}
if (stringBuilder.length() > 0) {
logger.info("[鐩綍鏌ヨ]鏀跺埌鐨勬暟鎹瓨鍦ㄩ噸澶嶏細 {}" , stringBuilder);
@@ -454,13 +455,6 @@
// 鍒犻櫎鍏宠仈鐨勯�氶亾
platformChannelMapper.cleanChannelForGB(parentPlatform.getServerGBId());
return result > 0;
- }
-
- @Override
- public PageInfo<ParentPlatform> queryParentPlatformList(int page, int count) {
- PageHelper.startPage(page, count);
- List<ParentPlatform> all = platformMapper.getParentPlatformList();
- return new PageInfo<>(all);
}
@Override
--
Gitblit v1.8.0