diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php
index 71bbf68b..6e294c6b 100755
--- a/ci4/app/Language/es/Presupuestos.php
+++ b/ci4/app/Language/es/Presupuestos.php
@@ -171,8 +171,8 @@ return [
'precioImpresionMargen' => 'Margen horas',
'precioPagNegro' => 'Precio pág. negro',
'precioPagColor' => 'Precio pág. color',
- 'totalTinta' => 'Total tinta',
- 'totalCorte' => 'Total corte',
+ 'totalTinta' => 'Total tinta (C+M)',
+ 'totalCorte' => 'Total corte (C+M)',
'total' => 'Total',
'totalLinea' => 'Total Precio Línea',
'aFavorFibra' => 'A favor de fibra',
@@ -239,8 +239,6 @@ return [
'gTintaCG' => 'G. tinta CG',
'clicksPedido' => 'Clicks Pedido',
'totalClicks' => 'Total Clicks',
- 'totalTinta' => 'Total Tinta',
- 'totalCorte' => 'Total Corte',
'totalImpresion' => 'Total máquina',
'velocidadCorte' => 'Velocidad corte',
'precioHoraCorte' => 'Precio hora corte',
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php
index 31a2a04b..7aae8cc5 100755
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_resumenPresupuestoItems.php
@@ -24,14 +24,64 @@
- Coste impresión
+
+
+
+
+ Coste impresión
+
- Margen impresión
+
+ Coste clicks
+
+
+
+
+ Coste horas
+
+
+
+
+ Coste tinta
+
+
+
+
+ Coste corte
+
+
+
+
+
+
+
+ Margen impresión
+
+ class="autonumeric-resumen-currency">
+
+ Margen clicks
+
+
+
+
+ Margen horas
+
+
+
+
+ Margen tinta
+
+
+
+
+ Margen corte
+
+
+
Coste servicios
Margen envío
- Total envío base
-
@@ -64,6 +111,9 @@
class="autonumeric-resumen-percent">
+ Total envío base
+
@@ -152,7 +202,7 @@
class="form-control text-center fs-5 autonumeric-resumen-currency" value="" >
-
+
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js
index 1711e693..1d0c737d 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js
@@ -1122,7 +1122,7 @@ class LineasPresupuesto {
'
' +
'' +
'' +
- '' +
+ '' +
'
' +
'' +
'' +
@@ -1338,11 +1338,11 @@ class LineasPresupuesto {
'
' +
'' +
window.language.Presupuestos.totalTinta +
- '' +
+ '' +
'
' +
(d.row_id.includes('rot') ? '' : '
') +
window.language.Presupuestos.totalCorte +
- '' +
+ '' +
'
' +
'
' +
window.language.Presupuestos.totalImpresion +
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
index 18c2dcca..01d47416 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
@@ -107,6 +107,7 @@ class Resumen {
async updateTotales(data = {}, ajustar = false) {
const self = this;
+ const MARGEN_TINTA_CORTE = 0.23;
let updateLP = data.updateLP || true;
let updateServicios = data.updateServicios || true;
@@ -115,8 +116,15 @@ class Resumen {
let margenPapel = 0;
let totalImpresion = 0;
- let totalImpresionforMargen = 0;
+ let totalCosteClicks = 0;
+ let totalCosteHoras = 0;
+ let totalCosteTinta = 0;
+ let totalCosteCorte = 0;
let margenImpresion = 0;
+ let totalMargenClicks = 0;
+ let totalMargenHoras = 0;
+ let totalMargenTinta = 0;
+ let totalMargenCorte = 0;
let totalServicios = parseFloat(0);
let margenServicios = parseFloat(0);
@@ -129,9 +137,6 @@ class Resumen {
let sumForFactorPonderado = 0.0;
- let costeMaquinaHoras = 0.0;
- let margenPorHoras = 0.0;
-
if (updateLP) {
if (typeof $("#tableLineasPresupuesto").DataTable() !== 'undefined') {
@@ -148,16 +153,21 @@ class Resumen {
}
if (rowData.check_impresion_total) {
- costeMaquinaHoras += parseFloat($('#' + rowData.row_id + '_precioImpresion').val())
- margenPorHoras += parseFloat($('#' + rowData.row_id + '_margenImpresion').val())
- totalImpresion += parseFloat($('#' + rowData.row_id + '_totalClicks').val())
- margenImpresion += parseFloat($('#' + rowData.row_id + '_margenClicks').val())
+ totalCosteHoras += parseFloat($('#' + rowData.row_id + '_precioImpresion').val())
+ totalMargenHoras += parseFloat($('#' + rowData.row_id + '_margenImpresion').val())
+ totalCosteClicks += parseFloat($('#' + rowData.row_id + '_totalClicks').val())
+ totalMargenClicks += parseFloat($('#' + rowData.row_id + '_margenClicks').val())
//sumForFactor += parseFloat($('#' + rowData.row_id + '_totalClicks').val())
if (rowData.maquinaTipo == 'inkjet') {
- totalImpresion += parseFloat(rowData.totalTinta)
- totalImpresion += parseFloat(rowData.totalCorte) ?? 0;
+ let tinta = parseFloat($('#' + rowData.row_id + '_totalTinta').val()) || 0;
+ let corte = parseFloat($('#' + rowData.row_id + '_totalCorte').val()) || 0;
+
+ totalCosteTinta += tinta/(1+ MARGEN_TINTA_CORTE);
+ totalCosteCorte += corte/(1+ MARGEN_TINTA_CORTE);
+ totalMargenTinta += (tinta - tinta/(1+ MARGEN_TINTA_CORTE));
+ totalMargenCorte += (corte - corte/(1+ MARGEN_TINTA_CORTE));
//sumForFactor += (parseFloat(rowData.totalTinta) + parseFloat(rowData.totalCorte))
}
@@ -174,7 +184,8 @@ class Resumen {
//totalImpresion -= parseFloat(margenImpresion);
totalPapel -= parseFloat(margenPapel);
- margenImpresion += parseFloat(margenPorHoras) + parseFloat(costeMaquinaHoras);
+ totalImpresion += totalCosteClicks + totalCosteHoras + totalCosteTinta + totalCosteCorte;
+ margenImpresion += totalMargenClicks + totalMargenHoras + totalMargenTinta + totalMargenCorte;
sumForFactor += totalImpresion;
sumForFactor += totalPapel;
@@ -187,10 +198,18 @@ class Resumen {
$('#margenPapel').val(margenPapel.toFixed(2))
$('#margenPapel').html(margenPapel)
- let porcentajeMargenImpresion = isNaN(margenImpresion / (totalImpresion) * 100.0) ? 0 : margenImpresion / (totalImpresion) * 100.0
- $('#porcentajeMargenImpresion').html(porcentajeMargenImpresion).val(porcentajeMargenImpresion.toFixed(2))
- $('#totalCosteImpresion').html(totalImpresion).val(totalImpresion.toFixed(2))
- $('#margenImpresion').html(margenImpresion).val(margenImpresion.toFixed(2))
+ let porcentajeMargenImpresion = isNaN(margenImpresion / (totalImpresion) * 100.0) ? 0 : margenImpresion / (totalImpresion) * 100.0;
+ $('#porcentajeMargenImpresion').html(porcentajeMargenImpresion).val(porcentajeMargenImpresion.toFixed(2));
+ $('#totalCosteImpresion').html(totalImpresion).val(totalImpresion.toFixed(2));
+ $('#totalCosteClicks').html(totalCosteClicks).val(totalCosteClicks.toFixed(2));
+ $('#totalCosteHoras').html(totalCosteHoras).val(totalCosteHoras.toFixed(2));
+ $('#totalCosteTinta').html(totalCosteTinta).val(totalCosteTinta.toFixed(2));
+ $('#totalCosteCorte').html(totalCosteCorte).val(totalCosteCorte.toFixed(2));
+ $('#margenImpresion').html(margenImpresion).val(margenImpresion.toFixed(2));
+ $('#totalMargenClicks').html(totalMargenClicks).val(totalMargenClicks.toFixed(2));
+ $('#totalMargenHoras').html(totalMargenHoras).val(totalMargenHoras.toFixed(2));
+ $('#totalMargenTinta').html(totalMargenTinta).val(totalMargenTinta.toFixed(2));
+ $('#totalMargenCorte').html(totalMargenCorte).val(totalMargenCorte.toFixed(2));
}
@@ -364,8 +383,13 @@ class Resumen {
if ($('#total_descuentoPercent').val() < 0) {
$('#total_descuentoPercent').val(0)
}
+
let totalAntesDescuento = totalCostes + totalMargenes + totalEnvios_base;
- let totalDescuento = totalAntesDescuento * parseFloat($('#total_descuentoPercent').val() || 0) / 100
+ let totalDescuento = totalAntesDescuento * parseFloat($('#total_descuentoPercent').val() || 0) / 100;
+ if(totalDescuento > totalMargenes){
+ totalDescuento = totalMargenes;
+ $('#total_descuentoPercent').val((totalDescuento / totalAntesDescuento * 100).toFixed(0));
+ }
let totalPresupuesto = totalAntesDescuento - totalDescuento; // para el calculo del precio_u solo se tiene en cuenta el base
let precioUnidad = totalPresupuesto / parseInt($('#tirada').val())