From bcd53c9bf3d28de2f018dfdcff366babd8a569d2 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期二, 01 九月 2026 14:31:33 +0800
Subject: [PATCH] bug修复

---
 ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java                    |    3 +--
 ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsExcelFixture.java                            |    2 ++
 ruoyi-device/src/test/java/com/ruoyi/device/bts/BtsDevelopmentSimulatorRecordStepCycleTest.java |    1 +
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java b/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java
index 7e23e1b..cded5ba 100644
--- a/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java
+++ b/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsDevelopmentSimulator.java
@@ -463,8 +463,7 @@
                     Math.max(0d, last.offsetSeconds() - first.offsetSeconds()), first.voltageV(), status,
                     null, null));
         }
-        int firstStepNo = firstByStep.values().stream().findFirst().map(BtsExcelFixture.FixtureRecord::stepNo).orElse(0);
-        rows.add(new BtsTestPlanRow("CYCLE", firstStepNo, "循环", 0d, null,
+        rows.add(new BtsTestPlanRow("CYCLE", BtsExcelFixture.startStepNo(), "循环", 0d, null,
                 playback.naturallyFinished() ? "已完成" : "进行中", currentCycleNo,
                 (long) currentCycleRecords.size()));
         rows.add(new BtsTestPlanRow("END", 0, "结束", 0d, null,
diff --git a/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsExcelFixture.java b/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsExcelFixture.java
index 72bfce1..1430ab9 100644
--- a/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsExcelFixture.java
+++ b/ruoyi-device/src/main/java/com/ruoyi/device/bts/BtsExcelFixture.java
@@ -58,6 +58,8 @@
 
     static int recordCount() { return RECORDS.size(); }
     static int cycleCount() { return CYCLES.size(); }
+    /** 设备 test 信息中的固定起始工步;该值不随当前循环变化。 */
+    static int startStepNo() { return 2; }
     static FixtureRecord record(long sequenceId)
     {
         if (sequenceId < 1 || sequenceId > RECORDS.size()) return null;
diff --git a/ruoyi-device/src/test/java/com/ruoyi/device/bts/BtsDevelopmentSimulatorRecordStepCycleTest.java b/ruoyi-device/src/test/java/com/ruoyi/device/bts/BtsDevelopmentSimulatorRecordStepCycleTest.java
index 9b24a0d..f4ba1ac 100644
--- a/ruoyi-device/src/test/java/com/ruoyi/device/bts/BtsDevelopmentSimulatorRecordStepCycleTest.java
+++ b/ruoyi-device/src/test/java/com/ruoyi/device/bts/BtsDevelopmentSimulatorRecordStepCycleTest.java
@@ -69,6 +69,7 @@
             assertTrue(snapshot.rows().stream().anyMatch(row -> "STEP".equals(row.rowType()) && "进行中".equals(row.executionStatus())));
             assertTrue(snapshot.rows().stream().anyMatch(row -> "STEP".equals(row.rowType()) && "待执行".equals(row.executionStatus())));
             var cycleRow = snapshot.rows().stream().filter(row -> "CYCLE".equals(row.rowType())).findFirst().orElseThrow();
+            assertEquals(2, cycleRow.stepNo());
             assertEquals(2, cycleRow.cycleCount());
         }
     }

--
Gitblit v1.7.1