diff --git a/src/api/detail.js b/src/api/detail.js index 2e84df8..9af2ed3 100644 --- a/src/api/detail.js +++ b/src/api/detail.js @@ -127,6 +127,14 @@ export const robotApi = { url: '/api/v1/events/getEtypeNameList', method: 'get', }) + }, + // 获取机器人任务列表 + getRobotTaskList: (params) => { + return service({ + url: '/api/v1/events/robotTask', + method: 'get', + params + }) } } diff --git a/src/views/RobotDetail.vue b/src/views/RobotDetail.vue index 97468db..b39ea6d 100644 --- a/src/views/RobotDetail.vue +++ b/src/views/RobotDetail.vue @@ -287,17 +287,17 @@ const envData = ref([ ]); // 任务列表数据 -const tasks = ref([ - { area: "A区设备巡检任务", time: "2025-05-01 12:30:50", status: "已完成", type: "completed" }, - { area: "B区监控压力巡检", time: "2025-05-01 12:30:00", status: "进行中", type: "running" }, - { area: "C区监控管压任务", time: "2025-05-01 12:30:50", status: "进行中", type: "running" }, - { area: "A区设备巡检任务", time: "2025-05-01 12:30:00", status: "已完成", type: "completed" }, - { area: "A区设备巡检任务", time: "2025-05-01 12:30:50", status: "已完成", type: "completed" }, - { area: "B区监控压力巡检", time: "2025-05-01 12:30:00", status: "进行中", type: "running" }, - { area: "C区监控管压任务", time: "2025-05-01 12:30:50", status: "进行中", type: "running" }, - { area: "A区设备巡检任务", time: "2025-05-01 12:30:00", status: "已完成", type: "completed" }, - { area: "D区待执行任务", time: "2025-05-02 09:00:00", status: "待执行", type: "pending" }, -]); +// const tasks = ref([ +// { area: "A区设备巡检任务", time: "2025-05-01 12:30:50", status: "已完成", type: "completed" }, +// { area: "B区监控压力巡检", time: "2025-05-01 12:30:00", status: "进行中", type: "running" }, +// { area: "C区监控管压任务", time: "2025-05-01 12:30:50", status: "进行中", type: "running" }, +// { area: "A区设备巡检任务", time: "2025-05-01 12:30:00", status: "已完成", type: "completed" }, +// { area: "A区设备巡检任务", time: "2025-05-01 12:30:50", status: "已完成", type: "completed" }, +// { area: "B区监控压力巡检", time: "2025-05-01 12:30:00", status: "进行中", type: "running" }, +// { area: "C区监控管压任务", time: "2025-05-01 12:30:50", status: "进行中", type: "running" }, +// { area: "A区设备巡检任务", time: "2025-05-01 12:30:00", status: "已完成", type: "completed" }, +// { area: "D区待执行任务", time: "2025-05-02 09:00:00", status: "待执行", type: "pending" }, +// ]); const taskCount = computed(() => tasks.value.length); // 摄像头数据 @@ -307,7 +307,31 @@ const taskCount = computed(() => tasks.value.length); // { title: "左前侧出口", image: "./img/pic3.png", active: false }, // { title: "后视角", image: "./img/pic4.png", active: false } // ]); +const tasks = ref([]); +// 获取任务列表的异步函数 +const fetchTasks = async (robotId) => { + try { + const res = await robotApi.getRobotTaskList({ robotId: robotId}); + if (res.code === 200 && Array.isArray(res.data)) { + // 适配后端字段到前端字段 + tasks.value = res.data.map(item => ({ + area: item.taskName || '', + time: item.times || '', + status: item.status === '0' ? '待执行' : '执行中', + type: item.status === '0' ? 'pending' : 'running' + })); + console.log("--------------------------------",tasks.value); + + } else { + tasks.value = []; + + } + } catch (error) { + tasks.value = []; + + } +}; // 摄像头控制函数 const handleFullscreen = () => { console.log("全屏显示"); @@ -1759,6 +1783,7 @@ const handleWebSocketMessage = (data) => { getDutyInfo(data.robotId); // 首次获取机器人详情 debouncedGetRobotDetail(data.robotId); + fetchTasks(robotInfo.value.robotId); } } @@ -1939,7 +1964,6 @@ const eventTypeOptions = ref(['全部告警']); // 页面加载时获取告警类型 onMounted(async () => { - // ... existing code ... try { // 获取告警类型 const res = await robotApi.getEventTypes(); @@ -1949,7 +1973,7 @@ onMounted(async () => { } catch (e) { console.error('获取告警类型失败', e); } - // ... existing code ... + }); @@ -2313,7 +2337,8 @@ onMounted(async () => { display: flex; flex-direction: column; gap: 15px; - position: relative; + position: relative; + } .camera-title { font-size: 14px;