From 2bfcf59f3eafe80308fdf330f574b8f1a8bd8575 Mon Sep 17 00:00:00 2001 From: ale Date: Tue, 27 May 2025 18:14:00 -0300 Subject: [PATCH] Eliminada store de barrio, logica de pedidos existentes pasada a pedido select y datos de grupo de compra pasados a store de pedido --- resources/js/components/comunes/NavBar.vue | 4 +- resources/js/components/pedidos/Chismosa.vue | 4 +- .../js/components/pedidos/PedidoSelect.vue | 20 ++++++--- resources/js/store/index.js | 2 - resources/js/store/modules/barrio.js | 45 ------------------- resources/js/store/modules/pedido.js | 9 +++- 6 files changed, 26 insertions(+), 58 deletions(-) delete mode 100644 resources/js/store/modules/barrio.js diff --git a/resources/js/components/comunes/NavBar.vue b/resources/js/components/comunes/NavBar.vue index f58c177..5ead517 100644 --- a/resources/js/components/comunes/NavBar.vue +++ b/resources/js/components/comunes/NavBar.vue @@ -6,7 +6,7 @@ {{ cantidad_transporte }} {{ total_transporte }} - +

Devoluciones

{{ notas_abreviadas }} @@ -51,8 +51,8 @@ import { mapMutations, mapState } from "vuex"; export default { components: { ProductoRow }, computed: { - ...mapState('barrio',["devoluciones_habilitadas"]), ...mapState('pedido',[ + "grupo_de_compra", "productos", "total", "total_transporte", diff --git a/resources/js/components/pedidos/PedidoSelect.vue b/resources/js/components/pedidos/PedidoSelect.vue index 5c45100..35557ce 100644 --- a/resources/js/components/pedidos/PedidoSelect.vue +++ b/resources/js/components/pedidos/PedidoSelect.vue @@ -66,20 +66,28 @@ export default { }, data() { return { - searchString: null + pedidos: [], + searchString: null, } }, computed: { - ...mapState('barrio',["grupo_de_compra_id","pedidos"]), + ...mapState('pedido', ["grupo_de_compra"]), deshabilitado: function () { return !this.searchString?.trim() || this.pedidos.some(p => p.nombre.toLowerCase() === this.searchString.toLowerCase()) } }, methods: { - ...mapActions('barrio',["getGrupoDeCompra","getPedidos"]), - ...mapActions('pedido',["crearPedido","elegirPedido"]), - ...mapMutations('barrio',["setPedidos"]), + ...mapActions('pedido', ["getGrupoDeCompra", "crearPedido", "elegirPedido"]), + async getPedidos(nombre) { + const response = await axios.get('/api/subpedidos/',{ + params: { + nombre: nombre, + grupo_de_compra: this.grupo_de_compra.id + } + }); + this.pedidos = response.data; + }, onType() { if (!this.searchString) { this.setPedidos([]); @@ -91,7 +99,7 @@ export default { if (pedido) await this.elegirPedido({ pedido_id: pedido.id }); else - await this.crearPedido({ nombre: this.searchString, grupo_de_compra_id: this.grupo_de_compra_id }); + await this.crearPedido({ nombre: this.searchString, grupo_de_compra_id: this.grupo_de_compra.id }); }, } } diff --git a/resources/js/store/index.js b/resources/js/store/index.js index 245553a..a0f3a09 100644 --- a/resources/js/store/index.js +++ b/resources/js/store/index.js @@ -3,7 +3,6 @@ import Vuex from 'vuex'; import admin from "./modules/admin"; import login from "./modules/login"; import pedido from "./modules/pedido"; -import barrio from "./modules/barrio"; import productos from "./modules/productos"; import ui from "./modules/ui"; @@ -14,7 +13,6 @@ export default new Vuex.Store({ admin, login, pedido, - barrio, productos, ui, }, diff --git a/resources/js/store/modules/barrio.js b/resources/js/store/modules/barrio.js deleted file mode 100644 index 5e0c2cc..0000000 --- a/resources/js/store/modules/barrio.js +++ /dev/null @@ -1,45 +0,0 @@ -import axios from "axios"; - -const state = { - grupo_de_compra_id: null, - grupo_de_compra: null, - devoluciones_habilitadas: null, - pedidos: [], -}; - -const mutations = { - setGrupoDeCompra(state, { grupo_de_compra }) { - state.grupo_de_compra_id = grupo_de_compra.id; - state.grupo_de_compra = grupo_de_compra.nombre; - state.devoluciones_habilitadas = grupo_de_compra.devoluciones_habilitadas; - }, - setPedidos(state, pedidos) { - state.pedidos = pedidos; - }, -}; - -const actions = { - async getGrupoDeCompra({ commit }) { - const response = await axios.get('/user/grupo_de_compra'); - commit('setGrupoDeCompra', response.data); - }, - async getPedidos({ commit }, nombre) { - const response = await axios.get('/api/subpedidos/',{ - params: { - nombre: nombre, - grupo_de_compra: state.grupo_de_compra_id - } - }); - commit('setPedidos', response.data); - }, - async limpiarPedidos({ commit }) { - commit('setPedidos', []); - } -}; - -export default { - namespaced: true, - state, - mutations, - actions, -}; diff --git a/resources/js/store/modules/pedido.js b/resources/js/store/modules/pedido.js index 75808c5..c8c3c25 100644 --- a/resources/js/store/modules/pedido.js +++ b/resources/js/store/modules/pedido.js @@ -2,6 +2,7 @@ import axios from "axios"; const state = { lastFetch: null, + grupo_de_compra: null, pedido_id: null, nombre: null, productos: null, @@ -15,6 +16,9 @@ const state = { }; const mutations = { + setGrupoDeCompra(state, grupo_de_compra) { + state.grupo_de_compra = grupo_de_compra; + }, setPedido(state, pedido) { state.lastFetch = new Date(); state.pedido_id = pedido.id; @@ -44,6 +48,10 @@ const mutations = { }; const actions = { + async getGrupoDeCompra({ commit }) { + const response = await axios.get('/user/grupo_de_compra'); + commit('setGrupoDeCompra', response.data.grupo_de_compra); + }, async guardarSesion(_, { pedido_id }) { await axios.post("/pedido/sesion", { id: pedido_id }); }, @@ -87,7 +95,6 @@ const actions = { }, async resetear({ commit, dispatch }) { await axios.delete("/pedido/sesion"); - dispatch("barrio/limpiarPedidos", null, { root: true }); dispatch("productos/getProductos", null, { root: true }); commit('reset'); },