648540858
2024-05-29 764d04b497356ba6bcbb75fd42b51eca750f7223
src/main/java/com/genersoft/iot/vmp/storager/dao/StreamPushMapper.java
old mode 100644 new mode 100755
@@ -7,6 +7,7 @@
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.Map;
@Mapper
@Repository
@@ -24,6 +25,7 @@
            "UPDATE wvp_stream_push " +
            "SET update_time=#{updateTime}" +
            "<if test=\"mediaServerId != null\">, media_server_id=#{mediaServerId}</if>" +
            "<if test=\"serverId != null\">, server_id=#{serverId}</if>" +
            "<if test=\"totalReaderCount != null\">, total_reader_count=#{totalReaderCount}</if>" +
            "<if test=\"originType != null\">, origin_type=#{originType}</if>" +
            "<if test=\"originTypeStr != null\">, origin_type_str=#{originTypeStr}</if>" +
@@ -79,20 +81,20 @@
            " <if test='mediaServerId != null' > AND st.media_server_id=#{mediaServerId} </if>" +
            "order by st.create_time desc" +
            " </script>"})
    List<StreamPushItem> selectAllForList(String query, Boolean pushing, String mediaServerId);
    List<StreamPushItem> selectAllForList(@Param("query") String query, @Param("pushing") Boolean pushing, @Param("mediaServerId") String mediaServerId);
    @Select("SELECT st.*, gs.gb_id, gs.name, gs.longitude, gs.latitude FROM wvp_stream_push st LEFT join wvp_gb_stream gs on st.app = gs.app AND st.stream = gs.stream order by st.create_time desc")
    List<StreamPushItem> selectAll();
    @Select("SELECT st.*, gs.gb_id, gs.name, gs.longitude, gs.latitude FROM wvp_stream_push st LEFT join wvp_gb_stream gs on st.app = gs.app AND st.stream = gs.stream WHERE st.app=#{app} AND st.stream=#{stream}")
    StreamPushItem selectOne(String app, String stream);
    StreamPushItem selectOne(@Param("app") String app, @Param("stream") String stream);
    @Insert("<script>"  +
            "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) " +
            "create_time, alive_second, media_server_id, server_id, status, push_ing) " +
            "VALUES <foreach collection='streamPushItems' item='item' index='index' separator=','>" +
            "( #{item.app}, #{item.stream}, #{item.totalReaderCount}, #{item.originType}, " +
            "#{item.originTypeStr},#{item.createTime}, #{item.aliveSecond}, #{item.mediaServerId}, #{item.status} ," +
            "#{item.originTypeStr},#{item.createTime}, #{item.aliveSecond}, #{item.mediaServerId},#{item.serverId}, #{item.status} ," +
            " #{item.pushIng} )" +
            " </foreach>" +
            "</script>")
@@ -102,7 +104,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}")
@@ -114,17 +124,17 @@
    @Update("UPDATE wvp_stream_push " +
            "SET status=#{status} " +
            "WHERE app=#{app} AND stream=#{stream}")
    int updateStatus(String app, String stream, boolean status);
    int updateStatus(@Param("app") String app, @Param("stream") String stream, @Param("status") boolean status);
    @Update("UPDATE wvp_stream_push " +
            "SET push_ing=#{pushIng} " +
            "WHERE app=#{app} AND stream=#{stream}")
    int updatePushStatus(String app, String stream, boolean pushIng);
    int updatePushStatus(@Param("app") String app, @Param("stream") String stream, @Param("pushIng") boolean pushIng);
    @Update("UPDATE wvp_stream_push " +
            "SET status=#{status} " +
            "WHERE media_server_id=#{mediaServerId}")
    void updateStatusByMediaServerId(String mediaServerId, boolean status);
    void updateStatusByMediaServerId(@Param("mediaServerId") String mediaServerId, @Param("status") boolean status);
    @Select("<script> "+
@@ -186,4 +196,12 @@
            "</foreach>" +
            "</script>")
    List<StreamPushItem> getListIn(List<StreamPushItem> streamPushItems);
    @MapKey("vhost")
    @Select("SELECT CONCAT(wsp.app, wsp.stream) as vhost, wsp.app, wsp.stream, wgs.gb_id, wgs.name " +
            " from wvp_stream_push wsp " +
            " left join wvp_gb_stream  wgs  on wgs.app = wsp.app and wgs.stream = wsp.stream")
    Map<String, StreamPushItem> getAllAppAndStreamMap();
}