From b097f7539a7429a85cdda7959c9ecb83a37a2918 Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Thu, 11 Jun 2026 14:49:28 +0800
Subject: [PATCH] 架次关联航线

---
 ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java b/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java
index dc2658d..3544e79 100644
--- a/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/work/service/impl/ArdFlightTaskPartServiceImpl.java
@@ -2,8 +2,10 @@
 
 import cn.hutool.core.util.SerializeUtil;
 import com.ard.common.utils.DateUtils;
+
 import com.ard.work.domain.cache.UavStateCache;
 import com.ard.work.domain.cache.UavTelemetryDataCache;
+import com.ard.work.domain.cache.UavWaylineCache;
 import com.ard.work.domain.dto.UavFlightStateDTO;
 import com.ard.work.domain.dto.state.UavState;
 import com.ard.work.domain.dto.telemetry.TelemetryData;
@@ -77,7 +79,11 @@
                 log.debug("设备 {} 当前状态为:{}", boxSn, currentStatus);
                 // 只有飞行中才添加缓存
                 if (currentStatus == 2) {
-                    log.warn("设备 {} 当前状态为飞行中,添加遥测数据到缓存", boxSn);
+                    int flightMode = telemetryData.getFlightMode();
+                    if (flightMode != 14) {
+                        // 非航线模式 → 清理航线缓存,避免手动飞行被错绑 routeId
+                        UavWaylineCache.remove(boxSn);
+                    }
                     UavFlightStateDTO dto = new UavFlightStateDTO(uavState, telemetryData, dataTs);
                     addTelemetryData(dto);
                 }

--
Gitblit v1.9.3