From 63e7c55b7d2f4a6834bdac0a78770c5bccb62b00 Mon Sep 17 00:00:00 2001 From: Jon Date: Tue, 15 Apr 2025 10:32:12 +0200 Subject: [PATCH] fix: fixed dated when clicking an indefinetely/range event and delete when partial exclusion --- .../Zone/Card/ZoneEventExclusionForm.vue | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/pages/Zone/Card/ZoneEventExclusionForm.vue b/src/pages/Zone/Card/ZoneEventExclusionForm.vue index 1a58a0001..89a6e02f8 100644 --- a/src/pages/Zone/Card/ZoneEventExclusionForm.vue +++ b/src/pages/Zone/Card/ZoneEventExclusionForm.vue @@ -130,8 +130,21 @@ const onSubmit = async () => { const deleteEvent = async () => { if (!props.event) return; - const exclusionId = props.event?.zoneExclusionFk || props.event?.id; - await axios.delete(`Zones/${route.params.id}/exclusions/${exclusionId}`); + if (!props.event.created) { + const filter = { + where: { + dated: dated.value, + }, + }; + const params = { filter: JSON.stringify(filter) }; + const { data: res } = await axios.get(`Zones/${route.params.id}/exclusions`, { + params, + }); + if (res) await axios.delete(`Zones/${route.params.id}/exclusions/${res[0].id}`); + } else { + const exclusionId = props.event?.zoneExclusionFk || props.event?.id; + await axios.delete(`Zones/${route.params.id}/exclusions/${exclusionId}`); + } await refetchEvents(); }; @@ -143,7 +156,7 @@ const refetchEvents = async () => { }; onMounted(() => { - if (props.event) { + if (props.event && props.event.dated) { dated.value = props.event?.dated; excludeType.value = props.eventType === 'geoExclusion' ? 'specificLocations' : 'all';