From 364b9f8ccd33059b1b374f4e5d8974e6c3510746 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Jim=C3=A9nez?= Date: Mon, 30 Jun 2025 16:25:42 +0200 Subject: [PATCH] =?UTF-8?q?coste-margen=20de=20clicks=20y=20horas=20en=20l?= =?UTF-8?q?as=20lineas=20y=20a=C3=B1adidos=20colores.=20se=20toca=20resume?= =?UTF-8?q?n=20para=20que=20todo=20cuadrea=20con=20lo=20nuevo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ci4/app/Language/es/Presupuestos.php | 9 ++- ci4/app/Services/PresupuestoService.php | 1 + .../sections/lineasPresupuesto.js | 60 ++++++++------- .../presupuestoAdmin/sections/resumen.js | 2 +- httpdocs/themes/vuexy/css/sk-datatables.css | 75 ++++++++++++++----- 5 files changed, 98 insertions(+), 49 deletions(-) diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php index dae270ef..71bbf68b 100755 --- a/ci4/app/Language/es/Presupuestos.php +++ b/ci4/app/Language/es/Presupuestos.php @@ -161,11 +161,14 @@ return [ 'lomo' => 'Lomo', 'lomoRedondo' => 'Lomo redondo', 'peso' => 'Peso', - 'click' => 'Click', + 'click' => 'Click (C+M)', 'totalClicks' => 'Total clicks', + 'costeClicks' => 'Coste clicks', + 'totalClicksMargen' => 'Marge clicks', 'horas' => 'Horas máquina', - 'precioHora' => 'Precio hora', - 'precioImpresion' => 'Total horas', + 'precioHora' => 'Precio hora (C+M)', + 'precioImpresion' => 'Coste horas', + 'precioImpresionMargen' => 'Margen horas', 'precioPagNegro' => 'Precio pág. negro', 'precioPagColor' => 'Precio pág. color', 'totalTinta' => 'Total tinta', diff --git a/ci4/app/Services/PresupuestoService.php b/ci4/app/Services/PresupuestoService.php index b4d6b89f..999d787c 100755 --- a/ci4/app/Services/PresupuestoService.php +++ b/ci4/app/Services/PresupuestoService.php @@ -396,6 +396,7 @@ class PresupuestoService extends BaseService ); // impresion + // num_total_clicks = pliegos_pedido * 2 cuando son a doble cara if ($uso == 'guardas') { if (floatval($datosPedido->paginas_impresion) == 0) $precio_click_pedido = 0; diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js index edbf24e3..1711e693 100644 --- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js +++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js @@ -1075,56 +1075,62 @@ class LineasPresupuesto { '' + '' + '' + - '
' + - '
' + - window.language.Presupuestos.numeroPliegos + + '
' + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.pliegosPedido + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.precioPliego + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.libro + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.totalPapelPedido + + '
' + + '' + '' + '
' + '' + '
' + '' + '
' + - '
' + - window.language.Presupuestos.click + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.totalClicks + - '' + + '
' + + '' + + '' + '
' + - '
' + - window.language.Presupuestos.horas + + '
' + + '' + + '' + + '
' + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.precioHora + + '
' + + '' + '' + '
' + - '
' + - window.language.Presupuestos.precioImpresion + - '' + + '
' + + '' + + '' + + '
' + + '
' + + '' + + '' + '
' + '
' + '' + '
' + - '' + - '' + '
' + '' @@ -1332,11 +1338,11 @@ class LineasPresupuesto { '
' + '
' + window.language.Presupuestos.totalTinta + - '' + + '' + '
' + (d.row_id.includes('rot') ? '
' : '' + '
' + 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 855f9bd1..18c2dcca 100644 --- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js +++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js @@ -171,7 +171,7 @@ class Resumen { }) } - totalImpresion -= parseFloat(margenImpresion); + //totalImpresion -= parseFloat(margenImpresion); totalPapel -= parseFloat(margenPapel); margenImpresion += parseFloat(margenPorHoras) + parseFloat(costeMaquinaHoras); diff --git a/httpdocs/themes/vuexy/css/sk-datatables.css b/httpdocs/themes/vuexy/css/sk-datatables.css index 8b182e2c..4a1ed5da 100644 --- a/httpdocs/themes/vuexy/css/sk-datatables.css +++ b/httpdocs/themes/vuexy/css/sk-datatables.css @@ -48,10 +48,10 @@ table.dataTable.table-hover>tbody>tr.selected:hover>* { -.lp-cell { - padding-left: 1px; - padding-right: 1px; - margin:0; +.lp-cell { + padding-left: 1px; + padding-right: 1px; + margin: 0; } .lp-input { @@ -69,25 +69,32 @@ table.dataTable.table-hover>tbody>tr.selected:hover>* { } .lp-td { - padding-left: 1px; - padding-right: 1px; - margin:0 !important; + padding-left: 1px; + padding-right: 1px; + margin: 0 !important; } -.lp-header { +.lp-header { text-align: center !important; - padding-left: 1px !important; - padding-right: 1px !important; - padding-top: 1px !important; - padding-bottom: 5px !important; - margin:0 !important; + padding-left: 1px !important; + padding-right: 1px !important; + padding-top: 1px !important; + padding-bottom: 5px !important; + margin: 0 !important; } .lp-cell-disabled { background-color: lavenderblush; } -.lp-button{ +.lp-cell-coste { + background-color: rgb(196, 172, 172); +} +.lp-cell-margen { + background-color: rgb(195, 218, 199); +} + +.lp-button { /*font-size: 1.1em;*/ padding-left: 3px; padding-right: 3px; @@ -109,20 +116,20 @@ div.draw-rot-shapes { margin: 2.5% auto; } -.table-servicios{ +.table-servicios { overflow-x: scroll; overflow-y: hidden; white-space: nowrap; } - + .column-input-search { min-width: 100px; max-width: 120px; - font-size: 0.8rem !important; + font-size: 0.8rem !important; } /* CSS class to remove number input spinner */ -.no-spinner { +.no-spinner { /* For Firefox */ -moz-appearance: textfield; } @@ -131,4 +138,36 @@ div.draw-rot-shapes { .no-spinner::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; +} + +.lp-row { + display: flex; + flex-wrap: wrap; + gap: 4px; + overflow-x: auto; + align-items: end; +} + +.lp-cell-auto { + display: flex; + flex-direction: column; + flex: 0 0 auto; + /* solo lo que necesita */ + margin-inline: 2px; + min-width: 40px; + /* controla hasta dónde puede encoger */ +} + +.lp-cell-auto label { + font-size: 0.65rem; + text-align: center; + margin-bottom: 2px; + line-height: 1; +} + +.lp-cell-auto input { + text-align: center; + min-width: 50px; + width: 100%; + border-radius: 0.25rem !important; } \ No newline at end of file