From c547851487a8e24f93405ace3c0359d0d6790364 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 25 一月 2022 19:38:04 +0800
Subject: [PATCH] 优化zlm上线与下线过时通道的移除
---
src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 103 insertions(+), 7 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java b/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java
index 266c945..038fe2b 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java
@@ -1,16 +1,17 @@
package com.genersoft.iot.vmp.storager;
-import java.util.List;
-
import com.genersoft.iot.vmp.gb28181.bean.*;
import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
import com.genersoft.iot.vmp.media.zlm.dto.StreamPushItem;
+import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
import com.genersoft.iot.vmp.vmanager.gb28181.platform.bean.ChannelReduce;
import com.github.pagehelper.PageInfo;
+import java.util.List;
+
/**
- * @Description:瑙嗛璁惧鏁版嵁瀛樺偍鎺ュ彛
+ * @description:瑙嗛璁惧鏁版嵁瀛樺偍鎺ュ彛
* @author: swwheihei
* @date: 2020骞�5鏈�6鏃� 涓嬪崍2:14:31
*/
@@ -50,6 +51,14 @@
public void updateChannel(String deviceId, DeviceChannel channel);
/**
+ * 鎵归噺娣诲姞璁惧閫氶亾
+ *
+ * @param deviceId 璁惧id
+ * @param channels 澶氫釜閫氶亾
+ */
+ public int updateChannels(String deviceId, List<DeviceChannel> channels);
+
+ /**
* 寮�濮嬫挱鏀�
* @param deviceId 璁惧id
* @param channelId 閫氶亾ID
@@ -81,6 +90,8 @@
* @return
*/
public PageInfo queryChannelsByDeviceId(String deviceId, String query, Boolean hasSubChannel, Boolean online, int page, int count);
+
+ public List<DeviceChannel> queryChannelsByDeviceIdWithStartAndLimit(String deviceId, String query, Boolean hasSubChannel, Boolean online, int start, int limit);
/**
* 鑾峰彇鏌愪釜璁惧鐨勯�氶亾鍒楄〃
@@ -89,6 +100,7 @@
* @return
*/
public List<DeviceChannel> queryChannelsByDeviceId(String deviceId);
+ public List<DeviceChannel> queryOnlineChannelsByDeviceId(String deviceId);
/**
* 鑾峰彇鏌愪釜璁惧鐨勯�氶亾
@@ -96,6 +108,13 @@
* @param channelId 閫氶亾ID
*/
public DeviceChannel queryChannel(String deviceId, String channelId);
+
+ /**
+ * 鍒犻櫎閫氶亾
+ * @param deviceId 璁惧ID
+ * @param channelId 閫氶亾ID
+ */
+ public int delChannel(String deviceId, String channelId);
/**
* 鑾峰彇澶氫釜璁惧
@@ -226,7 +245,7 @@
* @param channelReduces
* @return
*/
- int updateChannelForGB(String platformId, List<ChannelReduce> channelReduces);
+ int updateChannelForGB(String platformId, List<ChannelReduce> channelReduces, String catalogId);
/**
* 绉婚櫎涓婄骇骞冲彴鐨勯�氶亾淇℃伅
@@ -238,6 +257,9 @@
DeviceChannel queryChannelInParentPlatform(String platformId, String channelId);
+
+ List<PlatformCatalog> queryChannelInParentPlatformAndCatalog(String platformId, String catalogId);
+ List<PlatformCatalog> queryStreamInParentPlatformAndCatalog(String platformId, String catalogId);
Device queryVideoDeviceByPlatformIdAndChannelId(String platformId, String channelId);
@@ -346,7 +368,7 @@
* @param app
* @param stream
*/
- void removeMedia(String app, String stream);
+ int removeMedia(String app, String stream);
/**
@@ -359,7 +381,7 @@
* @param app
* @param streamId
*/
- void mediaOutline(String app, String streamId);
+ int mediaOutline(String app, String streamId);
/**
* 璁剧疆骞冲彴鍦ㄧ嚎/绂荤嚎
@@ -373,7 +395,81 @@
*/
void updateMediaServer(MediaServerItem mediaServerItem);
+ /**
+ * 鏍规嵁濯掍綋ID鑾峰彇鍚敤/涓嶅惎鐢ㄧ殑浠g悊鍒楄〃
+ * @param id 濯掍綋ID
+ * @param b 鍚敤/涓嶅惎鐢�
+ * @return
+ */
List<StreamProxyItem> getStreamProxyListForEnableInMediaServer(String id, boolean b);
- Device queryVideoDeviceByChannelId(String platformGbId);
+ /**
+ * 鏍规嵁閫氶亾ID鑾峰彇鍏舵墍鍦ㄨ澶�
+ * @param channelId 閫氶亾ID
+ * @return
+ */
+ Device queryVideoDeviceByChannelId(String channelId);
+
+ /**
+ * 閫氶亾涓婄嚎
+ * @param channelId 閫氶亾ID
+ */
+ void deviceChannelOnline(String deviceId, String channelId);
+
+ /**
+ * 閫氶亾绂荤嚎
+ * @param channelId 閫氶亾ID
+ */
+ void deviceChannelOffline(String deviceId, String channelId);
+
+ /**
+ * 閫氳繃app涓巗tream鑾峰彇StreamProxy
+ * @param app
+ * @param streamId
+ * @return
+ */
+ StreamProxyItem getStreamProxyByAppAndStream(String app, String streamId);
+
+ /**
+ * catlog鏌ヨ缁撴潫鍚庡畬鍏ㄩ噸鍐欓�氶亾淇℃伅
+ * @param deviceId
+ * @param deviceChannelList
+ */
+ boolean resetChannels(String deviceId, List<DeviceChannel> deviceChannelList);
+
+ /**
+ * 鑾峰彇鐩綍淇℃伅
+ * @param platformId
+ * @param parentId
+ * @return
+ */
+ List<PlatformCatalog> getChildrenCatalogByPlatform(String platformId, String parentId);
+
+ int addCatalog(PlatformCatalog platformCatalog);
+
+ PlatformCatalog getCatalog(String id);
+
+ int delCatalog(String id);
+
+ int updateCatalog(PlatformCatalog platformCatalog);
+
+ int setDefaultCatalog(String platformId, String catalogId);
+
+ List<PlatformCatalog> queryCatalogInPlatform(String serverGBId);
+
+ int delRelation(PlatformCatalog platformCatalog);
+
+ int updateStreamGPS(List<GPSMsgInfo> gpsMsgInfo);
+
+ List<ParentPlatform> queryPlatFormListForGBWithGBId(String channelId, List<String> platforms);
+
+ List<ParentPlatform> queryPlatFormListForStreamWithGBId(String app, String stream, List<String> platforms);
+
+ GbStream getGbStream(String app, String streamId);
+
+ void delCatalogByPlatformId(String serverGBId);
+
+ void delRelationByPlatformId(String serverGBId);
+
+ PlatformCatalog queryDefaultCatalogInPlatform(String platformId);
}
--
Gitblit v1.8.0