From dd73bbc7132f7b126b8fc2faabf2827b49622d21 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 23 Oct 2023 09:28:40 +0800
Subject: [PATCH] 获取计划最近一条
---
src/main/java/com/dji/sample/manage/service/impl/DeviceOSDServiceImpl.java | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/dji/sample/manage/service/impl/DeviceOSDServiceImpl.java b/src/main/java/com/dji/sample/manage/service/impl/DeviceOSDServiceImpl.java
index 16ed4be..e5a596e 100644
--- a/src/main/java/com/dji/sample/manage/service/impl/DeviceOSDServiceImpl.java
+++ b/src/main/java/com/dji/sample/manage/service/impl/DeviceOSDServiceImpl.java
@@ -2,6 +2,7 @@
import com.dji.sample.component.mqtt.model.CommonTopicReceiver;
import com.dji.sample.component.redis.RedisConst;
+import com.dji.sample.component.redis.RedisOpsUtils;
import com.dji.sample.component.websocket.config.ConcurrentWebSocketSession;
import com.dji.sample.component.websocket.model.BizCodeEnum;
import com.dji.sample.component.websocket.model.CustomWebSocketMessage;
@@ -58,7 +59,7 @@
public void handleOSD(CommonTopicReceiver receiver, DeviceDTO device,
Collection<ConcurrentWebSocketSession> webSessions,
CustomWebSocketMessage<TelemetryDTO> wsMessage) {
- if (DeviceDomainEnum.SUB_DEVICE.getDesc().equals(device.getDomain())) {
+ if (DeviceDomainEnum.SUB_DEVICE.getVal() == device.getDomain()) {
wsMessage.setBizCode(BizCodeEnum.DEVICE_OSD.getCode());
OsdSubDeviceReceiver data = mapper.convertValue(receiver.getData(), OsdSubDeviceReceiver.class);
@@ -67,7 +68,7 @@
Map<String, Object> receiverData = (Map<String, Object>) receiver.getData();
data.setPayloads(payloadsList.stream()
.map(payload -> mapper.convertValue(
- receiverData.getOrDefault(payload.getPayloadName(), Map.of()),
+ receiverData.getOrDefault(payload.getPayloadIndex(), Map.of()),
OsdPayloadReceiver.class))
.collect(Collectors.toList()));
@@ -75,7 +76,7 @@
log.warn("Please remount the payload, or restart the drone. Otherwise the data of the payload will not be received.");
}
- redisOps.setWithExpire(RedisConst.OSD_PREFIX + device.getDeviceSn(), data, RedisConst.DEVICE_ALIVE_SECOND);
+ RedisOpsUtils.setWithExpire(RedisConst.OSD_PREFIX + device.getDeviceSn(), data, RedisConst.DEVICE_ALIVE_SECOND);
wsMessage.getData().setHost(data);
sendMessageService.sendBatch(webSessions, wsMessage);
--
Gitblit v1.9.3