From 7835baa4f22d5ff39b95f5cb05aefc9d3ceb67ae Mon Sep 17 00:00:00 2001
From: yeg <1347747024@qq.com>
Date: 星期六, 05 九月 2026 11:45:35 +0800
Subject: [PATCH] 对齐测试控制台数据与实时状态
---
src/api/tests.ts | 38 ++++++++++++++++++++++----------------
1 files changed, 22 insertions(+), 16 deletions(-)
diff --git a/src/api/tests.ts b/src/api/tests.ts
index cb2a05e..eab6799 100644
--- a/src/api/tests.ts
+++ b/src/api/tests.ts
@@ -1,5 +1,6 @@
import type { ReceptionStatus, TestRecord, TestStatus } from '@/stores/tests'
import { getAuthToken, request, type ApiResponse } from './request'
+import { formatBusinessTime } from '@/utils/businessTime'
export type TestStatusCode = 'WAITING' | 'RUNNING' | 'PAUSED' | 'COMPLETED'
export type ReceptionStatusCode = 'NOT_STARTED' | 'RECEIVING' | 'PAUSED' | 'ENDED'
@@ -68,15 +69,15 @@
export interface TestConfigurationDetail extends TestConfigurationPayload {
testId: number
creatorId: number
- createTime?: string | null
- updateTime?: string | null
+ createTime?: number | null
+ updateTime?: number | null
creatorName: string | null
principalName: string | null
testTypeName: string | null
testStatus: TestStatusCode
receptionStatus: ReceptionStatusCode
- startedAtUtc?: string | null
- endedAtUtc?: string | null
+ startedAtUtc?: number | null
+ endedAtUtc?: number | null
/** 历史兼容字段;新接口不返回测试字段快照,字段从 batteries[].fields 读取。 */
fieldSnapshots?: Array<{
snapshotId: number
@@ -121,9 +122,9 @@
testStatus: TestStatusCode | null
receptionStatus: ReceptionStatusCode | null
batteryNo: string | null
- createTime: string | null
- startedAtUtc: string | null
- endedAtUtc: string | null
+ createTime: number | null
+ startedAtUtc: number | null
+ endedAtUtc: number | null
runtimeAttach?: boolean | null
remark: string | null
batteryCount: number | null
@@ -147,8 +148,8 @@
const receptionStatus = item.receptionStatus ? receptionStatusMap[item.receptionStatus] : '未知'
return {
id: item.testId, name: item.testName || '-', type: item.testTypeName || '-', batteryNo: item.batteryNo || '-', batteryGroup: '-',
- batteryCount: Number(item.batteryCount) || 0, createdAt: item.createTime || '-', startedAt: item.startedAtUtc || '-',
- endedAt: item.endedAtUtc || '-', purpose: item.testPurpose || '-', owner: item.principalName || '-',
+ batteryCount: Number(item.batteryCount) || 0, createdAt: formatBusinessTime(item.createTime), startedAt: formatBusinessTime(item.startedAtUtc),
+ endedAt: formatBusinessTime(item.endedAtUtc), purpose: item.testPurpose || '-', owner: item.principalName || '-',
remark: item.remark || '-', status, receptionStatus, editable: item.receptionStatus === 'NOT_STARTED',
}
}
@@ -217,7 +218,7 @@
latestSnapshot: {
source?: string
unit?: string
- observedAt?: string
+ observedAt?: number
sampleIntervalMs?: number
measurements?: Array<Record<string, unknown>>
units?: string[]
@@ -229,7 +230,7 @@
testId: number
testStatus: TestStatusCode
receptionStatus: ReceptionStatusCode
- updatedAt: string
+ updatedAt: number
sources: LiveSource[]
exceptions: Array<Record<string, unknown>>
testPlan?: BtsTestSnapshot | null
@@ -351,10 +352,12 @@
stepType?: string
sequenceId: number
cabinetSequenceId?: number | null
- recordedAt: string
- absoluteTime: string
- deviceTime?: string
- serverReceivedAt?: string
+ recordedAt?: number | null
+ absoluteTime?: number | null
+ deviceTime?: number | null
+ collectorDeviceTime?: number | null
+ captureSlot?: number | null
+ serverReceivedAt?: number | null
voltage: number | string | null
current: number | string | null
capacity: number | string | null
@@ -363,6 +366,8 @@
positivePotential?: number | string | null
negativePotential?: number | string | null
extensionMeasurementsJson?: string | Record<string, unknown> | null
+ sourceIdentity?: string
+ sourceRecordId?: string
deviceId: number
channelId: number
adapterId?: number
@@ -434,7 +439,8 @@
headers: token ? { Authorization: `Bearer ${token}`, Accept: 'text/event-stream' } : { Accept: 'text/event-stream' },
signal: controller.signal,
})
- if (!response.ok || !response.body) throw new Error(response.status === 401 ? '实时流权限不足' : `实时流连接失败(${response.status})`)
+ if (!response.ok || !response.body) throw new Error([401, 403].includes(response.status) ? '实时流权限不足' : `实时流连接失败(${response.status})`)
+ if (!response.headers.get('content-type')?.includes('text/event-stream')) throw new Error('实时流响应格式错误')
const reader = response.body.getReader()
const decoder = new TextDecoder()
let buffer = ''
--
Gitblit v1.7.1