pedi2/resources/js/components/PedidosAdminTablaPedidos.vue

116 lines
3.9 KiB
Vue
Raw Normal View History

<template>
2023-10-05 12:58:03 -03:00
<div>
<table class="table is-fullwidth is-striped is-bordered">
<thead>
2023-10-05 12:58:03 -03:00
<tr>
<th>Núcleo</th>
<th v-if="$root.devoluciones"><abbr title="Total sin tomar en cuenta las devoluciones">Total parcial $</abbr></th>
<th v-if="$root.devoluciones"><abbr title="Devoluciones correspondientes al núcleo">Devoluciones $</abbr></th>
<th><abbr title="Total a Pagar por el núleo">{{ $root.devoluciones ? 'Total real' : 'Total' }} $</abbr></th>
2024-07-11 19:55:14 -03:00
<th class="is-1"><abbr title="Pagado">Pagado</abbr></th>
2023-10-05 12:58:03 -03:00
</tr>
</thead>
<tbody>
2024-07-11 19:55:14 -03:00
<pedidos-admin-fila-pedido
v-for="pedido in this.pedidos"
:pedido="pedido" :key="pedido.id">
</pedidos-admin-fila-pedido>
2023-10-05 12:58:03 -03:00
</tbody>
</table>
<table class="table is-striped is-bordered">
2023-10-05 12:58:03 -03:00
<tr>
<th colspan="2" class="has-background-black has-text-white has-text-centered">TOTALES</th>
</tr>
<tr>
<th>Total a recaudar:</th>
<td class="has-text-right">$ {{ totalARecaudar }}</td>
2023-10-05 12:58:03 -03:00
</tr>
<tr>
2023-10-05 12:58:03 -03:00
<th>Total bonos barriales:</th>
2024-07-17 17:25:19 -03:00
<td class="has-text-right">$ {{ $parent.totalBonosBarriales }}</td>
2023-10-05 12:58:03 -03:00
</tr>
<tr v-if="$root.devoluciones">
2023-10-05 12:58:03 -03:00
<th>Total devoluciones:</th>
<td class="has-text-right">- $ {{ totalDevoluciones() }}</td>
</tr>
2024-07-11 19:55:14 -03:00
<tr>
<th>Total bonos de transporte:</th>
<td class="has-text-right">$ {{ bonosDeTransporte * 15 }}</td>
</tr>
2023-10-05 12:58:03 -03:00
<tr>
<th>Total a depositar:</th>
<td class="has-text-right">$ {{ totalAprobadosConTransporteRecalculado() - totalBonosBarriales }}</td>
2023-10-05 12:58:03 -03:00
</tr>
</table>
</div>
</template>
<script>
import PedidosAdminFilaPedidoVue from './PedidosAdminFilaPedido.vue';
export default {
name: "PedidosAdminTablaPedidos",
components: {
PedidosAdminFilaPedidoVue
},
props: {
pedidos: {
type: Array,
required: true
},
bonosDeTransporte: {
type: Number,
required: true
},
2023-10-04 22:37:59 -03:00
totalBonosBarriales: {
type: Number,
required: true
},
},
computed: {
totalARecaudar: function() {
return this.$root.devoluciones ? this.totalAprobadosMenosDevoluciones() : this.totalAprobados();
},
},
methods: {
2023-10-05 12:58:03 -03:00
totalDevoluciones() {
let suma = 0
let aprobados = this.pedidos.filter(p => p.aprobado);
for (let i = 0; i < aprobados.length; i++) {
2024-07-11 19:55:14 -03:00
suma += aprobados[i].devoluciones_total
2023-10-05 12:58:03 -03:00
}
return suma;
},
totalAprobados() {
let suma = 0
let aprobados = this.pedidos.filter(p => p.aprobado);
for (let i = 0; i < aprobados.length; i++) {
suma += this.$limpiarFloat(aprobados[i].total)
}
return suma;
},
2023-10-05 12:58:03 -03:00
totalAprobadosMenosDevoluciones() {
let suma = 0
let aprobados = this.pedidos.filter(p => p.aprobado);
for (let i = 0; i < aprobados.length; i++) {
2024-07-11 19:55:14 -03:00
suma += this.$limpiarFloat(aprobados[i].total_menos_devoluciones)
2023-10-05 12:58:03 -03:00
}
return suma;
},
totalAprobadosConTransporteRecalculado() {
2023-10-04 22:37:59 -03:00
let suma = 0
let aprobados = this.pedidos.filter(p => p.aprobado);
for (let i = 0; i < aprobados.length; i++) {
2024-07-11 19:55:14 -03:00
suma += this.$limpiarFloat(aprobados[i].total)
suma -= this.$limpiarFloat(aprobados[i].subtotal_bonos_de_transporte)
}
suma += parseInt(this.bonosDeTransporte)*15
return suma;
}
},
}
</script>
<style>
</style>