From 3194ad3ce5526148df9009aeaa917b888dc53b40 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期六, 10 十月 2026 10:43:44 +0800
Subject: [PATCH] 新威的工步名称按设备工步类型填方向名称

---
 battery-device-neware/src/test/java/com/battery/device/neware/NewareMysqlAdapterContractTest.java |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/battery-device-neware/src/test/java/com/battery/device/neware/NewareMysqlAdapterContractTest.java b/battery-device-neware/src/test/java/com/battery/device/neware/NewareMysqlAdapterContractTest.java
index 8ca9a29..d0d86ca 100644
--- a/battery-device-neware/src/test/java/com/battery/device/neware/NewareMysqlAdapterContractTest.java
+++ b/battery-device-neware/src/test/java/com/battery/device/neware/NewareMysqlAdapterContractTest.java
@@ -132,8 +132,10 @@
         assertEquals(3, latest.cycleNo());
         assertEquals(12, latest.stepNo());
         assertEquals("2", latest.stepType());
+        // 工步名称由设备工步类型解释出的方向填写:2 = 放电。类型本身仍保留设备给的数字。
+        assertEquals("放电", latest.stepName());
         assertEquals("neware:440:7435", latest.sourceRecordId());
-        // 工步类型保留设备给出的数字,不按电流符号猜方向;同一秒的另一行靠工步与序号区分。
+        // 同一秒的另一行靠工步与序号区分。
         assertEquals(9, rows.get(1).stepNo());
     }
 
@@ -224,7 +226,8 @@
 
         StepRecord rest = step(steps, 0, 1);
         assertEquals("4", rest.stepType());
-        assertNull(rest.stepName());
+        // 工步名称按设备工步类型解释出的方向:4 = 搁置。
+        assertEquals("搁置", rest.stepName());
         assertEquals(Instant.parse("2026-09-28T01:00:00Z"), rest.startedAt());
         assertEquals(Instant.parse("2026-09-28T01:00:38Z"), rest.endedAt());
         assertEquals(1.3588, rest.endVoltageV(), 1e-9);
@@ -237,6 +240,7 @@
 
         StepRecord charge = step(steps, 0, 4);
         assertEquals("1", charge.stepType());
+        assertEquals("充电", charge.stepName());
         // 单项容量只在方向已确认时给出:充电工步取充电侧。
         assertEquals(119277040d / 36000000d, charge.capacityAh(), 1e-9);
         assertEquals(195220576d / 36000000d, charge.energyWh(), 1e-9);
@@ -246,6 +250,7 @@
 
         StepRecord discharge = step(steps, 0, 6);
         assertEquals("2", discharge.stepType());
+        assertEquals("放电", discharge.stepName());
         assertEquals(68462032d / 36000000d, discharge.capacityAh(), 1e-9);
         assertTrue(discharge.measurements().containsKey("dischargeMedianVoltage"));
         // 四组容量能量都是设备事实:每一组都保留,不只保留方向匹配的那一组。
@@ -263,6 +268,8 @@
         List<StepRecord> steps = adapter(stepLayerDatabase()).stepRecords(CHANNEL);
         StepRecord unknown = step(steps, 1, 3);
         assertEquals("7", unknown.stepType());
+        // 类型未确认时工步名称留空:不按电流符号也不按名称猜方向。
+        assertNull(unknown.stepName());
         // 单项容量留空:方向未确认时不给出可归属的单值,但四组明细照原样保留供核对。
         assertNull(unknown.capacityAh());
         assertNull(unknown.energyWh());

--
Gitblit v1.7.1