From 7140796ccd4f3e636f2a064b5b5ac87f91ee3fe2 Mon Sep 17 00:00:00 2001 From: ale <ale.tasistro@gmail.com> Date: Fri, 23 May 2025 02:33:21 -0300 Subject: [PATCH] Usando sesion para recordar el pedido --- app/Http/Controllers/SessionController.php | 1 - resources/js/components/pedidos/Body.vue | 10 +++++++++- resources/js/components/pedidos/Pedido.vue | 6 ------ resources/js/store/modules/pedido.js | 16 ++++++++++++++-- 4 files changed, 23 insertions(+), 10 deletions(-) diff --git a/app/Http/Controllers/SessionController.php b/app/Http/Controllers/SessionController.php index b2b33fe..94b8552 100644 --- a/app/Http/Controllers/SessionController.php +++ b/app/Http/Controllers/SessionController.php @@ -5,7 +5,6 @@ namespace App\Http\Controllers; use App\Subpedido; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; -use Illuminate\Support\Facades\Log; use Illuminate\Validation\Rule; class SessionController extends Controller diff --git a/resources/js/components/pedidos/Body.vue b/resources/js/components/pedidos/Body.vue index 941cb53..c4b0628 100644 --- a/resources/js/components/pedidos/Body.vue +++ b/resources/js/components/pedidos/Body.vue @@ -7,7 +7,7 @@ </template> <script> -import { mapGetters } from "vuex"; +import { mapActions, mapGetters } from "vuex"; import PedidoSelectSection from "./PedidoSelectSection.vue"; import Pedido from "./Pedido.vue"; import CartelPedidoAprobado from "./CartelPedidoAprobado.vue"; @@ -17,5 +17,13 @@ export default { computed: { ...mapGetters('pedido',["pedidoDefinido"]), }, + methods: { + ...mapActions('productos',["init"]), + ...mapActions('pedido',["getSesion"]), + }, + async mounted() { + await this.init(); + await this.getSesion(); + } } </script> diff --git a/resources/js/components/pedidos/Pedido.vue b/resources/js/components/pedidos/Pedido.vue index 3613b7a..b6e3d1f 100644 --- a/resources/js/components/pedidos/Pedido.vue +++ b/resources/js/components/pedidos/Pedido.vue @@ -13,12 +13,6 @@ export default defineComponent({ computed: { ...mapState('ui',["show_chismosa","show_devoluciones"]) }, - methods: { - ...mapActions('productos',["init"]), - }, - async mounted() { - await this.init(); - }, }) </script> diff --git a/resources/js/store/modules/pedido.js b/resources/js/store/modules/pedido.js index 1866f7a..cccc93b 100644 --- a/resources/js/store/modules/pedido.js +++ b/resources/js/store/modules/pedido.js @@ -31,15 +31,27 @@ const mutations = { }; const actions = { - async crearPedido({ commit }, { nombre, grupo_de_compra_id }) { + async guardarSesion(_, { pedido_id }) { + await axios.post("/subpedidos/sesion", { id: pedido_id }); + }, + async getSesion({ commit }) { + const sesion = await axios.get("/subpedidos/sesion"); + if (sesion.data) { + const response = await axios.get(`/api/subpedidos/${sesion.data}`); + commit('setState', response.data.data); + } + }, + async crearPedido({ commit, dispatch }, { nombre, grupo_de_compra_id }) { const response = await axios.post("/api/subpedidos", { nombre: nombre, grupo_de_compra_id: grupo_de_compra_id }); + dispatch("guardarSesion", { pedido_id: response.data.data.id}); commit('setState', response.data.data); }, - async elegirPedido({ commit }, { pedido }) { + async elegirPedido({ commit, dispatch }, { pedido }) { const response = await axios.get(`/api/subpedidos/${pedido.id}`); + dispatch("guardarSesion", { pedido_id: response.data.data.id}) commit('setState', response.data.data); }, async modificarChismosa({ commit, dispatch }, { producto_id, cantidad, notas }) {