From e7f5cfc422cb9ac8dc72f0c0faf063bf5fcb711c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期五, 06 五月 2022 17:26:36 +0800
Subject: [PATCH] test
---
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java | 56 ++++++++++++++++++++++++++++++++++----------------------
1 files changed, 34 insertions(+), 22 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 667a619..2dc88f8 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
@@ -13,8 +13,6 @@
import com.genersoft.iot.vmp.storager.IVideoManagerStorage;
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;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
@@ -238,12 +236,15 @@
@Override
public boolean resetChannels(String deviceId, List<DeviceChannel> deviceChannelList) {
+ if (deviceChannelList == null) {
+ return false;
+ }
TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
// 鏁版嵁鍘婚噸
List<DeviceChannel> channels = new ArrayList<>();
StringBuilder stringBuilder = new StringBuilder();
Map<String, Integer> subContMap = new HashMap<>();
- if (deviceChannelList.size() > 1) {
+ if (deviceChannelList != null && deviceChannelList.size() > 1) {
// 鏁版嵁鍘婚噸
Set<String> gbIdSet = new HashSet<>();
for (DeviceChannel deviceChannel : deviceChannelList) {
@@ -300,6 +301,7 @@
dataSourceTransactionManager.commit(transactionStatus); //鎵嬪姩鎻愪氦
return true;
}catch (Exception e) {
+ e.printStackTrace();
dataSourceTransactionManager.rollback(transactionStatus);
return false;
}
@@ -338,10 +340,15 @@
}
@Override
- public PageInfo queryChannelsByDeviceId(String deviceId, String query, Boolean hasSubChannel, Boolean online, int page, int count) {
+ public PageInfo queryChannelsByDeviceId(String deviceId, String query, Boolean hasSubChannel, Boolean online, Boolean catalogUnderDevice, int page, int count) {
// 鑾峰彇鍒版墍鏈夋鍦ㄦ挱鏀剧殑娴�
PageHelper.startPage(page, count);
- List<DeviceChannel> all = deviceChannelMapper.queryChannels(deviceId, null, query, hasSubChannel, online);
+ List<DeviceChannel> all;
+ if (catalogUnderDevice != null && catalogUnderDevice) {
+ all = deviceChannelMapper.queryChannels(deviceId, deviceId, query, hasSubChannel, online);
+ }else {
+ all = deviceChannelMapper.queryChannels(deviceId, null, query, hasSubChannel, online);
+ }
return new PageInfo<>(all);
}
@@ -350,10 +357,6 @@
return deviceChannelMapper.queryChannelsByDeviceIdWithStartAndLimit(deviceId, null, query, hasSubChannel, online, start, limit);
}
- @Override
- public List<DeviceChannelTree> tree(String deviceId) {
- return ForestNodeMerger.merge(deviceChannelMapper.tree(deviceId));
- }
@Override
public List<DeviceChannel> queryChannelsByDeviceId(String deviceId) {
@@ -361,9 +364,9 @@
}
@Override
- public PageInfo<DeviceChannel> querySubChannels(String deviceId, String parentChannelId, String query, Boolean hasSubChannel, String online, int page, int count) {
+ public PageInfo<DeviceChannel> querySubChannels(String deviceId, String parentChannelId, String query, Boolean hasSubChannel, Boolean online, int page, int count) {
PageHelper.startPage(page, count);
- List<DeviceChannel> all = deviceChannelMapper.queryChannels(deviceId, parentChannelId, null, null, null);
+ List<DeviceChannel> all = deviceChannelMapper.queryChannels(deviceId, parentChannelId, query, hasSubChannel, online);
return new PageInfo<>(all);
}
@@ -415,10 +418,9 @@
TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
boolean result = false;
try {
- if (platformChannelMapper.delChannelForDeviceId(deviceId) <0 // 鍒犻櫎涓庡浗鏍囧钩鍙扮殑鍏宠仈
- || deviceChannelMapper.cleanChannelsByDeviceId(deviceId) < 0 // 鍒犻櫎浠栫殑閫氶亾
- || deviceMapper.del(deviceId) < 0 // 绉婚櫎璁惧淇℃伅
- ) {
+ platformChannelMapper.delChannelForDeviceId(deviceId);
+ deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
+ if ( deviceMapper.del(deviceId) < 0 ) {
//浜嬪姟鍥炴粴
dataSourceTransactionManager.rollback(transactionStatus);
}
@@ -445,8 +447,6 @@
device.setOnline(1);
logger.info("鏇存柊璁惧鍦ㄧ嚎: " + deviceId);
redisCatchStorage.updateDevice(device);
- List<DeviceChannel> deviceChannelList = deviceChannelMapper.queryOnlineChannelsByDeviceId(deviceId);
- eventPublisher.catalogEventPublish(null, deviceChannelList, CatalogEvent.ON);
return deviceMapper.update(device) > 0;
}
@@ -460,7 +460,9 @@
public synchronized boolean outline(String deviceId) {
logger.info("鏇存柊璁惧绂荤嚎: " + deviceId);
Device device = deviceMapper.getDeviceByDeviceId(deviceId);
- if (device == null) return false;
+ if (device == null) {
+ return false;
+ }
device.setOnline(0);
redisCatchStorage.updateDevice(device);
return deviceMapper.update(device) > 0;
@@ -503,8 +505,8 @@
* @param endTime
*/
@Override
- public synchronized List<MobilePosition> queryMobilePositions(String deviceId, String startTime, String endTime) {
- return deviceMobilePositionMapper.queryPositionByDeviceIdAndTime(deviceId, startTime, endTime);
+ public synchronized List<MobilePosition> queryMobilePositions(String deviceId, String channelId, String startTime, String endTime) {
+ return deviceMobilePositionMapper.queryPositionByDeviceIdAndTime(deviceId, channelId, startTime, endTime);
}
@Override
@@ -519,6 +521,12 @@
@Override
public boolean updateParentPlatform(ParentPlatform parentPlatform) {
int result = 0;
+ if (parentPlatform.getCatalogGroup() == 0) {
+ parentPlatform.setCatalogGroup(1);
+ }
+ if (parentPlatform.getAdministrativeDivision() == null) {
+ parentPlatform.setAdministrativeDivision(parentPlatform.getAdministrativeDivision());
+ }
ParentPlatformCatch parentPlatformCatch = redisCatchStorage.queryPlatformCatchInfo(parentPlatform.getServerGBId()); // .getDeviceGBId());
if (parentPlatform.getId() == null ) {
if (parentPlatform.getCatalogId() == null) {
@@ -538,6 +546,7 @@
parentPlatformCatch.setId(parentPlatform.getServerGBId());
redisCatchStorage.delPlatformCatchInfo(parentPlatById.getServerGBId());
}
+
result = platformMapper.updateParentPlatform(parentPlatform);
}
// 鏇存柊缂撳瓨
@@ -707,6 +716,7 @@
* 鍒犻櫎鎸囧畾璁惧鐨勬墍鏈夌Щ鍔ㄤ綅缃�
* @param deviceId
*/
+ @Override
public int clearMobilePositionsByDeviceId(String deviceId) {
return deviceMobilePositionMapper.clearMobilePositionsByDeviceId(deviceId);
}
@@ -852,7 +862,9 @@
@Override
public void updateMediaList(List<StreamPushItem> streamPushItems) {
- if (streamPushItems == null || streamPushItems.size() == 0) return;
+ if (streamPushItems == null || streamPushItems.size() == 0) {
+ return;
+ }
logger.info("updateMediaList: " + streamPushItems.size());
streamPushMapper.addAll(streamPushItems);
// TODO 寰呬紭鍖�
@@ -1073,7 +1085,7 @@
deviceChannel.setParentId(catalog.getParentId());
deviceChannel.setRegisterWay(1);
// 琛屾斂鍖哄垝搴旇鏄疍omain鐨勫墠鍏綅
- deviceChannel.setCivilCode(parentPlatByServerGBId.getDeviceGBId().substring(0,6));
+ deviceChannel.setCivilCode(parentPlatByServerGBId.getAdministrativeDivision());
deviceChannel.setModel("live");
deviceChannel.setOwner("wvp-pro");
deviceChannel.setSecrecy("0");
--
Gitblit v1.8.0