From 67571b27d78c69de8716d8c83f8ca745258af2f4 Mon Sep 17 00:00:00 2001 From: xhf <1424913779@qq.com> Date: Mon, 31 Mar 2025 15:51:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A2=91=E9=97=AA=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/infra/file/index.ts | 2 +- src/components/UploadFile/src/useUpload.ts | 4 +- .../realTimeMap/components/indexPage.vue | 46 +++++++++++++++---- 3 files changed, 40 insertions(+), 12 deletions(-) diff --git a/src/api/infra/file/index.ts b/src/api/infra/file/index.ts index 0e1b2e7c..e3362156 100644 --- a/src/api/infra/file/index.ts +++ b/src/api/infra/file/index.ts @@ -41,5 +41,5 @@ export const createFile = (data: any) => { // 上传文件 export const updateFile = (data: any) => { - return request.upload({ url: '/infra/file/upload', data }) + return request.upload({ url: '/infra/file/businessUploadFile', data }) } diff --git a/src/components/UploadFile/src/useUpload.ts b/src/components/UploadFile/src/useUpload.ts index 2981e12d..e63705e2 100644 --- a/src/components/UploadFile/src/useUpload.ts +++ b/src/components/UploadFile/src/useUpload.ts @@ -7,8 +7,10 @@ import axios from 'axios' * 获得上传 URL */ export const getUploadUrl = (): string => { - return import.meta.env.VITE_BASE_URL + import.meta.env.VITE_API_URL + '/infra/file/upload' + // return import.meta.env.VITE_BASE_URL + import.meta.env.VITE_API_URL + '/infra/file/upload' + return import.meta.env.VITE_BASE_URL + import.meta.env.VITE_API_URL + '/infra/file/businessUploadFile' } + export const useUpload = () => { // 后端上传地址 diff --git a/src/views/mapPage/realTimeMap/components/indexPage.vue b/src/views/mapPage/realTimeMap/components/indexPage.vue index 9d9a0f0c..30eda53b 100644 --- a/src/views/mapPage/realTimeMap/components/indexPage.vue +++ b/src/views/mapPage/realTimeMap/components/indexPage.vue @@ -763,16 +763,10 @@ const linkWebSocket = (url) => { data: JSON.parse(data[key]) }) } - console.log('=====',data) - dataList.forEach((item) => { - // console.log('=====', item.data.pose2d.robotNo) - if(item.data.pose2d.robotNo == "zn002" ){ - console.log(item) - console.log('x',item.data.pose2d.x) - console.log('y',item.data.pose2d.y) - } - }) - testCarList.value = dataList + console.log('=====',dataList) + + // testCarList.value = JSON.parse(JSON.stringify(dataList)) + testCarList.value = mergeCarArrays(testCarList.value, dataList) computedRatio() } //告警信息 @@ -820,6 +814,38 @@ const linkWebSocket = (url) => { }) } } +const mergeCarArrays =(arr1, arr2) => { + const result = []; + const macAddressSet = new Set(); + // 先处理第一个数组中原本就有的元素,进行更新或保留 + for (const item1 of arr1) { + const macAddress1 = item1.macAddress; + macAddressSet.add(macAddress1); + let foundInSecond = false; + for (const item2 of arr2) { + const macAddress2 = item2.macAddress; + if (macAddress1 === macAddress2) { + foundInSecond = true; + // 更新pose2d信息 + item1.data.pose2d = item2.data.pose2d; + result.push(item1); + break; + } + } + if (!foundInSecond) { + // 如果没在第二个数组中找到,就不添加到结果中,相当于删除 + continue; + } + } + // 再处理第二个数组中存在但第一个数组中不存在的元素,添加到结果中 + for (const item2 of arr2) { + const macAddress2 = item2.macAddress; + if (!macAddressSet.has(macAddress2)) { + result.push(item2); + } + } + return result; +} const setIsSelect = (arr1, arr2) => { for (let i = 0; i < arr1.length; i++) { const element = arr1[i]