Commit b8c480be560bced4aeac6d4e8e20f104248ab554

Authored by lijianfa_14810364212
1 parent f8f6e4c2

fix:解决边端向云端推送事件,云端设备不上线问题

... ... @@ -18,6 +18,7 @@ import org.thingsboard.server.queue.util.TbCoreComponent;
18 18 import org.thingsboard.server.service.edge.rpc.yunteng.TkEdgeProcessor;
19 19 import org.thingsboard.server.service.edge.rpc.yunteng.TkEdgeProcessorRepository;
20 20 import org.thingsboard.server.service.edge.rpc.yunteng.tk_device_profile_category.TkDeviceProfileCategoryRepository;
  21 +import org.thingsboard.server.service.state.DeviceStateService;
21 22
22 23 import java.util.UUID;
23 24
... ...
... ... @@ -3,6 +3,7 @@ package org.thingsboard.server.service.edge.rpc.yunteng.tk_event_kv;
3 3 import lombok.AllArgsConstructor;
4 4 import org.springframework.beans.BeanUtils;
5 5 import org.springframework.stereotype.Repository;
  6 +import org.thingsboard.server.common.data.id.DeviceId;
6 7 import org.thingsboard.server.common.data.id.EdgeId;
7 8 import org.thingsboard.server.common.data.id.EntityId;
8 9 import org.thingsboard.server.common.data.id.TenantId;
... ... @@ -16,6 +17,7 @@ import org.thingsboard.server.dao.yunteng.jpa.entity.events.TkEventKvCompositeKe
16 17 import org.thingsboard.server.dao.yunteng.jpa.entity.events.TkEventKvEntity;
17 18 import org.thingsboard.server.dao.yunteng.jpa.repository.event.EventKvRepository;
18 19 import org.thingsboard.server.service.edge.rpc.yunteng.TkEdgeProcessorRepository;
  20 +import org.thingsboard.server.service.state.DeviceStateService;
19 21
20 22 import java.util.List;
21 23 import java.util.Optional;
... ... @@ -25,6 +27,7 @@ import java.util.Optional;
25 27 public class TkEventKvRepository implements TkEdgeProcessorRepository<TkEventKv> {
26 28
27 29 private EventKvRepository eventKvRepository;
  30 + private DeviceStateService deviceStateService;
28 31
29 32 @Override
30 33 public boolean updateFromEdge(TenantId tenantId, EdgeId edgeId, TkEventKv dto) throws Exception {
... ... @@ -34,6 +37,7 @@ public class TkEventKvRepository implements TkEdgeProcessorRepository<TkEventKv>
34 37 id.setEventType(dto.getEventType());
35 38 id.setEntityId(dto.getId().getId());
36 39 Optional<TkEventKvEntity> optional = eventKvRepository.findById(id);
  40 + deviceStateService.onDeviceActivity(tenantId,new DeviceId(dto.getId().getId()),System.currentTimeMillis());
37 41 if(optional.isPresent()){
38 42 TkEventKvEntity model=optional.get();
39 43 CopyUtils.copyProperties(dto, model);
... ...