| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350 |
- package com.genersoft.iot.vmp.gb28181.dao;
- import com.genersoft.iot.vmp.gb28181.bean.Device;
- import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
- import org.apache.ibatis.annotations.*;
- import org.springframework.stereotype.Repository;
- import java.util.List;
- /**
- * 用于存储设备信息
- */
- @Mapper
- @Repository
- public interface DeviceMapper {
- @Select("SELECT " +
- "id, " +
- "device_id, " +
- "coalesce(custom_name, name) as name, " +
- "password, " +
- "manufacturer, " +
- "model, " +
- "firmware, " +
- "transport," +
- "stream_mode," +
- "ip," +
- "sdp_ip," +
- "local_ip," +
- "port," +
- "host_address," +
- "expires," +
- "register_time," +
- "keepalive_time," +
- "create_time," +
- "update_time," +
- "charset," +
- "subscribe_cycle_for_catalog," +
- "subscribe_cycle_for_mobile_position," +
- "mobile_position_submission_interval," +
- "subscribe_cycle_for_alarm," +
- "ssrc_check," +
- "as_message_channel," +
- "geo_coord_sys," +
- "on_line," +
- "media_server_id," +
- "broadcast_push_after_ack," +
- "(SELECT count(0) FROM wvp_device_channel dc WHERE dc.device_db_id= de.id) as channel_count "+
- " FROM wvp_device de WHERE de.device_id = #{deviceId}")
- Device getDeviceByDeviceId(String deviceId);
- @Insert("INSERT INTO wvp_device (" +
- "device_id, " +
- "name, " +
- "manufacturer, " +
- "model, " +
- "firmware, " +
- "transport," +
- "stream_mode," +
- "media_server_id," +
- "ip," +
- "sdp_ip," +
- "local_ip," +
- "port," +
- "host_address," +
- "expires," +
- "register_time," +
- "keepalive_time," +
- "keepalive_interval_time," +
- "create_time," +
- "update_time," +
- "charset," +
- "subscribe_cycle_for_catalog," +
- "subscribe_cycle_for_mobile_position,"+
- "mobile_position_submission_interval,"+
- "subscribe_cycle_for_alarm,"+
- "ssrc_check,"+
- "as_message_channel,"+
- "broadcast_push_after_ack,"+
- "geo_coord_sys,"+
- "on_line"+
- ") VALUES (" +
- "#{deviceId}," +
- "#{name}," +
- "#{manufacturer}," +
- "#{model}," +
- "#{firmware}," +
- "#{transport}," +
- "#{streamMode}," +
- "#{mediaServerId}," +
- "#{ip}," +
- "#{sdpIp}," +
- "#{localIp}," +
- "#{port}," +
- "#{hostAddress}," +
- "#{expires}," +
- "#{registerTime}," +
- "#{keepaliveTime}," +
- "#{keepaliveIntervalTime}," +
- "#{createTime}," +
- "#{updateTime}," +
- "#{charset}," +
- "#{subscribeCycleForCatalog}," +
- "#{subscribeCycleForMobilePosition}," +
- "#{mobilePositionSubmissionInterval}," +
- "#{subscribeCycleForAlarm}," +
- "#{ssrcCheck}," +
- "#{asMessageChannel}," +
- "#{broadcastPushAfterAck}," +
- "#{geoCoordSys}," +
- "#{onLine}" +
- ")")
- @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
- int add(Device device);
- @Update(value = {" <script>" +
- "UPDATE wvp_device " +
- "SET update_time=#{updateTime}" +
- "<if test=\"name != null\">, name=#{name}</if>" +
- "<if test=\"manufacturer != null\">, manufacturer=#{manufacturer}</if>" +
- "<if test=\"model != null\">, model=#{model}</if>" +
- "<if test=\"firmware != null\">, firmware=#{firmware}</if>" +
- "<if test=\"transport != null\">, transport=#{transport}</if>" +
- "<if test=\"ip != null\">, ip=#{ip}</if>" +
- "<if test=\"localIp != null\">, local_ip=#{localIp}</if>" +
- "<if test=\"port != null\">, port=#{port}</if>" +
- "<if test=\"hostAddress != null\">, host_address=#{hostAddress}</if>" +
- "<if test=\"onLine != null\">, on_line=#{onLine}</if>" +
- "<if test=\"registerTime != null\">, register_time=#{registerTime}</if>" +
- "<if test=\"keepaliveTime != null\">, keepalive_time=#{keepaliveTime}</if>" +
- "<if test=\"keepaliveIntervalTime != null\">, keepalive_interval_time=#{keepaliveIntervalTime}</if>" +
- "<if test=\"expires != null\">, expires=#{expires}</if>" +
- "WHERE device_id=#{deviceId}"+
- " </script>"})
- int update(Device device);
- @Select(
- " <script>" +
- "SELECT " +
- "id, " +
- "device_id, " +
- "coalesce(custom_name, name) as name, " +
- "password, " +
- "manufacturer, " +
- "model, " +
- "firmware, " +
- "transport," +
- "stream_mode," +
- "ip,"+
- "sdp_ip,"+
- "local_ip,"+
- "port,"+
- "host_address,"+
- "expires,"+
- "register_time,"+
- "keepalive_time,"+
- "create_time,"+
- "update_time,"+
- "charset,"+
- "subscribe_cycle_for_catalog,"+
- "subscribe_cycle_for_mobile_position,"+
- "mobile_position_submission_interval,"+
- "subscribe_cycle_for_alarm,"+
- "ssrc_check,"+
- "as_message_channel,"+
- "broadcast_push_after_ack,"+
- "geo_coord_sys,"+
- "on_line,"+
- "media_server_id,"+
- "(SELECT count(0) FROM wvp_device_channel dc WHERE dc.device_db_id= de.id) as channel_count " +
- "FROM wvp_device de" +
- "<if test=\"onLine != null\"> where de.on_line=${onLine}</if>"+
- " order by de.create_time desc "+
- " </script>"
- )
- List<Device> getDevices(Boolean onLine);
- @Delete("DELETE FROM wvp_device WHERE device_id=#{deviceId}")
- int del(String deviceId);
- @Select("SELECT " +
- "id, " +
- "device_id, " +
- "coalesce(custom_name, name) as name, " +
- "password, " +
- "manufacturer, " +
- "model, " +
- "firmware, " +
- "transport," +
- "stream_mode," +
- "ip," +
- "sdp_ip,"+
- "local_ip,"+
- "port,"+
- "host_address,"+
- "expires,"+
- "register_time,"+
- "keepalive_time,"+
- "create_time,"+
- "update_time,"+
- "charset,"+
- "subscribe_cycle_for_catalog,"+
- "subscribe_cycle_for_mobile_position,"+
- "mobile_position_submission_interval,"+
- "subscribe_cycle_for_alarm,"+
- "ssrc_check,"+
- "as_message_channel,"+
- "broadcast_push_after_ack,"+
- "geo_coord_sys,"+
- "on_line"+
- " FROM wvp_device WHERE on_line = true")
- List<Device> getOnlineDevices();
- @Select("SELECT " +
- "id,"+
- "device_id,"+
- "coalesce(custom_name,name)as name,"+
- "password,"+
- "manufacturer,"+
- "model,"+
- "firmware,"+
- "transport,"+
- "stream_mode,"+
- "ip,"+
- "sdp_ip,"+
- "local_ip,"+
- "port,"+
- "host_address,"+
- "expires,"+
- "register_time,"+
- "keepalive_time,"+
- "create_time,"+
- "update_time,"+
- "charset,"+
- "subscribe_cycle_for_catalog,"+
- "subscribe_cycle_for_mobile_position,"+
- "mobile_position_submission_interval,"+
- "subscribe_cycle_for_alarm,"+
- "ssrc_check,"+
- "as_message_channel,"+
- "broadcast_push_after_ack,"+
- "geo_coord_sys,"+
- "on_line"+
- " FROM wvp_device WHERE ip = #{host} AND port=#{port}")
- Device getDeviceByHostAndPort(@Param("host") String host, @Param("port") int port);
- @Update(value = {" <script>" +
- "UPDATE wvp_device " +
- "SET update_time=#{updateTime}, custom_name=#{name} , password=#{password}, stream_mode=#{streamMode}" +
- ", ip=#{ip}, sdp_ip=#{sdpIp}, port=#{port}, charset=#{charset}, subscribe_cycle_for_catalog=#{subscribeCycleForCatalog}" +
- ", subscribe_cycle_for_mobile_position=#{subscribeCycleForMobilePosition}, mobile_position_submission_interval=#{mobilePositionSubmissionInterval}" +
- ", subscribe_cycle_for_alarm=#{subscribeCycleForAlarm}, ssrc_check=#{ssrcCheck}, as_message_channel=#{asMessageChannel}" +
- ", broadcast_push_after_ack=#{broadcastPushAfterAck}, geo_coord_sys=#{geoCoordSys}, media_server_id=#{mediaServerId}" +
- " WHERE id=#{id}"+
- " </script>"})
- void updateCustom(Device device);
- @Insert("INSERT INTO wvp_device (" +
- "device_id,"+
- "custom_name,"+
- "password,"+
- "sdp_ip,"+
- "create_time,"+
- "update_time,"+
- "charset,"+
- "ssrc_check,"+
- "as_message_channel,"+
- "broadcast_push_after_ack,"+
- "geo_coord_sys,"+
- "on_line,"+
- "stream_mode," +
- "media_server_id"+
- ") VALUES (" +
- "#{deviceId}," +
- "#{name}," +
- "#{password}," +
- "#{sdpIp}," +
- "#{createTime}," +
- "#{updateTime}," +
- "#{charset}," +
- "#{ssrcCheck}," +
- "#{asMessageChannel}," +
- "#{broadcastPushAfterAck}," +
- "#{geoCoordSys}," +
- "#{onLine}," +
- "#{streamMode}," +
- "#{mediaServerId}" +
- ")")
- void addCustomDevice(Device device);
- @Select("select * FROM wvp_device")
- List<Device> getAll();
- @Select("select * FROM wvp_device where as_message_channel = true")
- List<Device> queryDeviceWithAsMessageChannel();
- @Select(" <script>" +
- "SELECT " +
- "id, " +
- "device_id, " +
- "coalesce(custom_name, name) as name, " +
- "password, " +
- "manufacturer, " +
- "model, " +
- "firmware, " +
- "transport," +
- "stream_mode," +
- "ip,"+
- "sdp_ip,"+
- "local_ip,"+
- "port,"+
- "host_address,"+
- "expires,"+
- "register_time,"+
- "keepalive_time,"+
- "create_time,"+
- "update_time,"+
- "charset,"+
- "subscribe_cycle_for_catalog,"+
- "subscribe_cycle_for_mobile_position,"+
- "mobile_position_submission_interval,"+
- "subscribe_cycle_for_alarm,"+
- "ssrc_check,"+
- "as_message_channel,"+
- "broadcast_push_after_ack,"+
- "geo_coord_sys,"+
- "on_line,"+
- "media_server_id,"+
- "(SELECT count(0) FROM wvp_device_channel dc WHERE dc.device_db_id= de.id) as channel_count " +
- " FROM wvp_device de" +
- " where 1 = 1 "+
- " <if test='status != null'> AND de.on_line=${status}</if>"+
- " <if test='query != null'> AND (coalesce(custom_name, name) LIKE '%${query}%' OR device_id LIKE '%${query}%' OR ip LIKE '%${query}%')</if> " +
- " order by create_time desc "+
- " </script>")
- List<Device> getDeviceList(@Param("query") String query, @Param("status") Boolean status);
- @Select("select * from wvp_device_channel where id = #{id}")
- DeviceChannel getRawChannel(@Param("id") int id);
- @Select("select * from wvp_device where id = #{id}")
- Device query(@Param("id") Integer id);
- @Select("select wd.* from wvp_device wd left join wvp_device_channel wdc on wd.id = wdc.device_db_id where wdc.id = #{channelId}")
- Device queryByChannelId(@Param("channelId") Integer channelId);
- @Select("select wd.* from wvp_device wd left join wvp_device_channel wdc on wd.id = wdc.device_db_id where wdc.device_id = #{channelDeviceId}")
- Device getDeviceBySourceChannelDeviceId(@Param("channelDeviceId") String channelDeviceId);
- }
|