From 69d9692f6194d1e03ec81cf87ea8f0e7a62f7173 Mon Sep 17 00:00:00 2001
From: wangyimeng <421132955@qq.com>
Date: 星期三, 16 三月 2022 15:27:12 +0800
Subject: [PATCH] 删除重复字段
---
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java | 50 +++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 39 insertions(+), 11 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 0e0a8e3..feabbf1 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
@@ -14,6 +14,7 @@
import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
import com.genersoft.iot.vmp.storager.IVideoManagerStorager;
import com.genersoft.iot.vmp.storager.dao.*;
+import com.genersoft.iot.vmp.storager.dao.dto.ChannelSourceInfo;
import com.genersoft.iot.vmp.utils.node.ForestNodeMerger;
import com.genersoft.iot.vmp.vmanager.bean.DeviceChannelTree;
import com.genersoft.iot.vmp.vmanager.gb28181.platform.bean.ChannelReduce;
@@ -41,7 +42,7 @@
@Component
public class VideoManagerStoragerImpl implements IVideoManagerStorager {
- private Logger logger = LoggerFactory.getLogger(VideoManagerStoragerImpl.class);
+ private final Logger logger = LoggerFactory.getLogger(VideoManagerStoragerImpl.class);
@Autowired
EventPublisher eventPublisher;
@@ -170,6 +171,7 @@
}else {
deviceChannelMapper.update(channel);
}
+ deviceChannelMapper.updateChannelSubCount(deviceId,channel.getParentId());
}
@Override
@@ -283,7 +285,8 @@
logger.debug("[鐩綍鏌ヨ]鏀跺埌鐨勬暟鎹瓨鍦ㄩ噸澶嶏細 {}" , stringBuilder);
}
try {
- int cleanChannelsResult = deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
+// int cleanChannelsResult = deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
+ int cleanChannelsResult = deviceChannelMapper.cleanChannelsNotInList(deviceId, channels);
int limitCount = 300;
boolean result = cleanChannelsResult < 0;
if (!result && channels.size() > 0) {
@@ -540,7 +543,7 @@
if (parentPlatformCatch == null) { // serverGBId 宸插彉鍖�
ParentPlatform parentPlatById = platformMapper.getParentPlatById(parentPlatform.getId());
// 浣跨敤鏃х殑鏌ュ嚭缂撳瓨ID
- parentPlatformCatch = redisCatchStorage.queryPlatformCatchInfo(parentPlatById.getServerGBId());
+ parentPlatformCatch = new ParentPlatformCatch();
parentPlatformCatch.setId(parentPlatform.getServerGBId());
redisCatchStorage.delPlatformCatchInfo(parentPlatById.getServerGBId());
}
@@ -660,8 +663,16 @@
@Override
public DeviceChannel queryChannelInParentPlatform(String platformId, String channelId) {
- DeviceChannel channel = platformChannelMapper.queryChannelInParentPlatform(platformId, channelId);
- return channel;
+ List<DeviceChannel> channels = platformChannelMapper.queryChannelInParentPlatform(platformId, channelId);
+ if (channels.size() > 1) {
+ // 鍑虹幇闀垮害澶т簬0鐨勬椂鍊欒偗瀹氭槸鍥芥爣閫氶亾鐨処D閲嶅浜�
+ logger.warn("鍥芥爣ID瀛樺湪閲嶅锛歿}", channelId);
+ }
+ if (channels.size() == 0) {
+ return null;
+ }else {
+ return channels.get(0);
+ }
}
@Override
@@ -678,8 +689,18 @@
@Override
public Device queryVideoDeviceByPlatformIdAndChannelId(String platformId, String channelId) {
- Device device = platformChannelMapper.queryVideoDeviceByPlatformIdAndChannelId(platformId, channelId);
- return device;
+ List<Device> devices = platformChannelMapper.queryVideoDeviceByPlatformIdAndChannelId(platformId, channelId);
+ if (devices.size() > 1) {
+ // 鍑虹幇闀垮害澶т簬0鐨勬椂鍊欒偗瀹氭槸鍥芥爣閫氶亾鐨処D閲嶅浜�
+ logger.warn("鍥芥爣ID瀛樺湪閲嶅锛歿}", channelId);
+ }
+ if (devices.size() == 0) {
+ return null;
+ }else {
+ return devices.get(0);
+ }
+
+
}
/**
@@ -864,12 +885,11 @@
List<ParentPlatform> parentPlatforms = parentPlatformMapper.selectAllAhareAllLiveStream();
if (parentPlatforms.size() > 0) {
for (ParentPlatform parentPlatform : parentPlatforms) {
- streamPushItem.setCatalogId(parentPlatform.getCatalogId());
- streamPushItem.setPlatformId(parentPlatform.getServerGBId());
- String stream = streamPushItem.getStream();
- StreamProxyItem streamProxyItems = platformGbStreamMapper.selectOne(streamPushItem.getApp(), stream,
+ StreamProxyItem streamProxyItems = platformGbStreamMapper.selectOne(streamPushItem.getApp(), streamPushItem.getStream(),
parentPlatform.getServerGBId());
if (streamProxyItems == null) {
+ streamPushItem.setCatalogId(parentPlatform.getCatalogId());
+ streamPushItem.setPlatformId(parentPlatform.getServerGBId());
platformGbStreamMapper.add(streamPushItem);
eventPublisher.catalogEventPublishForStream(parentPlatform.getServerGBId(), streamPushItem, CatalogEvent.ADD);
}
@@ -1081,6 +1101,9 @@
@Override
public List<ParentPlatform> queryPlatFormListForStreamWithGBId(String app, String stream, List<String> platforms) {
+ if (platforms == null || platforms.size() == 0) {
+ return new ArrayList<>();
+ }
return platformGbStreamMapper.queryPlatFormListForGBWithGBId(app, stream, platforms);
}
@@ -1104,4 +1127,9 @@
public PlatformCatalog queryDefaultCatalogInPlatform(String platformId) {
return catalogMapper.selectDefaultByPlatFormId(platformId);
}
+
+ @Override
+ public List<ChannelSourceInfo> getChannelSource(String platformId, String gbId) {
+ return platformMapper.getChannelSource(platformId, gbId);
+ }
}
--
Gitblit v1.8.0