-
} disabled={!points.length} onClick={() => setFollow((value) => !value)}>{follow ? '跟随车辆' : '自由浏览'}
-
:
} disabled={!track?.stops.length} onClick={() => setShowStops((value) => !value)}>停留点
-
} disabled={!track?.points.length} onClick={() => track && downloadTrackCsv(track)}>导出
+
+ } disabled={!points.length} onClick={() => setFollow((value) => !value)}>{follow ? '跟随车辆' : '自由浏览'}
+ : } disabled={!track?.stops.length} onClick={() => setShowStops((value) => !value)}>停留点
+ } disabled={!track?.points.length} onClick={() => track && downloadTrackCsv(track)}>导出
{track?.points.length ? <>
-
- {track.coverage.complete ? '时间窗完整' : '仅展示最新切片'}{track.coverage.evidence}
- {track.coverage.processedPoints.toLocaleString('zh-CN')} 有效点 → {track.coverage.returnedPoints.toLocaleString('zh-CN')} 地图点
-
-
- 速度{number(current?.speedKmh ?? 0)} km/h方向{direction(current?.directionDeg)}SOC{current?.socAvailable ? `${number(current.socPercent)}%` : '—'}
+ {number(progress, 0)}%} />
+ 速度{number(current?.speedKmh ?? 0)} km/h方向{direction(current?.directionDeg)}SOC{current?.socAvailable ? `${number(current.socPercent)}%` : '—'}
+ {current?.protocol || '未知来源'}总里程 {number(current?.totalMileageKm ?? 0)} km{alarm(current?.alarmFlag)}
+
+ {track.coverage.complete ? '时间窗完整' : '仅展示最新切片'}{track.coverage.evidence}
+ {track.coverage.processedPoints.toLocaleString('zh-CN')} → {track.coverage.returnedPoints.toLocaleString('zh-CN')} 点
+
{playing ? '播放中,暂停地址解析' : addressSettling ? '位置已变化,等待地址解析…' : addressQuery.isFetching ? '地址解析中…' : addressQuery.data?.formattedAddress || `${current?.longitude.toFixed(6)}, ${current?.latitude.toFixed(6)}`}
> :
} title="先选择车辆,再开始轨迹回放" description="地图会显示完整路径、停留点、事件点和播放位置。">} onClick={() => setRailCollapsed(false)}>选择车辆}
@@ -417,7 +420,6 @@ export default function TrackPage() {
} onClick={() => selectIndex(0)} disabled={!boundedIndex} />
-