Comisiones store

This commit is contained in:
Rodrigo 2025-06-14 17:40:40 -03:00 committed by ale
parent 46675f9acf
commit eb1b5bbc2e
4 changed files with 63 additions and 3 deletions

View file

@ -40,6 +40,22 @@
</div> </div>
</div> </div>
</div> </div>
<div
class="block pb-6"
id="saldos-comisiones-seccion"
:class="seccionActiva === 'saldos-comisiones-seccion' ? 'is-active' : 'is-hidden'"
>
<div class="block" id="saldos-comisiones-seccion">
<table>
<tbody>
<tr v-for="gdc in grupos_de_compra">
<th>{{ gdc.nombre }}</th>
<td>{{ gdc.saldo }}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div> </div>
</template> </template>
@ -47,6 +63,7 @@
import TabsSecciones from "../comunes/TabsSecciones.vue"; import TabsSecciones from "../comunes/TabsSecciones.vue";
import DropdownDescargar from "./DropdownDescargar.vue"; import DropdownDescargar from "./DropdownDescargar.vue";
import CanastaInput from "./CanastaInput.vue"; import CanastaInput from "./CanastaInput.vue";
import { mapActions, mapState } from "vuex";
export default { export default {
name: "ComisionesBody", name: "ComisionesBody",
@ -57,8 +74,11 @@ export default {
}, },
data() { data() {
return { return {
tabs: [{ id: "pedidos-comisiones", nombre: "Pedidos" }, tabs: [
{ id: "canasta-comisiones", nombre: "Canasta" }], { id: "pedidos-comisiones", nombre: "Pedidos" },
{ id: "canasta-comisiones", nombre: "Canasta" },
{ id: "saldos-comisiones", nombre: "Saldos" },
],
tabActiva: "pedidos-comisiones", tabActiva: "pedidos-comisiones",
seccionActiva: "pedidos-comisiones-seccion", seccionActiva: "pedidos-comisiones-seccion",
archivo: undefined, archivo: undefined,
@ -69,6 +89,15 @@ export default {
this.tabActiva = tabId; this.tabActiva = tabId;
this.seccionActiva = tabId + "-seccion"; this.seccionActiva = tabId + "-seccion";
}, },
} ...mapActions('comisiones', ['getGruposDeCompra']),
},
computed: {
...mapState('comisiones', [
'grupos_de_compra',
]),
},
async mounted() {
await this.getGruposDeCompra();
},
} }
</script> </script>

View file

@ -1,6 +1,7 @@
import Vue from 'vue'; import Vue from 'vue';
import Vuex from 'vuex'; import Vuex from 'vuex';
import admin from "./modules/admin"; import admin from "./modules/admin";
import comisiones from "./modules/comisiones";
import login from "./modules/login"; import login from "./modules/login";
import pedido from "./modules/pedido"; import pedido from "./modules/pedido";
import productos from "./modules/productos"; import productos from "./modules/productos";
@ -11,6 +12,7 @@ Vue.use(Vuex);
export default new Vuex.Store({ export default new Vuex.Store({
modules: { modules: {
admin, admin,
comisiones,
login, login,
pedido, pedido,
productos, productos,

View file

@ -0,0 +1,28 @@
import axios from "axios";
const state = {
grupos_de_compra: null,
};
const mutations = {
setGruposDeCompra(state, { grupos_de_compra }) {
state.grupos_de_compra = grupos_de_compra;
},
};
const actions = {
async getGruposDeCompra({ commit }) {
const response = await axios.get('/api/grupos-de-compra');
commit('setGruposDeCompra', response.data);
},
};
const getters = {};
export default {
namespaced: true,
state,
mutations,
actions,
getters,
};

View file

@ -20,6 +20,7 @@ Route::middleware('api')->group(function() {
Route::get('/canasta-actual', 'Api\CanastaController@canastaActual'); Route::get('/canasta-actual', 'Api\CanastaController@canastaActual');
Route::prefix('grupos-de-compra')->group(function() { Route::prefix('grupos-de-compra')->group(function() {
Route::get('/', 'Api\GrupoDeCompraController@index');
Route::get('/{grupoDeCompra}', 'Api\GrupoDeCompraController@show'); Route::get('/{grupoDeCompra}', 'Api\GrupoDeCompraController@show');
Route::post('/{gdc}/devoluciones', 'Api\GrupoDeCompraController@toggleDevoluciones'); Route::post('/{gdc}/devoluciones', 'Api\GrupoDeCompraController@toggleDevoluciones');
}); });