From ff458109478abbc015d93d6b48a323e0d23fa94e Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期日, 30 八月 2026 01:25:56 +0800
Subject: [PATCH] 实现测试控制台双状态实时流

---
 ruoyi-device/src/main/java/com/ruoyi/device/discovery/DeviceDiscoveryCandidateStore.java |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/ruoyi-device/src/main/java/com/ruoyi/device/discovery/DeviceDiscoveryCandidateStore.java b/ruoyi-device/src/main/java/com/ruoyi/device/discovery/DeviceDiscoveryCandidateStore.java
index 93bbc2a..a9fe59d 100644
--- a/ruoyi-device/src/main/java/com/ruoyi/device/discovery/DeviceDiscoveryCandidateStore.java
+++ b/ruoyi-device/src/main/java/com/ruoyi/device/discovery/DeviceDiscoveryCandidateStore.java
@@ -5,6 +5,7 @@
 import java.util.Optional;
 import com.ruoyi.device.model.ChannelIdentity;
 import com.ruoyi.device.model.DeviceWorkStatus;
+import com.ruoyi.device.model.RealtimeSnapshot;
 
 /** 保存未登记发现候选和正式设备的实时观测快照。 */
 public interface DeviceDiscoveryCandidateStore
@@ -51,7 +52,15 @@
     }
 
     record ChannelCandidate(ChannelIdentity identity, boolean online, DeviceWorkStatus workStatus,
-            Instant observedAt) { }
+            Instant observedAt, RealtimeSnapshot latestSnapshot)
+    {
+        /** 兼容仅有状态的旧发现候选。 */
+        public ChannelCandidate(ChannelIdentity identity, boolean online, DeviceWorkStatus workStatus,
+                Instant observedAt)
+        {
+            this(identity, online, workStatus, observedAt, null);
+        }
+    }
 
     record CollectorCandidate(String adapterCode, String deviceCode, String ip, String mac, String name,
             String manufacturer, String model, int channelCount, boolean online,

--
Gitblit v1.7.1