From 871a82eee5391e95dd3770b363410f1459f65da1 Mon Sep 17 00:00:00 2001 From: Mono Mono Date: Sat, 11 Jan 2025 15:44:07 -0500 Subject: [PATCH] #84 refactor(front): moved to api createCustomer. --- .../src/components/CreateCustomerModal.vue | 27 ++++++------------- .../frontend/don-confiao/src/services/api.js | 4 +++ .../don-confiao/src/services/django-api.js | 7 +++-- 3 files changed, 17 insertions(+), 21 deletions(-) diff --git a/tienda_ilusion/don_confiao/frontend/don-confiao/src/components/CreateCustomerModal.vue b/tienda_ilusion/don_confiao/frontend/don-confiao/src/components/CreateCustomerModal.vue index c3eb3b2..219270c 100644 --- a/tienda_ilusion/don_confiao/frontend/don-confiao/src/components/CreateCustomerModal.vue +++ b/tienda_ilusion/don_confiao/frontend/don-confiao/src/components/CreateCustomerModal.vue @@ -45,6 +45,7 @@ data() { return { showModal: false, + api: inject('api'), valid: false, customer: { name: '', @@ -72,25 +73,13 @@ async submitForm() { console.log(this.customer) if (this.$refs.form.validate()) { - try { - const response = await fetch('/don_confiao/api/customers/', { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify(this.customer), - }); - if (response.ok) { - const data = await response.json(); - console.log('Cliente Guardado:', data); - this.$emit('customerCreated', data); - this.closeModal(); - } else { - console.error('Error al Crear el Cliente:', response.statusText); - } - } catch (error) { - console.error('Error de red:', error); - } + this.api.createCustomer(this.customer) + .then(data => { + console.log('Cliente Guardado:', data); + this.$emit('customerCreated', data); + this.closeModal(); + }) + .catch(error => console.error('Error:', error)); } }, resetForm() { diff --git a/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/api.js b/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/api.js index 051535a..4f58d7a 100644 --- a/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/api.js +++ b/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/api.js @@ -30,6 +30,10 @@ class Api { createReconciliationJar(reconciliation) { return this.apiImplementation.createReconciliationJar(reconciliation); } + + createCustomer(customer) { + return this.apiImplementation.createCustomer(customer); + } } export default Api; diff --git a/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/django-api.js b/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/django-api.js index f2eed31..472af2f 100644 --- a/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/django-api.js +++ b/tienda_ilusion/don_confiao/frontend/don-confiao/src/services/django-api.js @@ -34,6 +34,11 @@ class DjangoApi { return this.postRequest(url, reconciliation); } + createCustomer(customer) { + const url = '/don_confiao/api/customers/'; + return this.postRequest(url, customer); + } + getRequest(url) { return new Promise ((resolve, reject) => { fetch(url) @@ -45,8 +50,6 @@ class DjangoApi { reject(error); }); }); - - } postRequest(url, content) {