From 9c5b1060af4e6c468b2cf95fbb9ec6d0a05fad5c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 28 二月 2022 17:56:27 +0800
Subject: [PATCH] 支持删除在线设备

---
 src/main/java/com/genersoft/iot/vmp/storager/IVideoManagerStorager.java |  123 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 112 insertions(+), 11 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 223a5e8..723e9f1 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,18 @@
 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.bean.DeviceChannelTree;
 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 +52,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 +91,15 @@
 	 * @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);
+
+	/**
+	 *  鑾峰彇鏌愪釜璁惧鐨勯�氶亾鏍�
+	 * @param deviceId 璁惧ID
+	 * @return
+	 */
+	List<DeviceChannelTree> tree(String deviceId);
 
 	/**
 	 * 鑾峰彇鏌愪釜璁惧鐨勯�氶亾鍒楄〃
@@ -89,6 +108,7 @@
 	 * @return
 	 */
 	public List<DeviceChannel> queryChannelsByDeviceId(String deviceId);
+	public List<DeviceChannel> queryOnlineChannelsByDeviceId(String deviceId);
 
 	/**
 	 * 鑾峰彇鏌愪釜璁惧鐨勯�氶亾
@@ -96,6 +116,13 @@
 	 * @param channelId 閫氶亾ID
 	 */
 	public DeviceChannel queryChannel(String deviceId, String channelId);
+
+	/**
+	 * 鍒犻櫎閫氶亾
+	 * @param deviceId 璁惧ID
+	 * @param channelId 閫氶亾ID
+	 */
+	public int delChannel(String deviceId, String channelId);
 
 	/**
 	 * 鑾峰彇澶氫釜璁惧
@@ -212,7 +239,7 @@
 	/**
 	 * 鏌ヨ閫氶亾淇℃伅锛屼笉鍖哄垎璁惧(宸插叧鑱斿钩鍙版垨鍏ㄩ儴)
 	 */
-	PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online, Boolean channelType, String platformId, Boolean inPlatform);
+	PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online, Boolean channelType, String platformId, String catalogId);
 
 	/**
 	 * 鏌ヨ璁惧鐨勯�氶亾淇℃伅
@@ -226,7 +253,7 @@
 	 * @param channelReduces
 	 * @return
 	 */
-	int updateChannelForGB(String platformId, List<ChannelReduce> channelReduces);
+	int updateChannelForGB(String platformId, List<ChannelReduce> channelReduces, String catalogId);
 
 	/**
 	 *  绉婚櫎涓婄骇骞冲彴鐨勯�氶亾淇℃伅
@@ -238,6 +265,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 +376,7 @@
 	 * @param app
 	 * @param stream
 	 */
-	void removeMedia(String app, String stream);
+	int removeMedia(String app, String stream);
 
 
 	/**
@@ -359,7 +389,7 @@
 	 * @param app
 	 * @param streamId
 	 */
-	void mediaOutline(String app, String streamId);
+	int mediaOutline(String app, String streamId);
 
 	/**
 	 * 璁剧疆骞冲彴鍦ㄧ嚎/绂荤嚎
@@ -368,10 +398,81 @@
 	void updateParentPlatformStatus(String platformGbID, boolean online);
 
 	/**
-	 * 鏇存柊濯掍綋鑺傜偣
-	 * @param mediaServerItem
+	 * 鏍规嵁濯掍綋ID鑾峰彇鍚敤/涓嶅惎鐢ㄧ殑浠g悊鍒楄〃
+	 * @param id 濯掍綋ID
+	 * @param enable 鍚敤/涓嶅惎鐢�
+	 * @param status 鐘舵��
+	 * @return
 	 */
-	void updateMediaServer(MediaServerItem mediaServerItem);
+	List<StreamProxyItem> getStreamProxyListForEnableInMediaServer(String id,  boolean enable, boolean status);
 
-	List<StreamProxyItem> getStreamProxyListForEnableInMediaServer(String id, boolean b);
+	/**
+	 * 鏍规嵁閫氶亾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