From e18802f171fb12246a8bad5a699c55c630a6d2e3 Mon Sep 17 00:00:00 2001
From: zhaowenyu <35589726@qq.com>
Date: Thu, 12 Feb 2026 10:50:55 +0800
Subject: [PATCH] 2026-02-12 优化媒体文件入库代码。
---
ard-work/src/main/java/com/ard/work/domain/cache/UavSignalInfoCache.java | 24 +++++++++++++++++-------
1 files changed, 17 insertions(+), 7 deletions(-)
diff --git a/ard-work/src/main/java/com/ard/work/domain/cache/UavSignalInfoCache.java b/ard-work/src/main/java/com/ard/work/domain/cache/UavSignalInfoCache.java
index 2e25c41..02b761e 100644
--- a/ard-work/src/main/java/com/ard/work/domain/cache/UavSignalInfoCache.java
+++ b/ard-work/src/main/java/com/ard/work/domain/cache/UavSignalInfoCache.java
@@ -1,6 +1,7 @@
package com.ard.work.domain.cache;
import com.ard.work.domain.dto.signal.SignalInfo;
+import com.ard.work.domain.dto.telemetry.TelemetryData;
import java.util.concurrent.ConcurrentHashMap;
@@ -13,20 +14,29 @@
public class UavSignalInfoCache {
// 使用 ConcurrentHashMap 来缓存无人机信道质量数据,key 是 boxSn(无人机序列号)
- private static final ConcurrentHashMap<String, SignalInfo> uavSignalInfoCache = new ConcurrentHashMap<>();
+ private static final ConcurrentHashMap<String, SignalInfo> cache = new ConcurrentHashMap<>();
// 存储无人机信道质量数据到缓存
- public static void putUavSignalInfoCache(SignalInfo signalInfo) {
- uavSignalInfoCache.put(signalInfo.getBoxSn(), signalInfo);
+ public static void put(SignalInfo signalInfo) {
+ cache.put(signalInfo.getBoxSn(), signalInfo);
}
// 从缓存中获取信道质量数据
- public static SignalInfo getUavSignalInfo(String boxSn) {
- return uavSignalInfoCache.get(boxSn);
+ public static SignalInfo get(String boxSn) {
+ return cache.get(boxSn);
}
// 删除缓存中的信道质量数据
- public static void removeUavSignalInfo(String boxSn) {
- uavSignalInfoCache.remove(boxSn);
+ public static void remove(String boxSn) {
+ cache.remove(boxSn);
+ }
+
+ // 定时任务使用:判断状遥测数据是否变化,但不更新缓存
+ public static boolean hasChanged(String boxSn, SignalInfo signalInfo) {
+ SignalInfo oldSignalInfo= cache.get(boxSn);
+ if (oldSignalInfo == null) {
+ return true; // 没有缓存,算作变化
+ }
+ return !oldSignalInfo.equals(signalInfo); // true = 有变化
}
}
--
Gitblit v1.9.3