From c27e345edc6a92f485c1ef722ccaaa8ec6cbf5bf Mon Sep 17 00:00:00 2001
From: che_shuai <che_shuai@massclouds>
Date: 星期四, 13 七月 2023 10:22:42 +0800
Subject: [PATCH] 修复多级级联平台平台时,上级平台无法获取设备录像列表问题。问题详见  https://github.com/648540858/wvp-GB28181-pro/issues/914

---
 src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 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 9239747..1d4c355 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
@@ -140,15 +140,21 @@
 			if (allChannelMap.containsKey(deviceChannel.getChannelId())) {
 				deviceChannel.setStreamId(allChannelMap.get(deviceChannel.getChannelId()).getStreamId());
 				deviceChannel.setHasAudio(allChannelMap.get(deviceChannel.getChannelId()).isHasAudio());
-				if (allChannelMap.get(deviceChannel.getChannelId()).getStatus() !=deviceChannel.getStatus()){
+				if (allChannelMap.get(deviceChannel.getChannelId()).isStatus() !=deviceChannel.isStatus()){
 					List<String> strings = platformChannelMapper.queryParentPlatformByChannelId(deviceChannel.getChannelId());
 					if (!CollectionUtils.isEmpty(strings)){
 						strings.forEach(platformId->{
-							eventPublisher.catalogEventPublish(platformId, deviceChannel, deviceChannel.getStatus()==1?CatalogEvent.ON:CatalogEvent.OFF);
+							eventPublisher.catalogEventPublish(platformId, deviceChannel, deviceChannel.isStatus()?CatalogEvent.ON:CatalogEvent.OFF);
 						});
 					}
 
 				}
+				deviceChannel.setUpdateTime(DateUtil.getNow());
+				updateChannels.add(deviceChannel);
+			}else {
+				deviceChannel.setCreateTime(DateUtil.getNow());
+				deviceChannel.setUpdateTime(DateUtil.getNow());
+				addChannels.add(deviceChannel);
 			}
 			channels.add(deviceChannel);
 			if (!ObjectUtils.isEmpty(deviceChannel.getParentId())) {

--
Gitblit v1.8.0