From c6202c6b72613e714a7b32717259b2f8ad532596 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期三, 02 九月 2026 20:38:57 +0800
Subject: [PATCH] 按设备时间归属采集器工步观测
---
ruoyi-admin/src/test/java/com/ruoyi/system/service/impl/TestDataQueryServiceEffectiveDataTest.java | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/ruoyi-admin/src/test/java/com/ruoyi/system/service/impl/TestDataQueryServiceEffectiveDataTest.java b/ruoyi-admin/src/test/java/com/ruoyi/system/service/impl/TestDataQueryServiceEffectiveDataTest.java
index 58b19c1..3755377 100644
--- a/ruoyi-admin/src/test/java/com/ruoyi/system/service/impl/TestDataQueryServiceEffectiveDataTest.java
+++ b/ruoyi-admin/src/test/java/com/ruoyi/system/service/impl/TestDataQueryServiceEffectiveDataTest.java
@@ -3,6 +3,7 @@
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.when;
+import java.time.Instant;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -65,6 +66,28 @@
assertTrue(service.cycles(8L).get(0).containsKey("cycleNo"));
}
+ @Test
+ void assignsCollectorObservationToCabinetStepByDeviceTime()
+ {
+ when(tests.selectTestById(9L)).thenReturn(new TTest());
+ Map<String, Object> cabinet = row("sourceType", "CABINET", "batteryNo", "B-01", "cycleNo", 1,
+ "stepNo", 2, "stepName", "恒流充电", "deviceTime", Instant.parse("2026-09-02T00:00:00Z"),
+ "adapterId", 1L, "devtype", 22, "deviceId", 22L, "subdevid", 0, "channelId", 8L, "sequenceId", 1L);
+ Map<String, Object> collector = row("sourceType", "COLLECTOR", "batteryNo", "B-01", "metricCode", "temperature",
+ "deviceTime", Instant.parse("2026-09-02T00:00:01Z"), "collectorId", 3L, "channelCode", "S-01", "sequenceId", 2L);
+ when(mapper.selectPersistedRecords(9L)).thenReturn(List.of(cabinet));
+ when(mapper.selectPersistedCollectorRecords(9L)).thenReturn(List.of(collector));
+ when(mapper.selectDataOverrides(9L, "REALTIME")).thenReturn(List.of());
+
+ List<Map<String, Object>> result = new TestDataQueryServiceImpl(mapper, tests).records(9L);
+
+ assertEquals(2, result.size());
+ Map<String, Object> assigned = result.stream().filter(item -> "COLLECTOR".equals(item.get("sourceType"))).findFirst().orElseThrow();
+ assertEquals("1", assigned.get("cycleNo"));
+ assertEquals("2", assigned.get("stepNo"));
+ assertEquals("恒流充电", assigned.get("stepName"));
+ }
+
private static TTestDataOverride override(String identity, String values, boolean deleted)
{
TTestDataOverride result = new TTestDataOverride();
--
Gitblit v1.7.1