IDeviceChannelService.java 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. package com.genersoft.iot.vmp.gb28181.service;
  2. import com.genersoft.iot.vmp.gb28181.bean.Device;
  3. import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
  4. import com.genersoft.iot.vmp.gb28181.bean.MobilePosition;
  5. import com.genersoft.iot.vmp.vmanager.bean.ResourceBaseInfo;
  6. import com.genersoft.iot.vmp.gb28181.controller.bean.ChannelReduce;
  7. import com.genersoft.iot.vmp.web.gb28181.dto.DeviceChannelExtend;
  8. import com.github.pagehelper.PageInfo;
  9. import java.util.List;
  10. /**
  11. * 国标通道业务类
  12. * @author lin
  13. */
  14. public interface IDeviceChannelService {
  15. /**
  16. * 添加设备通道
  17. *
  18. * @param deviceId 设备id
  19. * @param channel 通道
  20. */
  21. void updateChannel(String deviceId, DeviceChannel channel);
  22. /**
  23. * 批量添加设备通道
  24. */
  25. int updateChannels(Device device, List<DeviceChannel> channels);
  26. /**
  27. * 获取统计信息
  28. * @return
  29. */
  30. ResourceBaseInfo getOverview();
  31. /**
  32. * 查询所有未分配的通道
  33. * @param platformId
  34. * @return
  35. */
  36. List<ChannelReduce> queryAllChannelList(String platformId);
  37. PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online, Boolean channelType, String platformId, String catalogId);
  38. /**
  39. * 查询通道所属的设备
  40. */
  41. List<Device> getDeviceByChannelId(String channelId);
  42. /**
  43. * 批量删除通道
  44. * @param deleteChannelList 待删除的通道列表
  45. */
  46. int deleteChannels(List<DeviceChannel> deleteChannelList);
  47. /**
  48. * 批量上线
  49. */
  50. int channelsOnline(List<DeviceChannel> channels);
  51. /**
  52. * 批量下线
  53. */
  54. int channelsOffline(List<DeviceChannel> channels);
  55. /**
  56. * 获取一个通道
  57. */
  58. DeviceChannel getOne(String deviceId, String channelId);
  59. /**
  60. * 直接批量更新通道
  61. */
  62. void batchUpdateChannel(List<DeviceChannel> channels);
  63. /**
  64. * 直接批量添加
  65. */
  66. void batchAddChannel(List<DeviceChannel> deviceChannels);
  67. /**
  68. * 修改通道的码流类型
  69. */
  70. void updateChannelStreamIdentification(DeviceChannel channel);
  71. List<DeviceChannel> queryChaneListByDeviceId(String deviceId);
  72. void updateChannelGPS(Device device, DeviceChannel deviceChannel, MobilePosition mobilePosition);
  73. void startPlay(String deviceId, String channelId, String stream);
  74. void stopPlay(String deviceId, String channelId);
  75. void batchUpdateChannelGPS(List<DeviceChannel> channelList);
  76. void batchAddMobilePosition(List<MobilePosition> addMobilePositionList);
  77. void online(DeviceChannel channel);
  78. void offline(DeviceChannel channel);
  79. void delete(DeviceChannel channel);
  80. void cleanChannelsForDevice(int deviceId);
  81. boolean resetChannels(int deviceDbId, List<DeviceChannel> deviceChannels);
  82. PageInfo<DeviceChannel> getSubChannels(int deviceDbId, String channelId, String query, Boolean channelType, Boolean online, int page, int count);
  83. List<DeviceChannelExtend> queryChannelExtendsByDeviceId(String deviceId, List<String> channelIds, Boolean online);
  84. PageInfo<DeviceChannel> queryChannelsByDeviceId(String deviceId, String query, Boolean channelType, Boolean online, int page, int count);
  85. List<Device> queryDeviceWithAsMessageChannel();
  86. DeviceChannel getRawChannel(int id);
  87. }