diff --git a/web/src/views/HandDevice/Home/components/services/popup.service.ts b/web/src/views/HandDevice/Home/components/services/popup.service.ts index 3efa8a1..0719f22 100644 --- a/web/src/views/HandDevice/Home/components/services/popup.service.ts +++ b/web/src/views/HandDevice/Home/components/services/popup.service.ts @@ -39,11 +39,10 @@ export class PopupService { * 处理单个标记弹窗 */ handleSingleMarkerPopup(markerData: MarkerData): string { - const statusStr = markerData.statusStr || 'normal' return `
${markerData.name}
-
- 状态: ${getStatusLabel(statusStr)} +
+ 状态: ${markerData.statusLabel}
在线状态: ${getLabelWithTypeValue('onlineStatus', markerData.onlineStatus)}
diff --git a/web/src/views/HandDevice/Home/components/services/trajectory.service.ts b/web/src/views/HandDevice/Home/components/services/trajectory.service.ts index 5cb7711..c4dce18 100644 --- a/web/src/views/HandDevice/Home/components/services/trajectory.service.ts +++ b/web/src/views/HandDevice/Home/components/services/trajectory.service.ts @@ -66,16 +66,16 @@ export class TrajectoryService { if (pointData) { // 将点数据构造为MarkerData格式以使用现有的状态计算函数 - const markerData = { - id: -1, - coordinates: [0, 0] as [number, number], - name: '', + const markerStatusData = { + // id: -1, + // coordinates: [0, 0] as [number, number], + // name: '', gasStatus: pointData.gasStatus || '0', batteryStatus: pointData.batteryStatus || '0', fenceStatus: pointData.fenceStatus || '0', onlineStatus: pointData.onlineStatus || '1' } - const status = getHighestPriorityStatus(markerData) + const status = getHighestPriorityStatus(markerStatusData) color = getStatusColor(status) } @@ -230,6 +230,7 @@ export class TrajectoryService { let closestPoint: TrajectoryPoint | null = null let minDiff = Infinity + //TODO: 这里可以优化:按秒级取最近点,而不是遍历所有点 trajectory.points.forEach((point) => { if (point.timestamp <= timestamp) { const diff = Math.abs(point.timestamp - timestamp)