From 97698ee716daa841bca229596651f06513d9fdda Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 01 三月 2022 17:37:19 +0800
Subject: [PATCH] Merge pull request #346 from TristingChen/log-optimization
---
src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java | 22 +++++++++++++++++-----
1 files changed, 17 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java b/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java
index ee7a80b..2b4515f 100644
--- a/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java
+++ b/src/main/java/com/genersoft/iot/vmp/service/impl/GbStreamServiceImpl.java
@@ -20,6 +20,7 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.TransactionStatus;
+import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
@@ -51,9 +52,9 @@
private EventPublisher eventPublisher;
@Override
- public PageInfo<GbStream> getAll(Integer page, Integer count, String platFormId) {
+ public PageInfo<GbStream> getAll(Integer page, Integer count, String platFormId, String catalogId, String query, Boolean pushing, String mediaServerId) {
PageHelper.startPage(page, count);
- List<GbStream> all = gbStreamMapper.selectAll(platFormId);
+ List<GbStream> all = gbStreamMapper.selectAll(platFormId, catalogId, query, pushing, mediaServerId);
return new PageInfo<>(all);
}
@@ -69,6 +70,7 @@
boolean result = false;
TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
ParentPlatform parentPlatform = platformMapper.getParentPlatByServerGBId(platformId);
+ if (catalogId == null) catalogId = parentPlatform.getCatalogId();
try {
List<DeviceChannel> deviceChannelList = new ArrayList<>();
for (GbStream gbStream : gbStreams) {
@@ -116,14 +118,14 @@
TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
try {
List<DeviceChannel> deviceChannelList = new ArrayList<>();
+ platformGbStreamMapper.delByAppAndStreamsByPlatformId(gbStreams, platformId);
for (GbStream gbStream : gbStreams) {
- platformGbStreamMapper.delByAppAndStreamAndPlatform(gbStream.getApp(), gbStream.getStream(), platformId);
DeviceChannel deviceChannel = new DeviceChannel();
deviceChannel.setChannelId(gbStream.getGbId());
deviceChannelList.add(deviceChannel);
- eventPublisher.catalogEventPublish(platformId, deviceChannel, CatalogEvent.DEL);
}
+ eventPublisher.catalogEventPublish(platformId, deviceChannelList, CatalogEvent.DEL);
dataSourceTransactionManager.commit(transactionStatus); //鎵嬪姩鎻愪氦
result = true;
}catch (Exception e) {
@@ -144,12 +146,22 @@
gbStreams.add(streamProxyItem);
}
}
+ sendCatalogMsgs(gbStreams, type);
+ }
+
+ @Override
+ public void sendCatalogMsgs(List<GbStream> gbStreams, String type) {
if (gbStreams.size() > 0) {
for (GbStream gs : gbStreams) {
+ if (StringUtils.isEmpty(gs.getGbId())){
+ continue;
+ }
List<ParentPlatform> parentPlatforms = platformGbStreamMapper.selectByAppAndStream(gs.getApp(), gs.getStream());
if (parentPlatforms.size() > 0) {
for (ParentPlatform parentPlatform : parentPlatforms) {
- eventPublisher.catalogEventPublishForStream(parentPlatform.getServerGBId(), gs, type);
+ if (parentPlatform != null) {
+ eventPublisher.catalogEventPublishForStream(parentPlatform.getServerGBId(), gs, type);
+ }
}
}
}
--
Gitblit v1.8.0