From fabd5af6b48efcf029919bb1cdb6ba471fcc2eb1 Mon Sep 17 00:00:00 2001
From: huangxz <huangxz@xiaopeng.com>
Date: 星期三, 12 八月 2026 12:20:15 +0800
Subject: [PATCH] fix(fence): 前端运营区重叠校验排除测试中围栏
---
src/views/businessOperations/geofenceManagement/detail.vue | 13 +++++++------
1 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/src/views/businessOperations/geofenceManagement/detail.vue b/src/views/businessOperations/geofenceManagement/detail.vue
index e43eec5..ec291b3 100644
--- a/src/views/businessOperations/geofenceManagement/detail.vue
+++ b/src/views/businessOperations/geofenceManagement/detail.vue
@@ -364,17 +364,17 @@
message.error('运营区域不允许自相交')
return
}
- const fenceArea = renderedPolygons.value.filter((item: any) => item.areaType === 1).find((item: any) => isPolygonIntersectOthers(fencePoints, item.points))
+ const fenceArea = renderedPolygons.value.filter((item: any) => item.areaType === 1 && item.areaStatus === 1).find((item: any) => isPolygonIntersectOthers(fencePoints, item.points))
if (fenceArea) {
message.error(`当前区域已有运营区,若需修改,请编辑${fenceArea.areaName}`)
return
}
- const fenceContained = renderedPolygons.value.filter((item: any) => item.areaType === 1).find((item: any) => isPolygonContained(fencePoints, item.points))
+ const fenceContained = renderedPolygons.value.filter((item: any) => item.areaType === 1 && item.areaStatus === 1).find((item: any) => isPolygonContained(fencePoints, item.points))
if (fenceContained) {
message.error(`当前区域已被${fenceContained.areaName}包含,若需修改,请编辑${fenceContained.areaName}`)
return
}
- const fenceContainOthers = renderedPolygons.value.filter((item: any) => item.areaType === 1).find((item: any) => isPolygonContainOthers(fencePoints, item.points))
+ const fenceContainOthers = renderedPolygons.value.filter((item: any) => item.areaType === 1 && item.areaStatus === 1).find((item: any) => isPolygonContainOthers(fencePoints, item.points))
if (fenceContainOthers) {
message.error(`当前区域包含${fenceContainOthers.areaName},若需修改,请编辑${fenceContainOthers.areaName}`)
}
@@ -1499,17 +1499,17 @@
message.error('运营区域不允许自相交')
return
}
- const fenceArea = renderedPolygons.value.filter((item: any) => item.areaType === 1).find((item: any) => isPolygonIntersectOthers(fencePoints, item.points))
+ const fenceArea = renderedPolygons.value.filter((item: any) => item.areaType === 1 && item.areaStatus === 1).find((item: any) => isPolygonIntersectOthers(fencePoints, item.points))
if (fenceArea) {
message.error(`当前区域已有运营区,若需修改,请编辑${fenceArea.areaName}`)
return
}
- const fenceContained = renderedPolygons.value.filter((item: any) => item.areaType === 1).find((item: any) => isPolygonContained(fencePoints, item.points))
+ const fenceContained = renderedPolygons.value.filter((item: any) => item.areaType === 1 && item.areaStatus === 1).find((item: any) => isPolygonContained(fencePoints, item.points))
if (fenceContained) {
message.error(`当前区域已被${fenceContained.areaName}包含,若需修改,请编辑${fenceContained.areaName}`)
return
}
- const fenceContainOthers = renderedPolygons.value.filter((item: any) => item.areaType === 1).find((item: any) => isPolygonContainOthers(fencePoints, item.points))
+ const fenceContainOthers = renderedPolygons.value.filter((item: any) => item.areaType === 1 && item.areaStatus === 1).find((item: any) => isPolygonContainOthers(fencePoints, item.points))
if (fenceContainOthers) {
message.error(`当前区域包含${fenceContainOthers.areaName},若需修改,请编辑${fenceContainOthers.areaName}`)
return
@@ -1856,6 +1856,7 @@
points,
areaType: item.areaType,
areaName: item.areaName,
+ areaStatus: Number(item.areaStatus),
})
}
})
--
Gitblit v1.7.1