diff --git a/src/components/FormModel.vue b/src/components/FormModel.vue index 1345ec955..de614ea95 100644 --- a/src/components/FormModel.vue +++ b/src/components/FormModel.vue @@ -61,7 +61,7 @@ const $props = defineProps({ } }); -const emit = defineEmits(['onFetch']); +const emit = defineEmits(['onFetch', 'onDataSaved']); defineExpose({ save, @@ -89,7 +89,7 @@ const isLoading = ref(false); // Si elegimos observar los cambios del form significa que inicialmente las actions estaran deshabilitadas const isResetting = ref(false); const hasChanges = ref(!$props.observeFormChanges); -const originalData = ref({...$props.formInitialData}); +const originalData = ref({ ...$props.formInitialData }); const formData = computed(() => state.get($props.model)); const formUrl = computed(() => $props.url); @@ -122,7 +122,7 @@ async function fetch() { } async function save() { - if (!hasChanges.value) { + if ($props.observeFormChanges && !hasChanges.value) { notify('globals.noChanges', 'negative'); return; } @@ -136,6 +136,7 @@ async function save() { } else { await axios.patch($props.urlUpdate || $props.url, body); } + emit('onDataSaved', formData.value); } catch (err) { notify('errors.create', 'negative'); } diff --git a/src/components/common/VnSelectCreate.vue b/src/components/common/VnSelectCreate.vue new file mode 100644 index 000000000..b01bb365f --- /dev/null +++ b/src/components/common/VnSelectCreate.vue @@ -0,0 +1,71 @@ + + + + + diff --git a/src/components/common/VnSelectFilter.vue b/src/components/common/VnSelectFilter.vue index 568da613f..a0605bbae 100644 --- a/src/components/common/VnSelectFilter.vue +++ b/src/components/common/VnSelectFilter.vue @@ -1,5 +1,5 @@ + + + + + + +es: + Comercial name: Nombre comercial + Salesperson: Comercial + Business type: Tipo de negocio + Tax number: NIF / CIF + Business name: Razón social + Street: Dirección fiscal + Postcode: Código postal + City: Población + Province: Provincia + Country: País + Web user: Usuario web + Email: Email + Is equalizated: Recargo de equivalencia + diff --git a/src/pages/Customer/CustomerCreateNewPostcode.vue b/src/pages/Customer/CustomerCreateNewPostcode.vue new file mode 100644 index 000000000..10f3b7d2f --- /dev/null +++ b/src/pages/Customer/CustomerCreateNewPostcode.vue @@ -0,0 +1,143 @@ + + + + + + + +es: + New postcode: Nuevo código postal + Please, ensure you put the correct data!: ¡Por favor, asegúrese de poner los datos correctos! + City: Ciudad + Province: Provincia + Country: País + diff --git a/src/pages/Customer/CustomerList.vue b/src/pages/Customer/CustomerList.vue index 7e37bb88a..540afcc4c 100644 --- a/src/pages/Customer/CustomerList.vue +++ b/src/pages/Customer/CustomerList.vue @@ -28,25 +28,29 @@ function viewSummary(id) { }, }); } + +const redirectToCreateView = () => { + router.push({ name: 'CustomerCreate' }); +};