Commit 646924d46e017b78bf3a05782bca767f9d47127b

Authored by 芯火源
1 parent 828a4622

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

... ... @@ -95,6 +95,7 @@ import org.thingsboard.server.dao.device.provision.ProvisionResponse;
95 95 import org.thingsboard.server.dao.ota.OtaPackageService;
96 96 import org.thingsboard.server.dao.relation.RelationService;
97 97 import org.thingsboard.server.dao.tenant.TbTenantProfileCache;
  98 +import org.thingsboard.server.dao.yunteng.entities.TkVideoChannelEntity;
98 99 import org.thingsboard.server.dao.yunteng.service.TkDeviceScriptService;
99 100 import org.thingsboard.server.dao.yunteng.service.TkDeviceService;
100 101 import org.thingsboard.server.dao.yunteng.service.media.TkMediaServerNodeService;
... ... @@ -729,9 +730,11 @@ public class DefaultTransportApiService implements TransportApiService {
729 730
730 731 break;
731 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 739 break;
737 740 default:
... ...
... ... @@ -44,20 +44,6 @@ public class TkVideoChannelServiceImpl
44 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 48 @Override
63 49 public VideoChanelDTO findVideoChannelById(
... ... @@ -79,11 +65,9 @@ public class TkVideoChannelServiceImpl
79 65 }
80 66
81 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 73 @Override
... ...
... ... @@ -10,14 +10,6 @@ import org.thingsboard.server.dao.yunteng.service.BaseService;
10 10 public interface TkVideoChannelService extends BaseService<TkVideoChannelEntity> {
11 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 23 VideoChanelDTO findVideoChannelById(String cameraCode, String channelId, String tenantId);
32 24
33 25 /**
34   - * 新增视频通道信息。
35   - *
36   - * @param videoChanelDTO 摄像头通道信息
  26 + * 清除摄像头的视频通道
  27 + * @param cameraCode
37 28 * @return
38 29 */
39   - VideoChanelDTO saveChannelInfo(VideoChanelDTO videoChanelDTO);
  30 + int clearDeviceChannel(String cameraCode);
40 31
41 32 /**
42 33 * 更新视频通道信息。
... ...