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

---
 battery-business/src/main/java/com/battery/business/service/impl/PushIngestAdapter.java |   18 ++++++++++--------
 1 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/battery-business/src/main/java/com/battery/business/service/impl/PushIngestAdapter.java b/battery-business/src/main/java/com/battery/business/service/impl/PushIngestAdapter.java
index 3feeb40..c4df7f2 100644
--- a/battery-business/src/main/java/com/battery/business/service/impl/PushIngestAdapter.java
+++ b/battery-business/src/main/java/com/battery/business/service/impl/PushIngestAdapter.java
@@ -17,6 +17,7 @@
 import com.alibaba.fastjson2.JSONObject;
 import com.battery.device.api.DeviceAdapter;
 import com.battery.device.api.DeviceAdapterException;
+import com.battery.device.api.StepDirectionResolver.Direction;
 import com.battery.device.api.TestDataObservationAdapter;
 import com.battery.device.api.model.AdapterCapabilities;
 import com.battery.device.api.model.ChannelIdentity;
@@ -439,23 +440,24 @@
      */
     private enum StepDirection
     {
-        CHARGE("charge", "充电"), DISCHARGE("discharge", "放电"), REST("rest", "搁置"), UNKNOWN(null, null);
+        CHARGE("charge", Direction.CHARGE), DISCHARGE("discharge", Direction.DISCHARGE),
+        REST("rest", Direction.REST), UNKNOWN(null, Direction.UNKNOWN);
 
         private final String label;
-        private final String displayName;
+        private final Direction direction;
 
-        StepDirection(String label, String displayName) { this.label = label; this.displayName = displayName; }
+        StepDirection(String label, Direction direction) { this.label = label; this.direction = direction; }
 
         /** 写进工步记录的类型:来源没给类型时交出的是判定出的方向名称,未知方向留空。 */
         String label() { return label; }
 
         /**
-         * 交出去的工步名称。这类来源的工步方案里只有「步_N」这种标号,没有描述性名称
-         * (2026-10-09 现场核对 .pcj:<Step StepLabel="步_1"> + CtrlTypeName=Rest/Current);
-         * 而甲方软件那一列「状态」显示的就是充电/放电/搁置——所以用同一套词当工步名称,
-         * 值同样来自电流符号判定,**不是设备给的名称**(现场清单与 ADR-0067 都记了这一条)。
+         * 交出去的工步名称:方向名称的词表与显示口径统一在 {@link Direction#displayName()}(甲方那一列的原词)。
+         * 这类来源的工步方案里只有「步_N」这种标号,没有描述性名称(2026-10-09 现场核对 .pcj:
+         * {@code <Step StepLabel="步_1">} + CtrlTypeName=Rest/Current),名称是按电流符号判定出来的,
+         * **不是设备给的名称**;方向未知时留空。
          */
-        String displayName() { return displayName; }
+        String displayName() { return direction.displayName(); }
 
         /** 该工步自身累计的单项值。搁置段实测两向都不增长,所以它的累计是 0 而不是缺失。 */
         BigDecimal own(BigDecimal charge, BigDecimal discharge)

--
Gitblit v1.7.1