forked from nathalie/pedi2
83 lines
2.7 KiB
Vue
83 lines
2.7 KiB
Vue
<template>
|
|
<div class="block ml-3 mr-3 is-max-widescreen is-max-desktop">
|
|
<comunes-tabs-secciones :tabs="tabs" :tabInicial="tabActiva"></comunes-tabs-secciones>
|
|
<div class="block" id="pedidos-seccion"
|
|
:class="seccionActiva === 'pedidos-seccion' ? 'is-active' : 'is-hidden'">
|
|
<div class="block pb-6" id="pedidos-tabla-y-dropdown" v-if="hayPedidos">
|
|
<admin-dropdown-descargar
|
|
:gdc_id="gdc.id">
|
|
</admin-dropdown-descargar>
|
|
<admin-tabla-pedidos
|
|
:gdc="this.gdc"
|
|
></admin-tabla-pedidos>
|
|
</div>
|
|
<p class="has-text-centered" v-else>
|
|
Todavía no hay ningún pedido para administrar.
|
|
</p>
|
|
</div>
|
|
<div class="block pb-6" id="caracteristicas-seccion"
|
|
:class="seccionActiva === 'caracteristicas-seccion' ? 'is-active' : 'is-hidden'">
|
|
<admin-caracteristicas-opcionales>
|
|
</admin-caracteristicas-opcionales>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import CaracteristicasOpcionales from "./CaracteristicasOpcionales.vue";
|
|
import TabsSecciones from "../comunes/TabsSecciones.vue";
|
|
import DropdownDescargar from "./DropdownDescargar.vue";
|
|
import TablaPedidos from "./TablaPedidos.vue";
|
|
import TablaBonos from "./TablaBonos.vue";
|
|
import axios from "axios";
|
|
export default {
|
|
components: {
|
|
CaracteristicasOpcionales,
|
|
TabsSecciones,
|
|
DropdownDescargar,
|
|
TablaPedidos,
|
|
TablaBonos,
|
|
},
|
|
data() {
|
|
return {
|
|
gdc: undefined,
|
|
tabs: [{ id: "pedidos", nombre: "Pedidos" },
|
|
{ id: "caracteristicas", nombre: "Caracteristicas opcionales" }],
|
|
tabActiva: "pedidos",
|
|
seccionActiva: "pedidos-seccion",
|
|
}
|
|
},
|
|
computed: {
|
|
hayPedidos: function() {
|
|
return this.gdc && this.gdc.pedidos.length !== 0
|
|
},
|
|
hayAprobados: function() {
|
|
return this.gdc && this.gdc.pedidos.filter(p => p.aprobado).length > 0
|
|
}
|
|
},
|
|
methods: {
|
|
setSeccionActiva(tabId) {
|
|
this.tabActiva = tabId;
|
|
this.seccionActiva = tabId + "-seccion";
|
|
},
|
|
actualizar() {
|
|
axios.get('/api/grupos-de-compra/' + this.$root.gdc)
|
|
.then(response => {
|
|
this.gdc = response.data.data;
|
|
console.log(this.gdc);
|
|
})
|
|
}
|
|
},
|
|
async mounted() {
|
|
Event.$on('sync-aprobacion', (_) => {
|
|
this.actualizar();
|
|
});
|
|
await new Promise(r => setTimeout(r, 1000));
|
|
this.actualizar();
|
|
},
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
|
|
</style>
|