‘sxh’
2023-06-15 ccc0a99d6894844d83d751b924cfebe74da7826c
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);
}