Commit 646924d46e017b78bf3a05782bca767f9d47127b

Authored by 芯火源
1 parent 828a4622

fix: 摄像头通道刷新逻辑调整

@@ -95,6 +95,7 @@ import org.thingsboard.server.dao.device.provision.ProvisionResponse; @@ -95,6 +95,7 @@ import org.thingsboard.server.dao.device.provision.ProvisionResponse;
95 import org.thingsboard.server.dao.ota.OtaPackageService; 95 import org.thingsboard.server.dao.ota.OtaPackageService;
96 import org.thingsboard.server.dao.relation.RelationService; 96 import org.thingsboard.server.dao.relation.RelationService;
97 import org.thingsboard.server.dao.tenant.TbTenantProfileCache; 97 import org.thingsboard.server.dao.tenant.TbTenantProfileCache;
  98 +import org.thingsboard.server.dao.yunteng.entities.TkVideoChannelEntity;
98 import org.thingsboard.server.dao.yunteng.service.TkDeviceScriptService; 99 import org.thingsboard.server.dao.yunteng.service.TkDeviceScriptService;
99 import org.thingsboard.server.dao.yunteng.service.TkDeviceService; 100 import org.thingsboard.server.dao.yunteng.service.TkDeviceService;
100 import org.thingsboard.server.dao.yunteng.service.media.TkMediaServerNodeService; 101 import org.thingsboard.server.dao.yunteng.service.media.TkMediaServerNodeService;
@@ -729,9 +730,11 @@ public class DefaultTransportApiService implements TransportApiService { @@ -729,9 +730,11 @@ public class DefaultTransportApiService implements TransportApiService {
729 730
730 break; 731 break;
731 case Catalog: 732 case Catalog:
732 - Optional<List<VideoChanelDTO>> chanel = dataDecodingEncodingService.decode(requestMsg.getContext().toByteArray());  
733 - chanel.ifPresent(d->{  
734 - d.forEach(channelService::saveOrUpdate); 733 + Optional<List<VideoChanelDTO>> allChannel = dataDecodingEncodingService.decode(requestMsg.getContext().toByteArray());
  734 + allChannel.ifPresent(d->{
  735 + channelService.clearDeviceChannel(d.get(0).getCameraCode());
  736 + List<TkVideoChannelEntity> chanel= d.stream().map(item -> item.getEntity(TkVideoChannelEntity.class)).collect(Collectors.toList());
  737 + channelService.insertBatch(chanel,chanel.size());
735 }); 738 });
736 break; 739 break;
737 default: 740 default:
@@ -44,20 +44,6 @@ public class TkVideoChannelServiceImpl @@ -44,20 +44,6 @@ public class TkVideoChannelServiceImpl
44 return getPageData(iPage, VideoChanelDTO.class); 44 return getPageData(iPage, VideoChanelDTO.class);
45 } 45 }
46 46
47 - @Override  
48 - @Transactional  
49 - public VideoChanelDTO saveOrUpdate(VideoChanelDTO videoChanel) {  
50 - VideoChanelDTO oldChanel =  
51 - findVideoChannelById(  
52 - videoChanel.getCameraCode(), videoChanel.getChannelId(), videoChanel.getTenantId());  
53 - if (oldChanel == null) {  
54 - return saveChannelInfo(videoChanel);  
55 - } else {  
56 - videoChanel.setId(oldChanel.getId());  
57 - return updateChannelInfo(videoChanel);  
58 - }  
59 - }  
60 -  
61 47
62 @Override 48 @Override
63 public VideoChanelDTO findVideoChannelById( 49 public VideoChanelDTO findVideoChannelById(
@@ -79,11 +65,9 @@ public class TkVideoChannelServiceImpl @@ -79,11 +65,9 @@ public class TkVideoChannelServiceImpl
79 } 65 }
80 66
81 @Override 67 @Override
82 - public VideoChanelDTO saveChannelInfo(VideoChanelDTO videoChanelDTO) {  
83 - TkVideoChannelEntity entity = videoChanelDTO.getEntity(TkVideoChannelEntity.class);  
84 - entity.setCreateTime(LocalDateTime.now());  
85 - baseMapper.insert(entity);  
86 - return videoChanelDTO; 68 + public int clearDeviceChannel(String cameraCode) {
  69 + return baseMapper.delete(new LambdaQueryWrapper<TkVideoChannelEntity>()
  70 + .eq(TkVideoChannelEntity::getCameraCode, cameraCode));
87 } 71 }
88 72
89 @Override 73 @Override
@@ -10,14 +10,6 @@ import org.thingsboard.server.dao.yunteng.service.BaseService; @@ -10,14 +10,6 @@ import org.thingsboard.server.dao.yunteng.service.BaseService;
10 public interface TkVideoChannelService extends BaseService<TkVideoChannelEntity> { 10 public interface TkVideoChannelService extends BaseService<TkVideoChannelEntity> {
11 TkPageData<VideoChanelDTO> page(String tenantId, Map<String, Object> queryMap); 11 TkPageData<VideoChanelDTO> page(String tenantId, Map<String, Object> queryMap);
12 12
13 - /**  
14 - * 刷新摄像头通道信息  
15 - *  
16 - * @param videoChanelDTO 摄像头通道信息  
17 - * @return 视频通道信息  
18 - */  
19 - VideoChanelDTO saveOrUpdate(VideoChanelDTO videoChanelDTO);  
20 -  
21 13
22 14
23 /** 15 /**
@@ -31,12 +23,11 @@ public interface TkVideoChannelService extends BaseService<TkVideoChannelEntity> @@ -31,12 +23,11 @@ public interface TkVideoChannelService extends BaseService<TkVideoChannelEntity>
31 VideoChanelDTO findVideoChannelById(String cameraCode, String channelId, String tenantId); 23 VideoChanelDTO findVideoChannelById(String cameraCode, String channelId, String tenantId);
32 24
33 /** 25 /**
34 - * 新增视频通道信息。  
35 - *  
36 - * @param videoChanelDTO 摄像头通道信息 26 + * 清除摄像头的视频通道
  27 + * @param cameraCode
37 * @return 28 * @return
38 */ 29 */
39 - VideoChanelDTO saveChannelInfo(VideoChanelDTO videoChanelDTO); 30 + int clearDeviceChannel(String cameraCode);
40 31
41 /** 32 /**
42 * 更新视频通道信息。 33 * 更新视频通道信息。