修复实时监控界面 实时更新地图

This commit is contained in:
mmc
2026-09-21 16:17:53 +08:00
parent 5f24e37b78
commit 300e2c221d

View File

@@ -368,16 +368,19 @@ const RealTimeMonitorPage = () => {
const lat = rt.lat;
//if (!isFinite(lon) || !isFinite(lat) || (lon === 0 && lat === 0)) return d;
return {
...d,
longitude: lon,
latitude: lat,
heading: rt.yaw,
batteryLevel: rt.battery,
feStatus: rt.status,
taskId: rt.taskId,
updateTime: rt.updateTime || d.updateTime,
raw: { ...(d.raw || d), heading: rt.yaw, batteryLevel: rt.b, longitude: lon, latitude: lat },
};
...d,
longitude: lon,
latitude: lat,
heading: rt.yaw,
batteryLevel: rt.battery,
feStatus: rt.status,
taskId: rt.taskId,
updateTime: rt.updateTime || d.updateTime,
// 同步写入 locationMessage / lastRunningStatus,确保 Map.jsx 设备渲染 useEffect 能读到实时坐标
locationMessage: { longitude: lon, latitude: lat, heading: rt.yaw, batteryLevel: rt.battery },
lastRunningStatus: { longitude: lon, latitude: lat, heading: rt.yaw, batteryLevel: rt.battery },
raw: { ...(d.raw || d), heading: rt.yaw, batteryLevel: rt.b, longitude: lon, latitude: lat },
};
});
}, [devices, realtimeMap]);
@@ -408,6 +411,9 @@ const RealTimeMonitorPage = () => {
feStatus: rt.feStatus,
taskId: rt.t,
isRealtimeOnly: true,
// 同步写入 locationMessage / lastRunningStatus,确保 Map.jsx 设备渲染 useEffect 能读到实时坐标
locationMessage: { longitude: rt.lng, latitude: rt.lat, heading: rt.yaw, batteryLevel: rt.battery },
lastRunningStatus: { longitude: rt.lng, latitude: rt.lat, heading: rt.yaw, batteryLevel: rt.battery },
raw: { ...rt },
}));
const all = [...base, ...extras];
@@ -989,7 +995,7 @@ const RealTimeMonitorPage = () => {
{t('devices.offline')}
</Space>
</div>*/}
{runningPoolTask && (
{/*{runningPoolTask && (
<div style={{ background: excuteStatus === 'running' ? 'rgba(82,196,26,0.95)' : 'rgba(250,173,20,0.95)', color: 'white', padding: '8px 12px', borderRadius: 8, fontSize: 12, backdropFilter: 'blur(4px)', maxWidth: 280 }}>
<div style={{ fontWeight: 600, marginBottom: 4, display: 'flex', alignItems: 'center', gap: 6 }}>
{excuteStatus === 'running' ? <PlayCircleOutlined spin /> : <PauseCircleOutlined />}
@@ -999,7 +1005,7 @@ const RealTimeMonitorPage = () => {
{runningPoolTask.planName || runningPoolTask.planId || runningPoolTask.id}
</div>
</div>
)}
)}*/}
</div>
</div>