648540858
2023-07-01 c551164c89f70e664b498c3a09e615928261e01a
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStorageImpl.java
@@ -6,7 +6,6 @@
import com.genersoft.iot.vmp.gb28181.event.EventPublisher;
import com.genersoft.iot.vmp.gb28181.event.subscribe.catalog.CatalogEvent;
import com.genersoft.iot.vmp.media.zlm.dto.StreamProxyItem;
import com.genersoft.iot.vmp.service.IGbStreamService;
import com.genersoft.iot.vmp.service.bean.GPSMsgInfo;
import com.genersoft.iot.vmp.storager.IRedisCatchStorage;
import com.genersoft.iot.vmp.storager.IVideoManagerStorage;
@@ -91,12 +90,6 @@
   @Autowired
    private PlatformGbStreamMapper platformGbStreamMapper;
   @Autowired
    private IGbStreamService gbStreamService;
   @Autowired
    private ParentPlatformMapper parentPlatformMapper;
   /**
    * 根据设备ID判断设备是否存在
    *
@@ -140,15 +133,21 @@
         if (allChannelMap.containsKey(deviceChannel.getChannelId())) {
            deviceChannel.setStreamId(allChannelMap.get(deviceChannel.getChannelId()).getStreamId());
            deviceChannel.setHasAudio(allChannelMap.get(deviceChannel.getChannelId()).isHasAudio());
            if (allChannelMap.get(deviceChannel.getChannelId()).getStatus() !=deviceChannel.getStatus()){
            if (allChannelMap.get(deviceChannel.getChannelId()).isStatus() !=deviceChannel.isStatus()){
               List<String> strings = platformChannelMapper.queryParentPlatformByChannelId(deviceChannel.getChannelId());
               if (!CollectionUtils.isEmpty(strings)){
                  strings.forEach(platformId->{
                     eventPublisher.catalogEventPublish(platformId, deviceChannel, deviceChannel.getStatus()==1?CatalogEvent.ON:CatalogEvent.OFF);
                     eventPublisher.catalogEventPublish(platformId, deviceChannel, deviceChannel.isStatus()?CatalogEvent.ON:CatalogEvent.OFF);
                  });
               }
            }
            deviceChannel.setUpdateTime(DateUtil.getNow());
            updateChannels.add(deviceChannel);
         }else {
            deviceChannel.setCreateTime(DateUtil.getNow());
            deviceChannel.setUpdateTime(DateUtil.getNow());
            addChannels.add(deviceChannel);
         }
         channels.add(deviceChannel);
         if (!ObjectUtils.isEmpty(deviceChannel.getParentId())) {