forked from nathalie/pedi2
pestaña de pedidos y de bonos en la pantalla de admin
This commit is contained in:
parent
6005cc01b7
commit
1a961c0732
File diff suppressed because one or more lines are too long
|
@ -1,37 +1,51 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="container is-max-widescreen is-max-desktop animate__animated" :class="animation" v-show="!init">
|
<div class="container is-max-widescreen is-max-desktop animate__animated" :class="animation" v-show="!init">
|
||||||
<div class="block" v-show="hayPedidos">
|
<pedidos-admin-tabs-secciones></pedidos-admin-tabs-secciones>
|
||||||
<pedidos-admin-dropdown-descargar
|
<div class="block" id="pedidos-seccion"
|
||||||
:gdc="gdc">
|
:class="seccionActiva === 'pedidos-seccion' ? 'is-active' : 'is-hidden'">
|
||||||
</pedidos-admin-dropdown-descargar>
|
<div class="block" id="pedidos-tabla-y-dropdown" v-show="hayPedidos">
|
||||||
<pedidos-admin-tabla-pedidos
|
<pedidos-admin-dropdown-descargar
|
||||||
:pedidos="pedidos">
|
:gdc="gdc">
|
||||||
</pedidos-admin-tabla-pedidos>
|
</pedidos-admin-dropdown-descargar>
|
||||||
<pedidos-admin-tabla-bonos
|
<pedidos-admin-tabla-pedidos
|
||||||
|
:pedidos="pedidos">
|
||||||
|
</pedidos-admin-tabla-pedidos>
|
||||||
|
</div>
|
||||||
|
<p class="has-text-centered" v-show="!hayPedidos">
|
||||||
|
Todavía no hay ningún pedido para administrar.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<div class="block" id="bonos-seccion"
|
||||||
|
:class="seccionActiva === 'bonos-seccion' ? 'is-active' : 'is-hidden'">
|
||||||
|
<pedidos-admin-tabla-bonos v-show="hayAprobados"
|
||||||
:pedidos="pedidos">
|
:pedidos="pedidos">
|
||||||
</pedidos-admin-tabla-bonos>
|
</pedidos-admin-tabla-bonos>
|
||||||
|
<p class="has-text-centered" v-show="!hayAprobados">
|
||||||
|
Todavía no hay pedidos aprobados.
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<p class="has-text-centered" v-show="!hayPedidos">
|
|
||||||
Todavía no hay ningún pedido para administrar.
|
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import PedidosAdminTabsSecciones from './PedidosAdminTabsSecciones.vue';
|
||||||
import PedidosAdminDropdownDescargar from "./PedidosAdminDropdownDescargar.vue";
|
import PedidosAdminDropdownDescargar from "./PedidosAdminDropdownDescargar.vue";
|
||||||
import PedidosAdminTablaBonosVue from './PedidosAdminTablaBonos.vue';
|
import PedidosAdminTablaBonos from './PedidosAdminTablaBonos.vue';
|
||||||
import PedidosAdminTablaPedidos from "./PedidosAdminTablaPedidos.vue";
|
import PedidosAdminTablaPedidos from "./PedidosAdminTablaPedidos.vue";
|
||||||
export default {
|
export default {
|
||||||
name: "PedidosAdminBody",
|
name: "PedidosAdminBody",
|
||||||
components: {
|
components: {
|
||||||
|
PedidosAdminTabsSecciones,
|
||||||
PedidosAdminDropdownDescargar,
|
PedidosAdminDropdownDescargar,
|
||||||
PedidosAdminTablaPedidos,
|
PedidosAdminTablaPedidos,
|
||||||
PedidosAdminTablaBonosVue
|
PedidosAdminTablaBonos,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
gdc: 0,
|
gdc: 0,
|
||||||
pedidos: []
|
pedidos: [],
|
||||||
|
tabActiva: "pedidos",
|
||||||
|
seccionActiva: "pedidos-seccion"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -42,8 +56,6 @@ export default {
|
||||||
return this.pedidos.filter(p => p.aprobado).length > 0
|
return this.pedidos.filter(p => p.aprobado).length > 0
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
beforeCreate() {
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
fetchPedidos() {
|
fetchPedidos() {
|
||||||
axios.get("/api/subpedidos/resources", {
|
axios.get("/api/subpedidos/resources", {
|
||||||
|
@ -61,6 +73,10 @@ export default {
|
||||||
suma += parseFloat(aprobados[i].total.replace(/,/g, ''));
|
suma += parseFloat(aprobados[i].total.replace(/,/g, ''));
|
||||||
}
|
}
|
||||||
return suma;
|
return suma;
|
||||||
|
},
|
||||||
|
setSeccionActiva(tabId) {
|
||||||
|
this.tabActiva = tabId;
|
||||||
|
this.seccionActiva = tabId + "-seccion";
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
|
|
|
@ -13,6 +13,16 @@
|
||||||
<th>Total bonos</th>
|
<th>Total bonos</th>
|
||||||
<th>$ {{ totalBonos }}</th>
|
<th>$ {{ totalBonos }}</th>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th></th>
|
||||||
|
<th></th>
|
||||||
|
<th></th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Bonos de Transporte</td>
|
||||||
|
<td>{{ bonosDeTransporteAprobados }}</td>
|
||||||
|
<td>$ {{ bonosDeTransporteAprobados * 15 }}</td>
|
||||||
|
</tr>
|
||||||
</tfoot>
|
</tfoot>
|
||||||
<tbody>
|
<tbody>
|
||||||
<pedidos-admin-fila-bono v-for="(bono, i) in bonosCantidadesTotales" :key="i"
|
<pedidos-admin-fila-bono v-for="(bono, i) in bonosCantidadesTotales" :key="i"
|
||||||
|
@ -47,6 +57,12 @@ export default {
|
||||||
pedidosAprobados: function() {
|
pedidosAprobados: function() {
|
||||||
return this.pedidos.filter(p => p.aprobado);
|
return this.pedidos.filter(p => p.aprobado);
|
||||||
},
|
},
|
||||||
|
bonosDeTransporteAprobados: function() {
|
||||||
|
let bonosTransportePorPedido = this.pedidosAprobados.map(p => p.bonos_de_transporte);
|
||||||
|
let cant = 0;
|
||||||
|
bonosTransportePorPedido.forEach(bt => cant += bt);
|
||||||
|
return cant
|
||||||
|
},
|
||||||
bonosCantidadesTotales: function() {
|
bonosCantidadesTotales: function() {
|
||||||
let nombres = [];
|
let nombres = [];
|
||||||
let cantidades = [];
|
let cantidades = [];
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
<template>
|
||||||
|
<div class="block">
|
||||||
|
<div class="tabs is-boxed" id="tabs">
|
||||||
|
<ul class="has-bottom-line">
|
||||||
|
<li v-for="(tab, index) in tabs" class="is-size-6"
|
||||||
|
:key="index"
|
||||||
|
:id="tab.id + '-tab'"
|
||||||
|
:class="{'is-active': tab.id === tabActiva}">
|
||||||
|
<a @click="setTabActiva(tab.id)">
|
||||||
|
<span>
|
||||||
|
{{ tab.nombre }}
|
||||||
|
</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "PedidosAdminTabsSecciones",
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
tabActiva: "pedidos",
|
||||||
|
tabs: [
|
||||||
|
{
|
||||||
|
id: "pedidos",
|
||||||
|
nombre: "Pedidos"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
id: "bonos",
|
||||||
|
nombre: "Bonos"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
setTabActiva(tabId) {
|
||||||
|
this.$parent.setSeccionActiva(tabId);
|
||||||
|
this.tabActiva = tabId
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
hr {
|
||||||
|
border: none;
|
||||||
|
height: 1px;
|
||||||
|
}
|
||||||
|
.has-bottom-line {
|
||||||
|
border-bottom-color: #dbdbdb !important;
|
||||||
|
border-bottom-style: solid !important;
|
||||||
|
border-bottom-width: 1px !important;
|
||||||
|
}
|
||||||
|
</style>
|
Loading…
Reference in New Issue