From bcb1b2954bd942118ec284632c190c304ec93a12 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期四, 27 八月 2026 20:57:18 +0800
Subject: [PATCH] fix(test): keep configuration facts authoritative

---
 src/api/tests.ts |   17 ++++++++---------
 1 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/src/api/tests.ts b/src/api/tests.ts
index d0e58ff..8e0af96 100644
--- a/src/api/tests.ts
+++ b/src/api/tests.ts
@@ -93,7 +93,6 @@
 interface TestListResponse extends ApiResponse { total: number; rows: TestDto[] }
 interface TestDetailResponse extends ApiResponse { data: TestConfigurationDetail }
 interface TestOptionsResponse extends ApiResponse { data: TestConfigurationOptions }
-interface TestIdentifierResponse extends ApiResponse { data: number }
 export interface TestListResult { total: number; rows: TestRecord[] }
 
 const statusMap: Record<TestStatusCode, TestStatus> = {
@@ -106,14 +105,14 @@
 }
 
 function mapTest(item: TestDto): TestRecord {
-  const testStatus = item.testStatus || 'WAITING'
-  const monitoringStatus = item.monitoringStatus || 'NOT_MONITORED'
+  const testStatus = item.testStatus ? statusMap[item.testStatus] : '未知'
+  const monitoringStatus = item.monitoringStatus ? monitoringStatusMap[item.monitoringStatus] : '未知'
   return {
     id: item.testId, name: item.testName || '-', type: item.testTypeName || '-', batteryNo: '-', batteryGroup: '-',
     batteryCount: Number(item.batteryCount) || 0, createdAt: item.createTime || '-', startedAt: item.startedAtUtc || '-',
     endedAt: item.endedAtUtc || '-', purpose: item.testPurpose || '-', owner: item.principalName || '-',
-    remark: item.remark || '-', status: statusMap[testStatus], monitoringStatus: monitoringStatusMap[monitoringStatus],
-    editable: monitoringStatus === 'NOT_MONITORED',
+    remark: item.remark || '-', status: testStatus, monitoringStatus,
+    editable: item.monitoringStatus === 'NOT_MONITORED',
   }
 }
 
@@ -133,9 +132,9 @@
 export async function getTestDetail(testId: number): Promise<TestConfigurationDetail> {
   return (await request<TestDetailResponse>(`/system/test/${testId}`)).data
 }
-export async function createTest(payload: TestConfigurationPayload): Promise<number> {
-  return (await request<TestIdentifierResponse>('/system/test', { method: 'POST', body: JSON.stringify(payload) })).data
+export async function createTest(payload: TestConfigurationPayload): Promise<TestConfigurationDetail> {
+  return (await request<TestDetailResponse>('/system/test', { method: 'POST', body: JSON.stringify(payload) })).data
 }
-export async function updateTest(payload: TestConfigurationPayload & { testId: number }): Promise<void> {
-  await request<ApiResponse>('/system/test', { method: 'PUT', body: JSON.stringify(payload) })
+export async function updateTest(payload: TestConfigurationPayload & { testId: number }): Promise<TestConfigurationDetail> {
+  return (await request<TestDetailResponse>('/system/test', { method: 'PUT', body: JSON.stringify(payload) })).data
 }

--
Gitblit v1.7.1