panlinlin
2021-03-30 56859d09df8d4226882d43934acf32d60a3b51d7
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -5,11 +5,10 @@
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatformCatch;
import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyDto;
import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
import com.genersoft.iot.vmp.storager.dao.DeviceChannelMapper;
import com.genersoft.iot.vmp.storager.dao.DeviceMapper;
import com.genersoft.iot.vmp.storager.dao.ParentPlatformMapper;
import com.genersoft.iot.vmp.storager.dao.PatformChannelMapper;
import com.genersoft.iot.vmp.gb28181.bean.MobilePosition;
import com.genersoft.iot.vmp.storager.dao.*;
import com.genersoft.iot.vmp.vmanager.platform.bean.ChannelReduce;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
@@ -25,6 +24,7 @@
 * @author: swwheihei
 * @date:   2020年5月6日 下午2:31:42
 */
@SuppressWarnings("rawtypes")
@Component
public class VideoManagerStoragerImpl implements IVideoManagerStorager {
@@ -32,7 +32,10 @@
    private DeviceMapper deviceMapper;
   @Autowired
    private DeviceChannelMapper deviceChannelMapper;
   private DeviceChannelMapper deviceChannelMapper;
   @Autowired
   private DeviceMobilePositionMapper deviceMobilePositionMapper;
   @Autowired
    private ParentPlatformMapper platformMapper;
@@ -42,6 +45,9 @@
   @Autowired
    private PatformChannelMapper patformChannelMapper;
   @Autowired
    private StreamProxyMapper streamProxyMapper;
@@ -194,11 +200,11 @@
   @Override
   public synchronized boolean online(String deviceId) {
      Device device = deviceMapper.getDeviceByDeviceId(deviceId);
      device.setOnline(1);
      System.out.println("更新设备在线");
      if (device == null) {
         return false;
      }
      device.setOnline(1);
      System.out.println("更新设备在线");
      return deviceMapper.update(device) > 0;
   }
@@ -216,10 +222,33 @@
      return deviceMapper.update(device) > 0;
   }
   /**
    * 清空通道
    * @param deviceId
    */
   @Override
   public void cleanChannelsForDevice(String deviceId) {
      int result = deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
      deviceChannelMapper.cleanChannelsByDeviceId(deviceId);
   }
   /**
    * 添加Mobile Position设备移动位置
    * @param mobilePosition
    */
   @Override
   public synchronized boolean insertMobilePosition(MobilePosition mobilePosition) {
      return deviceMobilePositionMapper.insertNewPosition(mobilePosition) > 0;
   }
   /**
    * 查询移动位置轨迹
    * @param deviceId
    * @param startTime
    * @param endTime
    */
   @Override
   public synchronized List<MobilePosition> queryMobilePositions(String deviceId, String startTime, String endTime) {
      return deviceMobilePositionMapper.queryPositionByDeviceIdAndTime(deviceId, startTime, endTime);
   }
   @Override
@@ -283,7 +312,7 @@
   @Override
   public PageInfo<ChannelReduce> queryAllChannelList(int page, int count, String query, Boolean online,
                                           Boolean channelType, String platformId, Boolean inPlatform) {
                                          Boolean channelType, String platformId, Boolean inPlatform) {
      PageHelper.startPage(page, count);
      List<ChannelReduce> all = deviceChannelMapper.queryChannelListInAll(query, online, channelType, platformId, inPlatform);
      return new PageInfo<>(all);
@@ -341,4 +370,86 @@
      Device device = patformChannelMapper.queryVideoDeviceByPlatformIdAndChannelId(platformId, channelId);
      return device;
   }
   /**
    * 查询最新移动位置
    * @param deviceId
    */
   @Override
   public MobilePosition queryLatestPosition(String deviceId) {
      return deviceMobilePositionMapper.queryLatestPositionByDevice(deviceId);
   }
   /**
    * 删除指定设备的所有移动位置
    * @param deviceId
    */
   public int clearMobilePositionsByDeviceId(String deviceId) {
      return deviceMobilePositionMapper.clearMobilePositionsByDeviceId(deviceId);
   }
   /**
    * 新增代理流
    * @param streamProxyDto
    * @return
    */
   @Override
   public int addStreamProxy(StreamProxyDto streamProxyDto) {
      return streamProxyMapper.add(streamProxyDto);
   }
   /**
    * 更新代理流
    * @param streamProxyDto
    * @return
    */
   @Override
   public int updateStreamProxy(StreamProxyDto streamProxyDto) {
      return streamProxyMapper.update(streamProxyDto);
   }
   /**
    * 移除代理流
    * @param id
    * @return
    */
   @Override
   public int deleteStreamProxy(String app, String stream) {
      return streamProxyMapper.del(app, stream);
   }
   /**
    * 根据是否启用获取代理流列表
    * @param enable
    * @return
    */
   @Override
   public List<StreamProxyDto> getStreamProxyListForEnable(boolean enable) {
      return streamProxyMapper.selectForEnable(enable);
   }
   /**
    * 分页查询代理流列表
    * @param page
    * @param count
    * @return
    */
   @Override
   public PageInfo<StreamProxyDto> queryStreamProxyList(Integer page, Integer count) {
      PageHelper.startPage(page, count);
      List<StreamProxyDto> all = streamProxyMapper.selectAll();
      return new PageInfo<>(all);
   }
   /**
    * 按照是app和stream获取代理流
    * @param app
    * @param stream
    * @return
    */
   @Override
   public StreamProxyDto queryStreamProxy(String app, String stream){
      return streamProxyMapper.selectOne(app, stream);
   }
}