Eliminada store de barrio, logica de pedidos existentes pasada a pedido select y datos de grupo de compra pasados a store de pedido
This commit is contained in:
parent
4e197204a9
commit
2bfcf59f3e
6 changed files with 26 additions and 58 deletions
|
@ -6,7 +6,7 @@
|
|||
</a>
|
||||
<div class="navbar-item" id="datos-pedido" v-if="pedidoDefinido">
|
||||
<p class="hide-below-1024">
|
||||
{{ `Núcleo: ${nombre} - Barrio: ${grupo_de_compra}` }}
|
||||
{{ `Núcleo: ${nombre} - Barrio: ${grupo_de_compra.nombre}` }}
|
||||
</p>
|
||||
</div>
|
||||
<chismosa-dropdown
|
||||
|
@ -63,7 +63,7 @@ export default {
|
|||
computed: {
|
||||
...mapGetters('pedido', ["pedidoDefinido"]),
|
||||
...mapState('pedido',["nombre"]),
|
||||
...mapState('barrio',["grupo_de_compra"]),
|
||||
...mapState('pedido',["grupo_de_compra"]),
|
||||
},
|
||||
methods: {
|
||||
...mapActions('productos', ["filtrarProductos"]),
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<th class="has-text-right">{{ cantidad_transporte }}</th>
|
||||
<th class="has-text-right">{{ total_transporte }}</th>
|
||||
</tr>
|
||||
<tr v-if="devoluciones_habilitadas">
|
||||
<tr v-if="grupo_de_compra.devoluciones_habilitadas">
|
||||
<th><p>Devoluciones</p></th>
|
||||
<td>
|
||||
<abbr :title="devoluciones_notas">{{ notas_abreviadas }}</abbr>
|
||||
|
@ -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",
|
||||
|
|
|
@ -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 });
|
||||
},
|
||||
}
|
||||
}
|
||||
|
|
2
resources/js/store/index.js
vendored
2
resources/js/store/index.js
vendored
|
@ -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,
|
||||
},
|
||||
|
|
45
resources/js/store/modules/barrio.js
vendored
45
resources/js/store/modules/barrio.js
vendored
|
@ -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,
|
||||
};
|
9
resources/js/store/modules/pedido.js
vendored
9
resources/js/store/modules/pedido.js
vendored
|
@ -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');
|
||||
},
|
||||
|
|
Loading…
Add table
Reference in a new issue