pedi2/resources/js/components/admin/Body.vue

107 lines
3.7 KiB
Vue
Raw Normal View History

<template>
2024-09-09 01:28:13 -03:00
<div class="block ml-3 mr-3 is-max-widescreen is-max-desktop">
<admin-tabs-secciones></admin-tabs-secciones>
2024-07-11 16:32:25 -03:00
<div class="block" id="pedidos-seccion"
:class="seccionActiva === 'pedidos-seccion' ? 'is-active' : 'is-hidden'">
2023-10-04 22:37:59 -03:00
<div class="block pb-6" id="pedidos-tabla-y-dropdown" v-show="hayPedidos">
<admin-dropdown-descargar
:gdc="gdc">
</admin-dropdown-descargar>
<admin-tabla-pedidos
2023-10-04 22:37:59 -03:00
:pedidos="pedidos" :bonosDeTransporte="bonosDeTransporte" :totalBonosBarriales="totalBonosBarriales">
</admin-tabla-pedidos>
</div>
<p class="has-text-centered" v-show="!hayPedidos">
Todavía no hay ningún pedido para administrar.
</p>
</div>
2024-07-11 16:32:25 -03:00
<div class="block pb-6" id="bonos-seccion"
:class="seccionActiva === 'bonos-seccion' ? 'is-active' : 'is-hidden'">
<admin-tabla-bonos v-show="hayAprobados"
:pedidos="pedidos">
</admin-tabla-bonos>
<p class="has-text-centered" v-show="!hayAprobados">
Todavía no hay pedidos aprobados.
</p>
</div>
2024-07-11 16:32:25 -03:00
<div class="block pb-6" id="caracteristicas-seccion"
:class="seccionActiva === 'caracteristicas-seccion' ? 'is-active' : 'is-hidden'">
<admin-caracteristicas-opcionales>
</admin-caracteristicas-opcionales>
2024-07-11 16:32:25 -03:00
</div>
</div>
</template>
<script>
import CaracteristicasOpcionales from "./CaracteristicasOpcionales.vue";
import TabsSecciones from "./TabsSecciones.vue";
import DropdownDescargar from "./DropdownDescargar.vue";
import TablaPedidos from "./TablaPedidos.vue";
import TablaBonos from "./TablaBonos.vue";
export default {
components: {
CaracteristicasOpcionales,
TabsSecciones,
DropdownDescargar,
TablaPedidos,
TablaBonos,
},
data() {
return {
2022-10-21 19:17:52 -03:00
gdc: 0,
pedidos: [],
bonosDeTransporte: 0,
2023-10-04 22:37:59 -03:00
totalBonosBarriales: 0,
tabActiva: "pedidos",
2024-07-11 18:33:45 -03:00
seccionActiva: "pedidos-seccion",
}
},
computed: {
hayPedidos: function() {
return this.pedidos.length !== 0
},
hayAprobados: function() {
return this.pedidos.filter(p => p.aprobado).length > 0
}
},
methods: {
fetchPedidos() {
axios.get("/api/grupos-de-compra/"+this.gdc+"/bonos-de-transporte", {})
.then(response => this.bonosDeTransporte = response.data.bdt);
axios.get("/api/subpedidos/resources", {
params: {
grupo_de_compra: this.gdc
}})
.then(response => {
this.pedidos = response.data.data
}).get;
axios.get("/api/grupos-de-compra/"+this.gdc+"/bonos-barriales", {})
.then(response => this.totalBonosBarriales = response.data.bonos_barriales)
},
setSeccionActiva(tabId) {
this.tabActiva = tabId;
this.seccionActiva = tabId + "-seccion";
2023-10-04 22:37:59 -03:00
},
getBonosBarriales() {
axios.get("/api/grupos-de-compra/"+this.gdc+"/bonos-barriales", {})
.then(response => this.totalBonosBarriales = response.data.bonos_barriales)
}
},
mounted() {
Event.$on('sync-aprobacion', (_) => {
this.fetchPedidos();
});
axios.get("/admin/obtener_sesion").then(response => {
this.gdc = response.data.gdc;
this.fetchPedidos();
2023-10-04 22:37:59 -03:00
this.bonosBarriales = this.getBonosBarriales()
});
}
}
</script>
2022-10-21 19:17:52 -03:00
<style>
</style>