From 64972e9093fa9dde9ce346273b27445bd9d004b9 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Wed, 24 Dec 2025 15:14:25 +0800
Subject: [PATCH] 2025-12-24 zwy 增加计划任务轨迹功能,将在计划任务执行期间的飞行轨迹数据、任务状态数据保存;同时将计划任务数据保存到计划任务历史表中保存。并提供完整的轨迹提取接口。
---
ard-work/src/main/java/com/ard/work/service/impl/ArdDroneInfoServiceImpl.java | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/ard-work/src/main/java/com/ard/work/service/impl/ArdDroneInfoServiceImpl.java b/ard-work/src/main/java/com/ard/work/service/impl/ArdDroneInfoServiceImpl.java
index 78e3352..053cfa6 100644
--- a/ard-work/src/main/java/com/ard/work/service/impl/ArdDroneInfoServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/work/service/impl/ArdDroneInfoServiceImpl.java
@@ -320,11 +320,12 @@
String redisKey = CacheConstants.UAV_ONLINE_KEY + boxSn;
boolean currentOnline = remote.getOnLine() == 1;
- // 获取上次状态
- boolean lastOnline = redisCache.getCacheObject(redisKey) != null;
+ ArdDroneInfo local = localMap.get(boxSn);
+ boolean dbOnline = local != null && local.getOnLine() == 1;
+ boolean needUpdate = (dbOnline != currentOnline);
// 如果状态变化才更新
- if (lastOnline != currentOnline) {
+ if (needUpdate){
// 更新 Redis
if (currentOnline) {
redisCache.setCacheObject(redisKey, remote);
@@ -334,7 +335,6 @@
// 发布事件
eventPublisher.publishEvent(new DeviceStatusEvent(boxSn, currentOnline));
// 更新数据库
- ArdDroneInfo local = localMap.get(boxSn);
if (local != null) {
local.setOnLine(currentOnline ? 1 : 0);
updateArdDrone(local);
--
Gitblit v1.9.3