From fc90cd7951600ce5173f71c3e28d78e69b4db4ae Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 19 十二月 2022 14:20:22 +0800
Subject: [PATCH] 优化tcp主动方式的语音对讲

---
 src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java |   31 ++++++++++++++++++++++++++-----
 1 files changed, 26 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java
index 7ed6b5a..6ea852e 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/GbStreamMapper.java
@@ -5,7 +5,6 @@
 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.StreamPushExcelDto;
 import org.apache.ibatis.annotations.*;
 import org.springframework.stereotype.Repository;
 
@@ -75,18 +74,23 @@
             "WHERE gs.gbId = '${gbId}' AND pgs.platformId = '${platformId}'")
     GbStream queryStreamInPlatform(String platformId, String gbId);
 
-    @Select("select gt.gbId as channelId, gt.name, 'wvp-pro' as manufacture,  st.status, gt.longitude, gt.latitude, pc.id as parentId," +
+    @Select("<script> "+
+            "select gt.gbId as channelId, gt.name, 'wvp-pro' as manufacture,  st.status, gt.longitude, gt.latitude, pc.id as parentId," +
             "       '1' as registerWay, pc.civilCode, 'live' as model, 'wvp-pro' as owner, '0' as parental,'0' as secrecy" +
             " from gb_stream gt " +
             " left join (" +
-            "    select sp.status, sp.app, sp.stream from stream_push sp" +
+            "    select " +
+            " <if test='usPushingAsStatus != true'> sp.status as status, </if>" +
+            " <if test='usPushingAsStatus == true'> sp.pushIng as status, </if>" +
+            "sp.app, sp.stream from stream_push sp" +
             "    union all" +
             "    select spxy.status, spxy.app, spxy.stream from stream_proxy spxy" +
             " ) st on st.app = gt.app and st.stream = gt.stream" +
             " left join platform_gb_stream pgs on  gt.gbStreamId = pgs.gbStreamId" +
             " left join platform_catalog pc on pgs.catalogId = pc.id and pgs.platformId = pc.platformId" +
-            " where pgs.platformId=#{platformId}")
-    List<DeviceChannel> queryGbStreamListInPlatform(String platformId);
+            " where pgs.platformId=#{platformId}" +
+            "</script>")
+    List<DeviceChannel> queryGbStreamListInPlatform(String platformId, boolean usPushingAsStatus);
 
 
     @Select("SELECT gs.* FROM gb_stream gs LEFT JOIN platform_gb_stream pgs " +
@@ -148,4 +152,21 @@
             "SET mediaServerId=#{mediaServerId}" +
             "WHERE app=#{app} AND stream=#{stream}")
     void updateMediaServer(String app, String stream, String mediaServerId);
+
+    @Update("<script> "+
+                " <foreach collection='list' item='item' index='index' separator=';'>"+
+                    "UPDATE gb_stream " +
+                    " SET name=#{item.name},"+
+                    " gbId=#{item.gbId}"+
+                    " WHERE app=#{item.app} and stream=#{item.stream}"+
+                "</foreach>"+
+            "</script>")
+    int updateGbIdOrName(List<StreamPushItem> streamPushItemForUpdate);
+
+    @Select("SELECT status FROM stream_proxy WHERE app=#{app} AND stream=#{stream}")
+    Boolean selectStatusForProxy(String app, String stream);
+
+    @Select("SELECT status FROM stream_push WHERE app=#{app} AND stream=#{stream}")
+    Boolean selectStatusForPush(String app, String stream);
+
 }

--
Gitblit v1.8.0