diff --git a/src/components/FormModel.vue b/src/components/FormModel.vue index 5681ce11c..04ef13d45 100644 --- a/src/components/FormModel.vue +++ b/src/components/FormModel.vue @@ -247,6 +247,7 @@ async function saveAndGo() { } function reset() { + formData.value = JSON.parse(JSON.stringify(originalData.value)); updateAndEmit('onFetch', { val: originalData.value }); if ($props.observeFormChanges) { hasChanges.value = false; diff --git a/src/components/FormModelPopup.vue b/src/components/FormModelPopup.vue index 10bf8aae2..672eeff7a 100644 --- a/src/components/FormModelPopup.vue +++ b/src/components/FormModelPopup.vue @@ -27,12 +27,12 @@ const formModelRef = ref(null); const closeButton = ref(null); const isSaveAndContinue = ref(false); const onDataSaved = (formData, requestResponse) => { - if (closeButton.value && isSaveAndContinue.value) closeButton.value.click(); + if (closeButton.value && !isSaveAndContinue.value) closeButton.value.click(); emit('onDataSaved', formData, requestResponse); }; -const onClick = async () => { - isSaveAndContinue.value = true; +const onClick = async (saveAndContinue) => { + isSaveAndContinue.value = saveAndContinue; await formModelRef.value.save(); }; @@ -83,7 +83,7 @@ defineExpose({ :flat="showSaveAndContinueBtn" :label="t('globals.save')" :title="t('globals.save')" - @click="onClick" + @click="onClick(false)" color="primary" class="q-ml-sm" :disabled="isLoading" @@ -101,7 +101,7 @@ defineExpose({ :loading="isLoading" data-cy="FormModelPopup_isSaveAndContinue" z-max - @click="onClick" + @click="onClick(true)" /> diff --git a/src/pages/Zone/Card/ZoneBasicData.vue b/src/pages/Zone/Card/ZoneBasicData.vue index b38d2749b..03013f011 100644 --- a/src/pages/Zone/Card/ZoneBasicData.vue +++ b/src/pages/Zone/Card/ZoneBasicData.vue @@ -25,7 +25,7 @@ const setFilteredAddresses = (data) => { @on-fetch="(data) => (validAddresses = data)" /> - +