mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Merge branch 'main' into fix/sk-7/bugs
This commit is contained in:
@ -22,8 +22,12 @@
|
||||
<tbody></tbody>
|
||||
<tfoot>
|
||||
<tr>
|
||||
<td colspan="6" style="text-align:right">Total:</td>
|
||||
<td id="totalCobrado-sum"></td>
|
||||
<td colspan="6" style="text-align:right">Total cobrado:</td>
|
||||
<td><span id="totalCobrado-sum" class="autonumeric"></span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="6" style="text-align:right">Total pendiente:</td>
|
||||
<td><span id="pendienteCobro-sum" class="autonumeric"></span></td>
|
||||
</tr>
|
||||
</tfoot>
|
||||
</table>
|
||||
@ -225,21 +229,38 @@ var tablePagos = $('#tableOfLineasPagos').DataTable({
|
||||
footerCallback: function (row, data, start, end, display) {
|
||||
var api = this.api();
|
||||
|
||||
// Remove the formatting to get integer data for summation
|
||||
var intVal = function (i) {
|
||||
// Convertir a número o devolver 0 si no es válido
|
||||
return typeof i === 'string' ? i.replace(/[\$,]/g, '')*1 : typeof i === 'number' ? i : 0;
|
||||
};
|
||||
|
||||
// Total over all pages
|
||||
var totalPagos = api
|
||||
.column(6)
|
||||
.data()
|
||||
.reduce(function (a, b) {
|
||||
return intVal(a) + intVal(b);
|
||||
var filas = [];
|
||||
api.rows().every(function() {
|
||||
var data = this.data();
|
||||
if (data['fecha_pago_at'] !== undefined && data['fecha_pago_at'] !== null && data['fecha_pago_at'] !== '') {
|
||||
filas.push(data); // Agregar la fila a la variable
|
||||
}
|
||||
});
|
||||
var totalPagos = filas
|
||||
.reduce(function(a, data) {
|
||||
return a + intVal(data['total']); // Aquí asumimos que la columna 6 está en el índice 5
|
||||
}, 0);
|
||||
|
||||
var filas = [];
|
||||
api.rows().every(function() {
|
||||
var data = this.data();
|
||||
if (data['fecha_pago_at'] === undefined || data['fecha_pago_at'] === null || data['fecha_pago_at'] === '') {
|
||||
filas.push(data); // Agregar la fila a la variable
|
||||
}
|
||||
});
|
||||
var totalPendiente = filas
|
||||
.reduce(function(a, data) {
|
||||
return a + intVal(data['total']); // Aquí asumimos que la columna 6 está en el índice 5
|
||||
}, 0);
|
||||
|
||||
// Update footer
|
||||
$('#totalCobrado-sum').html(totalPagos.toFixed(2));
|
||||
$('#pendienteCobro-sum').html(totalPendiente.toFixed(2));
|
||||
|
||||
// call footerCallback of the other table
|
||||
if (typeof tableLineas !== 'undefined') {
|
||||
|
||||
@ -0,0 +1,99 @@
|
||||
<div class="accordion accordion-bordered mt-3 col-xl-6 " id="accordionCredito">
|
||||
<div class="card accordion-item active">
|
||||
<h2 class="accordion-header" id="headingOne">
|
||||
<button type="button" class="accordion-button" data-bs-toggle="collapse"
|
||||
data-bs-target="#accordionCreditoTip" aria-expanded="false" aria-controls="accordionCreditoTip">
|
||||
<h4><?= lang("Presupuestos.credito") ?></h4>
|
||||
</button>
|
||||
</h2>
|
||||
|
||||
<div id="accordionCreditoTip" class="accordion-collapse collapse show" data-bs-parent="#accordionCredito">
|
||||
<div class="accordion-body">
|
||||
|
||||
<div class="col-xl-12">
|
||||
<div class="table-responsive text-nowrap">
|
||||
<table class="table table-bordered">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><?= lang('Presupuestos.clienteId') ?></td>
|
||||
<td>
|
||||
<button type="button" class="btn btn-label-primary waves-effect"
|
||||
onclick="window.open('<?= route_to('editarCliente', $presupuestoEntity->cliente_id) ?>', '_blank');">
|
||||
Ir a cliente</button>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Facturas sin pagar: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['total_facturas_sin_pagar'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Facturas pagadas: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['total_facturas_pagadas'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Pagos vencidos: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['total_facturas_vencidas'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Pedidos produccion: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['total_pedidos_produccion'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Pedidos finalizados: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['total_pedidos_finalizados'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Total pendiente: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['total_pendiente'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Límite crédito: </td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency">
|
||||
<?= $credito['limite_credito'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><span class="fw-bold">Margen disponible:</span></td>
|
||||
<td class="right">
|
||||
<span class="autonumeric autonumeric-currency fw-bold
|
||||
<?= $credito['margen_disponible'] < 0 ? 'text-danger' : 'text-success' ?>">
|
||||
<?= $credito['margen_disponible'] ?>
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div> <!-- //.accordion-body -->
|
||||
</div> <!-- //.accordion-collapse -->
|
||||
</div> <!-- //.accordion-item -->
|
||||
</div> <!-- //.accordion -->
|
||||
@ -1,4 +1,4 @@
|
||||
<div class="accordion accordion-bordered mt-3 col-xl-4" id="accordionResumen">
|
||||
<div class="accordion accordion-bordered mt-3" id="accordionResumen">
|
||||
<div class="card accordion-item active">
|
||||
<h2 class="accordion-header" id="headingOne">
|
||||
<button type="button" class="accordion-button" data-bs-toggle="collapse"
|
||||
@ -18,57 +18,57 @@
|
||||
<!-- Price Details -->
|
||||
<dl class="row mb-0">
|
||||
<dt class="col-5 py-1 fw-normal text-end">Coste papel</dt>
|
||||
<dd id="totalCostePapel" class="py-1 col-6 text-end"></dd>
|
||||
<dd class="py-1 col-6 text-end"><span id="totalCostePapel" class="autonumeric-resumen-currency"></span></dd>
|
||||
<dt class="col-5 py-1 fw-normal text-end">Margen papel</dt>
|
||||
<dd id="porcentajeMargenPapel" class="col-3 text-end py-1"></dd>
|
||||
<dd id="margenPapel" class="col-3 text-end py-1"></dd>
|
||||
<dd class="col-3 text-end py-1"><span id="porcentajeMargenPapel" class="autonumeric-resumen-percent"></span></dd>
|
||||
<dd class="col-3 text-end py-1"><span id="margenPapel" class="autonumeric-resumen-currency"></span></dd>
|
||||
|
||||
<dt class="col-5 fw-normal text-end">Coste impresión</dt>
|
||||
<dd id="totalCosteImpresion" class="col-6 text-end"></dd>
|
||||
<dd class="col-6 text-end py-1"><span id="totalCosteImpresion" class="autonumeric-resumen-currency"></span></dd>
|
||||
<dt class="col-5 py-1 fw-normal text-end">Margen impresión</dt>
|
||||
<dd id="porcentajeMargenImpresion" class="col-3 text-end py-1"></dd>
|
||||
<dd id="margenImpresion" class="col-3 py-1 text-end"></dd>
|
||||
<dd class="col-3 text-end py-1"><span id="porcentajeMargenImpresion" class="autonumeric-resumen-percent"></span></dd>
|
||||
<dd class="col-3 text-end py-1"><span id="margenImpresion" class="autonumeric-resumen-currency"></span></d>
|
||||
|
||||
<dt class="col-5 fw-normal text-end">Coste servicios</dt>
|
||||
<dd id="totalServicios" class="col-6 text-end py-1"></dd>
|
||||
<dd class="col-6 text-end py-1 "><span id="totalServicios" class="autonumeric-resumen-currency"></span></dd>
|
||||
<dt class="col-5 fw-normal text-end">Margen servicios</dt>
|
||||
<dd id="porcentajeMargenServicios" class="col-3 text-end py-1"></dd>
|
||||
<dd id="margenServicios" class="col-3 text-end py-1"></dd>
|
||||
<dd class="col-3 text-end py-1 "><span id="porcentajeMargenServicios" class="autonumeric-resumen-percent"></span></dd>
|
||||
<dd class="col-3 text-end py-1 "><span id="margenServicios" class="autonumeric-resumen-currency"></span></dd>
|
||||
|
||||
<dt class="col-5 fw-normal text-end">Coste de envío</dt>
|
||||
<dd id="costeEnvios" class="col-6 text-end py-1"></dd>
|
||||
<dd class="col-6 text-end py-1 "><span id="costeEnvios" class="autonumeric-resumen-currency"></span></sp>
|
||||
<dt class="col-5 fw-normal text-end">Precio de envío</dt>
|
||||
<dd id="totalEnvios" class="col-6 text-end py-1"></dd>
|
||||
<dd class="col-6 text-end py-1 "><span id="totalEnvios" class="autonumeric-resumen-currency"></span></sp>
|
||||
<dt class="col-5 fw-normal text-end">Margen envío</dt>
|
||||
<dd id="margenEnvios" class="col-6 text-end py-1"></dd>
|
||||
<dd class="col-6 text-end py-1 "><span id="margenEnvios" class="autonumeric-resumen-currency"></span></sp>
|
||||
</dl>
|
||||
|
||||
<hr class="mx-n4">
|
||||
|
||||
<dl class="row mb-0">
|
||||
<dt class="col-5 fw-normal text-end">Total Costes</dt>
|
||||
<dd id="totalCostes" class="col-6 text-end"></dd>
|
||||
<dd class="col-6 text-end "><span id="totalCostes" class="autonumeric-resumen-currency"></span></span>
|
||||
<dt class="col-5 fw-normal text-end">Total Margen</dt>
|
||||
<dd id="porcentajeMargen" class="col-3 text-end py-1"></dd>
|
||||
<dd id="totalMargenes" class="col-3 text-end py-1"></dd>
|
||||
<dd class="col-3 text-end py-1"><span id="porcentajeMargen" class="autonumeric-resumen-percent"></span></dd>
|
||||
<dd class="col-3 text-end py-1"><span id="totalMargenes" class="autonumeric-resumen-currency"></span></dd>
|
||||
</dl>
|
||||
|
||||
<hr class="mx-n4">
|
||||
|
||||
<dl class="row mb-0">
|
||||
<dt class="col-5 fw-normal text-end">Total</dt>
|
||||
<dd id="totalAntesDescuento" class="col-6 text-end"></dd>
|
||||
<dd class="col-6 text-end"><span id="totalAntesDescuento" class="autonumeric-resumen-currency"></span></span>
|
||||
<dt class="col-5 py-1 fw-normal text-end">Descuento (%)</dt>
|
||||
<dd id="dd" class="col-3 text-end py-1"><input id="total_descuentoPercent" type="number" value="" class="update-totales form-control" style="width:100% !important;"></dd>
|
||||
<dd id="descuentoTotal" class="col-3 py-1 text-end"></dd>
|
||||
<dd class="col-3 py-1 text-end "><span id="descuentoTotal" class="autonumeric-resumen-currency"></span></dd>
|
||||
<dt class="col-5 text-end">Total presupuesto</dt>
|
||||
<dd id="totalDespuesDecuento" class="col-6 fw-semibold text-end"></dd>
|
||||
<dd class="col-6 text-end"><span id="totalDespuesDecuento" class="fw-semibold autonumeric-resumen-currency"></span></dd>
|
||||
<dt class="col-5 fw-normal text-end">Precio unidad</dt>
|
||||
<dd id="precioUnidadPresupuesto" class="col-6 text-end mb-2"></dd>
|
||||
<dd class="col-6 text-end mb-2"><span id="precioUnidadPresupuesto" class="autonumeric-resumen-currency-4"></span></dd>
|
||||
<dt class="col-5 fw-normal text-end" style="font-size: smaller !important;">Factor</dt>
|
||||
<dd id="factor" class="col-6 text-end mb-2" style="font-size: smaller !important;"></dd>
|
||||
<dd class="col-6 text-end mb-2 "><span id="factor" class="autonumeric-resumen-2" style="font-size: smaller !important;"></span></dd>
|
||||
<dt class="col-5 fw-normal text-end" style="font-size: smaller !important;">Factor Ponderado</dt>
|
||||
<dd id="factor_ponderado" class="col-6 text-end mb-0" style="font-size: smaller !important;"></dd>
|
||||
<dd class="col-6 text-end mb-0"><span id="factor_ponderado" class="autonumeric-resumen-2" style="font-size: smaller !important;"></span></dd>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="d-grid float-end mb-4">
|
||||
@ -98,7 +98,7 @@
|
||||
<label for="totalAceptado" class="form-label">
|
||||
<?= lang('Presupuestos.totalAceptado') ?>
|
||||
</label>
|
||||
<input disabled type="text" id="totalAceptado" name="totalAceptado" class="form-control" value="" <?php echo ($tipo_impresion_id == 21) ? ' max=80' : '' ?>>
|
||||
<input disabled type="text" id="totalAceptado" name="totalAceptado" class="form-control autonumeric-resumen-currency" value="" <?php echo ($tipo_impresion_id == 21) ? ' max=80' : '' ?>>
|
||||
</div><!--//.mb-3 -->
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
<div class="accordion accordion-bordered mt-3 col-xl-8" id="accordionTiradas">
|
||||
<div class="accordion accordion-bordered mt-3" id="accordionTiradas">
|
||||
<div class="card accordion-item active">
|
||||
<h2 class="accordion-header" id="headingOne">
|
||||
<button type="button" class="accordion-button" data-bs-toggle="collapse"
|
||||
|
||||
@ -66,9 +66,17 @@
|
||||
<?php if ($presupuestoEntity->estado_id == 2) : ?>
|
||||
<?= view("themes/vuexy/components/dropzone",data: ['id' => 'dropzone-presupuesto-admin-files','modelId' => $presupuestoId]) ?>
|
||||
<?php endif ?>
|
||||
<?= view("themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems") ?>
|
||||
<?= view("themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems") ?>
|
||||
|
||||
<div class="container">
|
||||
<div class="row px-0">
|
||||
<div class="col-xl-4" style="padding-left: 0;">
|
||||
<?= view("themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems") ?>
|
||||
</div>
|
||||
<div class="col-xl-8" style="padding-right: 0;">
|
||||
<?= view("themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems") ?>
|
||||
<?= view("themes/vuexy/form/presupuestos/admin/_resumenCreditoItems") ?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php else: ?>
|
||||
<input type="hidden" name="total_presupuesto" id="total_presupuesto" class="form-control"
|
||||
value="0.0"></input>
|
||||
|
||||
Reference in New Issue
Block a user