From 90b6d6768ebeebc44863850289a4696203a0cda9 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期三, 09 九月 2026 12:25:33 +0800
Subject: [PATCH] 按三类数据分别保存工作簿导入修订

---
 ruoyi-admin/src/test/java/com/battery/business/web/ConsoleWorkbookImportMysqlTest.java |   30 +++++++++++++++---------------
 1 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/ruoyi-admin/src/test/java/com/battery/business/web/ConsoleWorkbookImportMysqlTest.java b/ruoyi-admin/src/test/java/com/battery/business/web/ConsoleWorkbookImportMysqlTest.java
index 08efa77..99ebdc8 100644
--- a/ruoyi-admin/src/test/java/com/battery/business/web/ConsoleWorkbookImportMysqlTest.java
+++ b/ruoyi-admin/src/test/java/com/battery/business/web/ConsoleWorkbookImportMysqlTest.java
@@ -102,20 +102,20 @@
                 var firstRecord = json.readTree(json.writeValueAsString(controller.persistedRecords(1L))).get("data").get(7604);
                 assertEquals(1683517331000L, firstRecord.get("deviceTime").longValue());
                 var actions = service.selectActions(new TTestDataRevisionAction());
-                assertEquals(1, actions.size());
-                var revision = service.selectActionById(actions.get(0).getActionId());
-                assertEquals(imported.get("actionId"), revision.getActionId());
-                assertEquals("三 Sheet 共用原因", revision.getReason());
-                assertEquals(7767L, revision.getAffectedRecordCount());
-                assertNull(revision.getIdentitySummary());
-                assertNull(revision.getChangesSummary());
-                assertNull(revision.getBeforeContentJson());
-                // 页面仅返回摘要;仍从数据库原文验证三类审计完整保存。
-                var changes = JSON.parseArray(jdbc.queryForObject("select cast(changes_summary as char) from t_test_data_revision_action where action_id=?", String.class, revision.getActionId()));
-                assertEquals(7767, changes.size());
-                assertEquals("REALTIME", changes.getJSONObject(0).getString("dataType"));
-                assertEquals("STEP", changes.getJSONObject(7605).getString("dataType"));
-                assertEquals("CYCLE", changes.getJSONObject(7734).getString("dataType"));
+                assertEquals(3, actions.size());
+                assertEquals(3, ((List<?>) imported.get("actionIds")).size());
+                for (var item : actions) {
+                    var revision = service.selectActionById(item.getActionId());
+                    assertEquals("三 Sheet 共用原因", revision.getReason());
+                    int expected = switch (revision.getDataType()) { case "REALTIME" -> 7605; case "STEP" -> 129; default -> 33; };
+                    assertEquals((long) expected, revision.getAffectedRecordCount());
+                    assertNull(revision.getIdentitySummary());
+                    assertNull(revision.getChangesSummary());
+                    assertNull(revision.getBeforeContentJson());
+                    // 页面只返回各类摘要,数据库仍保留该类全部导入明细。
+                    var changes = JSON.parseArray(jdbc.queryForObject("select cast(changes_summary as char) from t_test_data_revision_action where action_id=?", String.class, revision.getActionId()));
+                    assertEquals(expected, changes.size());
+                }
                 for (String type : sheets.keySet()) {
                     var query = new TTestDataRevisionAction(); query.setTestId(1L); query.setDataType(type);
                     assertEquals(1, service.selectActions(query).size());
@@ -124,7 +124,7 @@
                 assertEquals(0, retry.get("importedCount")); assertEquals(7767, retry.get("skippedCount")); assertNull(retry.get("actionId"));
                 sheets.get("CYCLE").get(32).put("dischargeCapacity", 99);
                 assertThrows(RuntimeException.class, () -> submit(controller, sheets));
-                assertEquals(1, service.selectActions(new TTestDataRevisionAction()).size());
+                assertEquals(3, service.selectActions(new TTestDataRevisionAction()).size());
                 assertTrue(mapper.selectWarningExceptions(1L, null).isEmpty());
                 assertEquals("COMPLETED", mapper.selectTestById(1L).getTestStatus());
                 assertEquals("ENDED", mapper.selectTestById(1L).getReceptionStatus());

--
Gitblit v1.7.1