From c8b456adb37f65b3c08a5ee1e84c45eedb641c89 Mon Sep 17 00:00:00 2001
From: yyy <2605810609@qq.com>
Date: Tue, 8 Apr 2025 10:02:40 +0800
Subject: [PATCH] =?UTF-8?q?=E7=BC=96=E8=BE=91=E5=9C=B0=E5=9B=BE=20?=
=?UTF-8?q?=E6=89=B9=E9=87=8F=E5=88=A0=E9=99=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/views/mapPage/realTimeMap/editMap.vue | 50 +++++++++++++++++++----
1 file changed, 41 insertions(+), 9 deletions(-)
diff --git a/src/views/mapPage/realTimeMap/editMap.vue b/src/views/mapPage/realTimeMap/editMap.vue
index d7587183..1a6d4211 100644
--- a/src/views/mapPage/realTimeMap/editMap.vue
+++ b/src/views/mapPage/realTimeMap/editMap.vue
@@ -244,7 +244,8 @@
(toolbarSwitchType === 'createLineLibrary' ||
toolbarSwitchType === 'createRegion' ||
toolbarSwitchType === 'drawRoute' ||
- toolbarSwitchType === 'generateLine'))
+ toolbarSwitchType === 'generateLine' ||
+ toolbarSwitchType === 'bulkDelete'))
"
>
@@ -1238,6 +1240,12 @@ const state = reactive({
name: '生成直线',
icon: 'ep:finished',
isActive: false
+ },
+ {
+ switchType: 'bulkDelete',
+ name: '批量删除',
+ icon: 'ep:delete',
+ isActive: false
}
],
isShowToolbar: false, //工具栏展示隐藏
@@ -1369,7 +1377,8 @@ const toolbarClick = async (item) => {
toolbarSwitchType.value === 'clickDrawRoute' ||
toolbarSwitchType.value === 'drawRoute' ||
toolbarSwitchType.value === 'createLineLibrary' ||
- toolbarSwitchType.value === 'createRegion'
+ toolbarSwitchType.value === 'createRegion' ||
+ toolbarSwitchType.value === 'bulkDelete'
) {
state.prohibitedOperation = true
} else {
@@ -1776,7 +1785,8 @@ const startDrawSelection = (event) => {
toolbarSwitchType.value === 'createLineLibrary' ||
toolbarSwitchType.value === 'createRegion' ||
toolbarSwitchType.value === 'drawRoute' ||
- toolbarSwitchType.value == 'generateLine'
+ toolbarSwitchType.value == 'generateLine' ||
+ toolbarSwitchType.value === 'bulkDelete'
) {
const backgroundRect = mapBackgroundRef.value.getBoundingClientRect()
@@ -1798,7 +1808,8 @@ const updateDrawSelection = (event) => {
toolbarSwitchType.value === 'createLineLibrary' ||
toolbarSwitchType.value === 'createRegion' ||
toolbarSwitchType.value === 'drawRoute' ||
- toolbarSwitchType.value === 'generateLine'
+ toolbarSwitchType.value === 'generateLine' ||
+ toolbarSwitchType.value === 'bulkDelete'
) {
if (state.drawSelectionAreaShow) {
const x = disposeEventPoints(event).x
@@ -1831,7 +1842,8 @@ const endDrawSelection = (event) => {
toolbarSwitchType.value === 'createLineLibrary' ||
toolbarSwitchType.value === 'createRegion' ||
toolbarSwitchType.value === 'drawRoute' ||
- toolbarSwitchType.value === 'generateLine'
+ toolbarSwitchType.value === 'generateLine' ||
+ toolbarSwitchType.value === 'bulkDelete'
) {
state.drawSelectionAreaShow = false
state.allDrawSelectionAreaBox.push({ ...state.drawSelectionAreaBox })
@@ -1971,10 +1983,11 @@ const clickDrawSelectionArea = () => {
state.drawSelectionPointList = deduplicateArrayById(state.drawSelectionPointList)
//只要库位的
let binLocation = state.drawSelectionPointList.filter((item) => item.type === 2)
- //只要路径点的
- // let routeList = state.drawSelectionPointList.filter((item) => item.type === 1)
+ //所以类型的
let routeList = state.drawSelectionPointList
+ console.log(routeList)
+
let isHaveId = binLocation.every((item) => {
item.id
})
@@ -2082,6 +2095,25 @@ const clickDrawSelectionArea = () => {
}
GenerateStraightLinesDialogRef.value.open(routeList)
}
+ //批量删除
+ if (toolbarSwitchType.value === 'bulkDelete') {
+ if (routeList.length < 1) {
+ message.warning('至少选择一个点')
+ return
+ }
+ //删除的节点id合集
+ const routeIds = routeList.map((route) => route.id)
+ //在数组中去除这些节点
+ state.allMapPointInfo = state.allMapPointInfo.filter((item) => {
+ return !routeIds.includes(item.id)
+ })
+ //将路线中的删除
+ state.mapRouteList = state.mapRouteList.filter((item) => {
+ return !routeIds.includes(item.startingPointId) && !routeIds.includes(item.endPointId)
+ })
+ state.currentItemIndex = -1
+ addEditHistory()
+ }
}
//生成直线 选择完成开始点和结束点
const GenerateStraightLinesSubmit = (pointList, form) => {