From ccc0a99d6894844d83d751b924cfebe74da7826c Mon Sep 17 00:00:00 2001
From: ‘sxh’ <1632740646@qq.com>
Date: 星期四, 15 六月 2023 11:20:43 +0800
Subject: [PATCH] 同步主线的代码,保持一致性

---
 src/main/java/com/genersoft/iot/vmp/storager/dao/StreamPushMapper.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamPushMapper.java b/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamPushMapper.java
index fefdab3..4efc058 100644
--- a/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamPushMapper.java
+++ b/src/main/java/com/genersoft/iot/vmp/storager/dao/StreamPushMapper.java
@@ -3,7 +3,6 @@
 import com.genersoft.iot.vmp.gb28181.bean.GbStream;
 import com.genersoft.iot.vmp.media.zlm.dto.StreamPushItem;
 import com.genersoft.iot.vmp.service.bean.StreamPushItemFromRedis;
-import com.genersoft.iot.vmp.vmanager.bean.ResourceBaceInfo;
 import org.apache.ibatis.annotations.*;
 import org.springframework.stereotype.Repository;
 
@@ -14,9 +13,9 @@
 public interface StreamPushMapper {
 
     @Insert("INSERT INTO wvp_stream_push (app, stream, total_reader_count, origin_type, origin_type_str, " +
-            "push_time, alive_second, media_server_id, server_id, update_time, create_time, push_ing, self) VALUES" +
+            "push_time, alive_second, media_server_id, update_time, create_time, push_ing, self) VALUES" +
             "(#{app}, #{stream}, #{totalReaderCount}, #{originType}, #{originTypeStr}, " +
-            "#{pushTime}, #{aliveSecond}, #{mediaServerId} , #{serverId} , #{updateTime} , #{createTime}, " +
+            "#{pushTime}, #{aliveSecond}, #{mediaServerId} , #{updateTime} , #{createTime}, " +
             "#{pushIng}, #{self} )")
     int add(StreamPushItem streamPushItem);
 
@@ -89,7 +88,7 @@
     StreamPushItem selectOne(String app, String stream);
 
     @Insert("<script>"  +
-            "Insert IGNORE INTO wvp_stream_push (app, stream, total_reader_count, origin_type, origin_type_str, " +
+            "Insert INTO wvp_stream_push (app, stream, total_reader_count, origin_type, origin_type_str, " +
             "create_time, alive_second, media_server_id, status, push_ing) " +
             "VALUES <foreach collection='streamPushItems' item='item' index='index' separator=','>" +
             "( #{item.app}, #{item.stream}, #{item.totalReaderCount}, #{item.originType}, " +
@@ -103,7 +102,15 @@
     @Delete("DELETE FROM wvp_stream_push")
     void clear();
 
-    @Delete("DELETE sp FROM wvp_stream_push sp left join wvp_gb_stream gs on gs.app = sp.app and gs.stream= sp.stream WHERE sp.media_server_id=#{mediaServerId} and gs.gb_id is null ")
+    @Delete("delete" +
+            " from wvp_stream_push " +
+            " where id in " +
+            "   (select temp.id from " +
+            "       (select wgs.gb_stream_id as id " +
+            "          from wvp_gb_stream wgs" +
+            "               left join wvp_stream_push sp on sp.id = wgs.gb_stream_id" +
+            "           where wgs.gb_id is null and wgs.media_server_id = #{mediaServerId}) temp)"
+            )
     void deleteWithoutGBId(String mediaServerId);
 
     @Select("SELECT * FROM wvp_stream_push WHERE media_server_id=#{mediaServerId}")
@@ -171,9 +178,20 @@
     @Select("SELECT CONCAT(app,stream) from wvp_gb_stream")
     List<String> getAllAppAndStream();
 
+    @Select("select count(1) from wvp_stream_push ")
+    int getAllCount();
+
     @Select(value = {" <script>" +
-            " <if test='pushIngAsOnline == true'> select count(1) as total, sum(push_ing) as online from wvp_stream_push </if>" +
-            " <if test='pushIngAsOnline == false'> select count(1) as total, sum(status) as online from wvp_stream_push </if>" +
+            " <if test='pushIngAsOnline == true'> select count(1) from wvp_stream_push where push_ing = true </if>" +
+            " <if test='pushIngAsOnline == false'> select count(1)from wvp_stream_push where status = true  </if>" +
             " </script>"})
-    ResourceBaceInfo getOverview(boolean pushIngAsOnline);
+    int getAllOnline(Boolean usePushingAsStatus);
+
+    @Select("<script> " +
+            "select app, stream from wvp_stream_push where (app, stream) in " +
+            "<foreach collection='streamPushItems' item='item' separator=','>" +
+            "(#{item.app}, #{item.stream}) " +
+            "</foreach>" +
+            "</script>")
+    List<StreamPushItem> getListIn(List<StreamPushItem> streamPushItems);
 }

--
Gitblit v1.8.0