From ab894b1d2351c079e080faa49b09960f1c875ce2 Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期一, 31 八月 2026 10:36:53 +0800
Subject: [PATCH] 接入检测结果查询页面
---
src/api/tests.ts | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 57 insertions(+), 0 deletions(-)
diff --git a/src/api/tests.ts b/src/api/tests.ts
index 47a3d1b..717d4e2 100644
--- a/src/api/tests.ts
+++ b/src/api/tests.ts
@@ -126,6 +126,63 @@
interface TestOptionsResponse extends ApiResponse { data: TestConfigurationOptions }
export interface TestListResult { total: number; rows: TestRecord[] }
+export interface HistoricalResultRecord {
+ resultId: number
+ sourceType: 'CABINET_CHANNEL' | 'COLLECTOR_CHANNEL' | string
+ testId: number
+ testName: string
+ testStatus: TestStatusCode
+ receptionStatus: ReceptionStatusCode
+ relationId: number
+ batteryNo: string
+ sourceId: number
+ sourceIdentity: string
+ intervalId: number
+ intervalStartAtUtc: string
+ intervalEndAtUtc: string | null
+ cycleNo: number | null
+ stepNo: number | null
+ stepType: string | null
+ workStatus: string | null
+ voltageV: number | null
+ currentA: number | null
+ capacityAh: number | null
+ energyWh: number | null
+ metricCode: string | null
+ metricValue: number | null
+ unit: string
+ unitMetadata: string
+ integrityConclusion: string
+ deviceTimeUtc: string
+ deviceTimeRaw: string
+ serverReceivedAtUtc: string
+}
+interface HistoricalResultResponse extends ApiResponse { total: number; rows: HistoricalResultRecord[] }
+
+export interface HistoricalResultQuery {
+ pageNum: number
+ pageSize: number
+ testId?: number
+ testName?: string
+ batteryNo?: string
+ sourceType?: string
+ sourceId?: number
+ sourceChannelCode?: string
+ beginDeviceTime?: string
+ endDeviceTime?: string
+ cycleNo?: number
+ stepNo?: number
+}
+
+export async function getHistoricalResultRecords(query: HistoricalResultQuery): Promise<{ total: number; rows: HistoricalResultRecord[] }> {
+ const params = new URLSearchParams()
+ Object.entries(query).forEach(([key, value]) => {
+ if (value !== undefined && value !== '' && value !== null) params.set(key, String(value))
+ })
+ const result = await request<HistoricalResultResponse>(`/system/test/results?${params.toString()}`)
+ return { total: Number(result.total) || 0, rows: result.rows || [] }
+}
+
const statusMap: Record<TestStatusCode, TestStatus> = {
WAITING: '待测试', RUNNING: '检测中', PAUSED: '暂停', RUNNING_ABNORMAL: '检测中(异常)',
COMPLETION_PENDING: '完成确认中', COMPLETED: '检测完成', TERMINATED: '已终止',
--
Gitblit v1.7.1