From a04222c873e5e55f48c8d33b5c0bc46fa524ac8d Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期四, 08 十月 2026 13:20:39 +0800
Subject: [PATCH] 界面显示号改为来源自报,并给出无歧义的来源定位
---
battery-business/src/main/java/com/battery/business/service/impl/DeviceDiscoveryPersistenceService.java | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/battery-business/src/main/java/com/battery/business/service/impl/DeviceDiscoveryPersistenceService.java b/battery-business/src/main/java/com/battery/business/service/impl/DeviceDiscoveryPersistenceService.java
index 1fe72af..ba05f42 100644
--- a/battery-business/src/main/java/com/battery/business/service/impl/DeviceDiscoveryPersistenceService.java
+++ b/battery-business/src/main/java/com/battery/business/service/impl/DeviceDiscoveryPersistenceService.java
@@ -80,7 +80,8 @@
.map(item -> new CabinetCandidate(item.adapterCode(), item.adapterId(), item.deviceCode(),
item.devtype(), item.devid(), item.ip(), item.mac(), item.name(), item.manufacturer(), item.model(),
item.channels().stream().map(channel -> new ChannelCandidate(channel.identity(), false,
- DeviceWorkStatus.UNOBSERVABLE, failedAt, null, channel.lastDataAt())).toList(),
+ DeviceWorkStatus.UNOBSERVABLE, failedAt, null, channel.lastDataAt(),
+ channel.sourceDisplayNo())).toList(),
failedAt, item.expiresAt(), item.lastDataAt()))
.toList());
detectionCabinetMapper.markRegisteredFactsUnobservable(adapterCode);
@@ -154,7 +155,10 @@
DeviceWorkStatus workStatus = snapshot == null || snapshot.workStatus() == null
? DeviceWorkStatus.UNKNOWN : snapshot.workStatus();
detectionCabinetMapper.updateRegisteredChannelObservation(source.adapterCode(), identity.devtype(),
- identity.devid(), identity.subdevid(), identity.chlid(), channel.available() ? "ONLINE" : "OFFLINE",
+ identity.devid(), identity.subdevid(), identity.chlid(),
+ // 来源自己报了叫法就跟着刷新显示号;没报就保持原样,不去改操作员已登记的显示
+ channel.sourceDisplayNo(),
+ channel.available() ? "ONLINE" : "OFFLINE",
workStatus.name(), observedAt, successfulObservation);
if (channel.available() && !successfulObservation)
detectionCabinetMapper.touchRegisteredChannelObservation(source.adapterCode(), identity.devtype(),
@@ -193,7 +197,7 @@
DeviceWorkStatus status = snapshot == null || snapshot.workStatus() == null
? DeviceWorkStatus.UNKNOWN : snapshot.workStatus();
return new ChannelCandidate(item.identity(), item.available(), status, observedAt,
- snapshots.get(item.identity()), item.lastDataAt());
+ snapshots.get(item.identity()), item.lastDataAt(), item.sourceDisplayNo());
}).toList();
Instant lastDataAt = channels.stream().map(DetectedChannel::lastDataAt)
.filter(java.util.Objects::nonNull).max(Instant::compareTo).orElse(null);
--
Gitblit v1.7.1