diff --git a/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php b/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php index 2b83b03a..e7e8df63 100755 --- a/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php +++ b/ci4/app/Controllers/Presupuestos/Cosidotapablanda.php @@ -1074,7 +1074,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController protected function getPapelGenericoCubierta() { $model = model('App\Models\Configuracion\PapelGenericoModel'); - $data = $model->getPapelForComparador('color', true, false); + $data = $model->getPapelForComparador('colorhq', true, false); array_unshift($data, (object)array( "id" => 0, "nombre" => lang('Basic.global.pleaseSelectA', [mb_strtolower(lang('Presupuestos.papel'))]) @@ -1085,7 +1085,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController protected function getPapelGenericoSobreCubierta() { $model = model('App\Models\Configuracion\PapelGenericoModel'); - $data = $model->getPapelForComparador('color', false, true); + $data = $model->getPapelForComparador('colorhq', false, true); array_unshift($data, (object)array( "id" => 0, "nombre" => lang('Basic.global.pleaseSelectA', [mb_strtolower(lang('Presupuestos.papel'))]) diff --git a/ci4/app/Controllers/Test.php b/ci4/app/Controllers/Test.php index 8a36a7c0..187d0d2f 100755 --- a/ci4/app/Controllers/Test.php +++ b/ci4/app/Controllers/Test.php @@ -17,9 +17,9 @@ class Test extends BaseController public function index() { - $model = model('App\Models\Clientes\ClientePreciosModel') ; + echo '
';
-        var_dump($model->update_from_plantilla(5));
+        $this->getPapelesCubierta();
         echo '
'; /* echo '
';
@@ -116,6 +116,13 @@ class Test extends BaseController
         var_dump($data);
     }
 
+    public function getPapelesCubierta(){
+        $model = model('App\Models\Configuracion\PapelGenericoModel');
+        $data = $model->getPapelForComparador('colorhq', true, false);
+
+        var_dump($data);
+    }
+
     public function getGramaje(){
         $model = new PapelGenericoModel();
         $data = $model->getGramajeComparador("AHUESADO OFFSET", "bnhq" );
diff --git a/ci4/app/Models/Configuracion/PapelGenericoModel.php b/ci4/app/Models/Configuracion/PapelGenericoModel.php
index 4d412398..e8d1c99a 100755
--- a/ci4/app/Models/Configuracion/PapelGenericoModel.php
+++ b/ci4/app/Models/Configuracion/PapelGenericoModel.php
@@ -93,7 +93,7 @@ class PapelGenericoModel extends \App\Models\GoBaseModel
     }
 
 
-    public function getPapelForComparador($tipo, $is_cubierta = null, $is_sobrecubierta = null, $rotativa = null)
+    public function getPapelForComparador($tipo, $is_cubierta = false, $is_sobrecubierta = false, $rotativa = false)
     {
         /*
         1.-> Tipo impresion
@@ -105,6 +105,7 @@ class PapelGenericoModel extends \App\Models\GoBaseModel
             ->table($this->table . " t1")
             ->select(
                 "t1.id as id, t1.nombre AS nombre"
+                // for debug, t2.nombre AS nombre_papel_impresion, t4.nombre AS maquina_nombre, t5.uso AS tarifa_uso, t5.tipo AS tarifa_tipo"
             )
             ->distinct('t1.id')
             ->join("lg_papel_impresion t2", "t2.papel_generico_id = t1.id", "left")
@@ -114,36 +115,48 @@ class PapelGenericoModel extends \App\Models\GoBaseModel
 
             ->where("t1.is_deleted", 0)
             ->where("t2.is_deleted", 0)
+            ->where("t2.isActivo", 1)
             ->where("t3.active", 1)
             ->where("t4.is_deleted", 0)
             ->where("t4.tipo", "impresion")
+            ->where("t5.is_deleted", 0)
             ->where("t5.tipo", $tipo);
 
-            if(!is_null($is_cubierta)){
-                if($is_cubierta==true){
+            if($is_cubierta==true){
+                
                     $builder->where("t2.cubierta", 1);
-                }
+                    $builder->where("t5.uso", 'cubierta');
+            }
+            else{
+                $builder->where("t2.cubierta", 0);
+                $builder->where("t5.uso", 'interior');
             }
             
-            if(!is_null($is_sobrecubierta)){
-                if($is_sobrecubierta==true){
+            if($is_sobrecubierta==true){
                     $builder->where("t2.sobrecubierta", 1);
-                }
+                    $builder->where("t5.uso", 'sobrecubierta');
+            }
+            else{
+                $builder->where("t2.sobrecubierta", 0);
             }
 
-            if(!is_null($rotativa)){
-                if($rotativa==true){
+            if($is_cubierta==false && $is_sobrecubierta==false){
+                $builder->where("t5.uso", 'interior');
+            }
+
+            if($rotativa==true){
                     $builder->where("t2.rotativa", 1);
-                }
             }
 
-        return $builder->orderBy("t1.nombre", "asc")->get()->getResultObject();
+        $data = $builder->orderBy("t1.nombre", "asc")->get()->getResultObject();
+        //var_dump($this->db->getLastQuery());
+        return $data;
     }
 
     public function getGramajeComparador(string $papel_generico_nombre="", $uso="")
     {
         if($uso == 'cubierta' || $uso == 'sobrecubierta')
-            $tipo = 'color';
+            $tipo = 'colorhq';
         else
             $tipo=$uso; // color y colorhq valen para los dos
         if($uso == 'bn')
diff --git a/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoClienteItems.php b/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoClienteItems.php
index 0d849206..4107e5a4 100755
--- a/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoClienteItems.php
+++ b/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_datosPresupuestoClienteItems.php
@@ -1076,10 +1076,12 @@
             $('#tableCompIntRotativa').DataTable().clear().draw();
             $('#total_comp_rot').html("0.00");
 
-            if($('#tipoImpresion').select2('data')[0].id == 'negro'){
-                $('#compPaginasColor').val('0')
-                $('#compPaginasNegro').val($('#paginas').val())
-            }
+            
+            $('#compPaginasColor').val('0')
+            $('#compPaginasColorhq').val('0')
+            $('#compPaginasNegrohq').val('0');
+            $('#compPaginasNegro').val($('#paginas').val())
+            
 
             if( $('#tableCompIntPlana').DataTable().rows().count() > 0 &&
                 $('#tableCompIntPlana').DataTable().cell(0, 0).data().includes('hq')) {
@@ -1095,12 +1097,11 @@
             $('#tableCompIntRotativa').DataTable().clear().draw();
             $('#total_comp_rot').html("0.00");
 
-            if($('#tipoImpresion').select2('data')[0].id == 'negrohq'){
-                $('#compPaginasColorhq').val('0')
-                $('#compPaginasNegrohq').val($('#paginas').val())
-                $('#compGramajeNegohq').change().trigger()
-            }
-
+            $('#compPaginasColorhq').val('0')
+            $('#compPaginasColor').val('0')
+            $('#compPaginasNegro').val('0')
+            $('#compPaginasNegrohq').val($('#paginas').val())
+            
             if($('#tableCompIntPlana').DataTable().rows().count() > 0 &&
                 !$('#tableCompIntPlana').DataTable().cell(0, 0).data().includes('hq')) {
 
@@ -1112,7 +1113,7 @@
 
     $('#tipoImpresion').on("select2:close", function () {
 
-        $('#paginas').change(),trigger();
+        $('#paginas').change()
     })
 
 
diff --git a/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_lineasPresupuestoItems.php b/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_lineasPresupuestoItems.php
index 54c898ee..bcdbe9e5 100755
--- a/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_lineasPresupuestoItems.php
+++ b/ci4/app/Views/themes/backend/vuexy/form/presupuestos/cosidotapablanda/_lineasPresupuestoItems.php
@@ -44,10 +44,6 @@
                         
                     
 
-                    
- -
-
@@ -77,6 +73,13 @@ section("additionalInlineJs") ?> const papelGenericoNegroList = ; +const papelGenericoNegroHQList = ; +const papelGenericoColorList = ; +const papelGenericoColorHQList = ; +const papelGenericoCubiertaList = ; +const papelGenericoSobrecubiertaList = ; +const papelGenericoRotativaNegroList = ; +const papelGenericoRotativaColorList = ; // Formatting function for row details - modify as you need @@ -188,7 +191,7 @@ function format(d) { '
' + '
' + '' + - '' + + '' + '
' + '
' + '' + @@ -357,7 +360,7 @@ const lastColNr_lp = $('#tableLineasPresupuesto').find("tr:first th").length - 1 const actionBtns_lp = function(data) { return ` - + `; }; @@ -410,7 +413,20 @@ var tableLineasPresupuesto = new DataTable('#tableLineasPresupuesto',{ }, {data: 'paginas', render: function ( data, type, row, meta ) { - return ''; + if(row.row_id != "lp_cubierta" && row.row_id != "lp_sobrecubierta") + return ''; + else if(row.row_id == "lp_cubierta"){ + return ' \ + \ + '; + } } }, {data: 'papel', @@ -425,6 +441,28 @@ var tableLineasPresupuesto = new DataTable('#tableLineasPresupuesto',{ if(row.row_id == 'lp_bn'){ papelList = papelGenericoNegroList } + else if (row.row_id == 'lp_bnhq'){ + papelList = papelGenericoNegroHQList + } + else if (row.row_id == 'lp_color'){ + papelList = papelGenericoColorList + } + else if (row.row_id == 'lp_colorhq'){ + papelList = papelGenericoColorHQList + } + else if (row.row_id == 'lp_cubierta'){ + papelList = papelGenericoCubiertaList + } + else if (row.row_id == 'lp_sobrecubierta'){ + papelList = papelGenericoSobrecubiertaList + } + else if (row.row_id == 'lp_rot_bn'){ + papelList = papelGenericoRotativaNegroList + } + else if (row.row_id == 'lp_rot_color'){ + papelList = papelGenericoRotativaColorList + } + papelList.forEach((element) => { var option if(element.id == data) @@ -442,7 +480,7 @@ var tableLineasPresupuesto = new DataTable('#tableLineasPresupuesto',{ var select = $('') .attr('id', row.row_id + '_papelImpresion') .attr('name', row.row_id + '_papelImpresion') - .addClass('form-control form-select-sm lp-cell lp-select ' + row.class + '-select') + .addClass('form-control form-select-sm lp-cell lp-select ' + row.row_class + '-select') .css('min-width', '150px') var option = ''; @@ -470,7 +508,7 @@ var tableLineasPresupuesto = new DataTable('#tableLineasPresupuesto',{ var select = $(''; + return ''; } }, {data: 'lomo', render: function ( data, type, row, meta ) { - return ''; + return ''; } }, {data: 'peso', render: function ( data, type, row, meta ) { - return ''; + return ''; } }, {data: 'total_linea', render: function ( data, type, row, meta ) { - return ''; + return ''; } }, { @@ -506,6 +544,16 @@ var tableLineasPresupuesto = new DataTable('#tableLineasPresupuesto',{ ] }); +$(document).on('click', '.btn-delete-lp', function(e) { + + const row = $(this).closest('tr'); + tableLineasPresupuesto.row( row ) + .remove() + .draw(); + updateTotales() +}) + + // Add event listener for opening and closing details tableLineasPresupuesto.on('click', 'td.dt-control', function (e) { @@ -550,11 +598,19 @@ function processRowData(row, rowId, rowClass){ else icon = '' } + else if(rowId=='lp_color'){ + if(row.tipo_maquina=='toner') + icon = '' + else + icon = '' + } + else if(rowId=='lp_colorhq'){ + if(row.tipo_maquina=='toner') + icon = '' + else + icon = '' + } - else if(rowId=='lp_color') - icon = '' - else if(rowId=='lp_colorhq') - icon = '' else if(rowId=='lp_cubierta') icon = '' else if(rowId=='lp_sobrecubierta') @@ -564,30 +620,31 @@ function processRowData(row, rowId, rowClass){ else if(rowId=='lp_rot_color') icon = '' + const blank_line = (typeof row.tarifa_impresion_id === 'undefined')?1:0; var data = { 'row_id': rowId, - 'class': rowClass, + 'row_class': rowClass, - 'tarifa_impresion_id': isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id), - 'maquina_ancho': isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0]), - 'maquina_alto': isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1]), - 'maquina_impresion_ancho': isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0]), - 'maquina_impresion_alto': isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1]), - 'formas': isNaN(parseInt(row.num_formas.value)) ? 0 : parseInt(row.num_formas.value), - 'formas_v': isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? 0 : parseInt(row.num_formas.num_formas_horizontales), - 'formas_h': isNaN(parseInt(row.num_formas.num_formas_verticales)) ? 0 : parseInt(row.num_formas.num_formas_verticales), - 'formas_orientacion': row.num_formas.posicion_formas, + 'tarifa_impresion_id': blank_line?0:isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id), + 'maquina_ancho': blank_line?0:isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0]), + 'maquina_alto': blank_line?0:isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1]), + 'maquina_impresion_ancho': blank_line?0:isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0]), + 'maquina_impresion_alto': blank_line?0:isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1]), + 'formas': blank_line?0:isNaN(parseInt(row.num_formas.value)) ? 0 : parseInt(row.num_formas.value), + 'formas_v': blank_line?0:isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? 0 : parseInt(row.num_formas.num_formas_horizontales), + 'formas_h': blank_line?0:isNaN(parseInt(row.num_formas.num_formas_verticales)) ? 0 : parseInt(row.num_formas.num_formas_verticales), + 'formas_orientacion': blank_line?0:row.num_formas.posicion_formas, 'icon': icon, - 'paginas': row.paginas, - 'papel': row.papel_generico_id, - 'gramaje': row.gramaje, - 'papel_impresion': row.papel_impresion, - 'papel_impresion_id': row.papel_impresion_id, - 'maquina': row.maquina, - 'maquina_id': row.maquina_id, + 'paginas': blank_line?0:row.paginas, + 'papel': blank_line?"":row.papel_generico_id, + 'gramaje': blank_line?"":row.gramaje, + 'papel_impresion': blank_line?"":row.papel_impresion, + 'papel_impresion_id': blank_line?"":row.papel_impresion_id, + 'maquina': blank_line?"":row.maquina, + 'maquina_id': blank_line?"":row.maquina_id, - 'tiempo': row.tiempo_maquina, + 'tiempo': blank_line?"":row.tiempo_maquina, 'lomo': isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2), 'peso': isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2), @@ -607,62 +664,68 @@ function processRowData(row, rowId, rowClass){ 'maquinaTipo': row.tipo_maquina, } + if(row.tipo_maquina=='inkjet'){ + + data.aFavorFibra = row.a_favor_fibra + data.cobNegro = isNaN(parseFloat(row.datosTipologias.negro)) ? "" : parseFloat(row.datosTipologias.negro).toFixed(0) + data.cobCyan = isNaN(parseFloat(row.datosTipologias.cyan)) ? "" : parseFloat(row.datosTipologias.cyan).toFixed(0) + data.cobMagenta = isNaN(parseFloat(row.datosTipologias.magenta)) ? "" : parseFloat(row.datosTipologias.magenta).toFixed(0) + data.cobAmarillo = isNaN(parseFloat(row.datosTipologias.amarillo)) ? "" : parseFloat(row.datosTipologias.amarillo).toFixed(0) + data.gotaNegro = isNaN(parseFloat(row.datosTipologias.gota_negro)) ? "" : parseFloat(row.datosTipologias.gota_negro).toFixed(0) + data.gotaColor = isNaN(parseFloat(row.datosTipologias.gota_color)) ? "" : parseFloat(row.datosTipologias.gota_color).toFixed(0) + + data.resolucion = isNaN(parseFloat(row.resolucion)) ? "" : parseFloat(row.resolucion).toFixed(0) + data.areaPaginas = isNaN(parseFloat(row.superficie)) ? "" : parseFloat(row.superficie).toFixed(2) + + data.gotasNegro = isNaN(parseFloat(row.num_gotas_negro)) ? "" : parseFloat(row.num_gotas_negro).toFixed(0) + data.gotasCyan = isNaN(parseFloat(row.num_gotas_cyan)) ? "" : parseFloat(row.num_gotas_cyan).toFixed(0) + data.gotasMagenta = isNaN(parseFloat(row.num_gotas_magenta)) ? "" : parseFloat(row.num_gotas_magenta).toFixed(0) + data.gotasAmarillo = isNaN(parseFloat(row.num_gotas_amarillo)) ? "" : parseFloat(row.num_gotas_amarillo).toFixed(0) + data.precioPagNegro = isNaN(parseFloat(row.precio_pagina_negro)) ? "" : parseFloat(row.precio_pagina_negro).toFixed(6) + data.precioPagColor = isNaN(parseFloat(row.precio_pagina_color)) ? "" : parseFloat(row.precio_pagina_color).toFixed(6) + data.factorAltura = isNaN(parseFloat(row.factor_altura)) ? "" : parseFloat(row.factor_altura).toFixed(2) + data.factorAnchura = isNaN(parseFloat(row.factor_anchura)) ? "" : parseFloat(row.factor_anchura).toFixed(2) + data.paginasPliego = isNaN(parseFloat(row.paginas_por_pliego)) ? "" : parseFloat(row.paginas_por_pliego).toFixed(2) + + if(rowId.includes('rot')){ + data.metrosMinuto = isNaN(parseFloat(row.maquina_velocidad)) ? "" : parseFloat(row.maquina_velocidad).toFixed(2) + data.metrosPapelLibro = isNaN(parseFloat(row.metros_papel_libro)) ? "" : parseFloat(row.metros_papel_libro).toFixed(2) + data.metrosPapelTotal = isNaN(parseFloat(row.metros_papel_total)) ? "" : parseFloat(row.metros_papel_total).toFixed(2) + data.velocidadCorte = isNaN(parseFloat(row.velocidad_corte)) ? "" : parseFloat(row.velocidad_corte).toFixed(2) + data.precioHoraCorte = isNaN(parseFloat(row.precio_hora_corte)) ? "" : parseFloat(row.precio_hora_corte).toFixed(2) + data.tiempoCorte = isNaN(parseFloat(row.tiempo_corte)) ? "" : parseFloat(row.tiempo_corte).toFixed(2) + data.totalCorte = isNaN(parseFloat(row.total_corte)) ? "" : parseFloat(row.total_corte).toFixed(2) + } + else{ + data.totalCorte = 0 + } + + + + + data.clicksLibro = isNaN(parseFloat(row.clicks_libro)) ? "" : parseFloat(row.clicks_libro).toFixed(0) + data.gTintaNegro = isNaN(parseFloat(row.peso_gotas_negro)) ? "" : parseFloat(row.peso_gotas_negro).toFixed(2) + data.gTintaCyan = isNaN(parseFloat(row.peso_gotas_cyan)) ? "" : parseFloat(row.peso_gotas_cyan).toFixed(2) + data.gTintaMagenta = isNaN(parseFloat(row.peso_gotas_magenta)) ? "" : parseFloat(row.peso_gotas_magenta).toFixed(2) + data.gTintaAmarillo = isNaN(parseFloat(row.peso_gotas_amarillo)) ? "" : parseFloat(row.peso_gotas_amarillo).toFixed(2) + data.clicksPedido = isNaN(parseFloat(row.clicks_pedido)) ? "" : parseFloat(row.clicks_pedido).toFixed(0) + data.totalClicksPedido = isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2) + data.totalTinta = isNaN(parseFloat(row.precio_tinta)) ? "" : parseFloat(row.precio_tinta).toFixed(2) + + data.totalImpresion = isNaN(parseFloat(row.precio_click_pedido+row.precio_tinta+data.totalCorte)) ? "" : parseFloat(row.precio_click_pedido+row.precio_tinta+data.totalCorte).toFixed(2) + + data.gTintaNegroPed = isNaN(parseFloat(row.peso_gotas_negro_pedido)) ? "" : parseFloat(row.peso_gotas_negro_pedido).toFixed(2) + data.gTintaCyanPed = isNaN(parseFloat(row.peso_gotas_cyan_pedido)) ? "" : parseFloat(row.peso_gotas_cyan_pedido).toFixed(2) + data.gTintaMagentaPed = isNaN(parseFloat(row.peso_gotas_magenta_pedido)) ? "" : parseFloat(row.peso_gotas_magenta_pedido).toFixed(2) + data.gTintaAmarilloPed = isNaN(parseFloat(row.peso_gotas_amarillo_pedido)) ? "" : parseFloat(row.peso_gotas_amarillo_pedido).toFixed(2) + + + data.alto_click = row.alto_click + } + return data } -$('#test').on('click', function(){ - var data = { - 'row_id': 'lp_bn', - 'class': 'lp-bn', - 'tarifa_impresion_id': 1, - 'maquina_ancho': 350, - 'maquina_alto': 450, - 'maquina_impresion_ancho': 350, - 'maquina_impresion_alto': 450, - 'formas': 8, - 'formas_v': 4, - 'formas_h': 3, - 'formas_orientacion': 'v', - 'icon': '', - 'paginas': '2', - 'papel': 1, - 'gramaje': 90, - 'papel_impresion': "ivory", - 'papel_impresion_id': "10", - 'maquina': "VP iX (500x350)", - 'maquina_id': "4", - 'tiempo': "01:02:04", - 'lomo': 2.23, - 'peso': 12.23, - 'total_linea': 22.34, - 'numeroPliegos':222, - 'pliegosPedido': 123, - 'precioPliego': 456, - 'libro': 789, - 'totalPapelPedido': 555, - 'margenPapelPedido': 123, - 'click': 111, - 'totalClicks': 222, - 'horasMaquina': 333.3, - 'precioHora': 99, - 'precioImpresion': 44.44, - 'maquinaTipo': 'inkjet', - } - - tableLineasPresupuesto.row.add(data).draw(true) - - let row = tableLineasPresupuesto.row('#lp_bn'); - row.child(format(row.data())).show(); - - $('#lp_bn_papel').bind("focus", {clear_selectors: true}, clear_lp_bn); - $('#lp_bn_gramaje').bind("focus", set_lp_bn_gramaje); - $('#lp_bn_papelImpresion').focus("focus", set_lp_bn_papelImpresion); - $('#lp_bn_maquina').bind("focus", set_lp_bn_maquina); - $('#lp_bn_maquina').bind("change", change_lp_bn_maquina); - $('#lp_bn_paginas').bind("change", change_lp_bn_paginas); - $('#lp_bn_paginas').bind("change", change_lp_bn_paginas); - $('#lp_bn_vercalculos').bind("click", {rowId: 'lp_bn'}, verCalculosInkjet); -}) $('#addLineasPresupuesto').val(''); @@ -681,55 +744,41 @@ function verCalculosInkjet(e){ -// Delete row -$(document).on('click', '.btn-delete', function(e) { - const row_id = $(this).closest('tr')[0].id; - $(".btn-remove").attr('row-id', row_id); -}); - - -$(document).on('click', '.btn-remove', function(e) { - const row_id = $(this).attr('row-id') - if(row_id.includes('rot')){ - clear_rotativa(row_id) - } - else if(row_id.includes('cubierta')){ - clear_cubierta() - } - else{ - clear_interior(row_id) - } - $('#confirm2delete').modal('toggle') - updateTotales() -}); - - function clear_interior(row_id = ''){ switch(row_id) { case 'lp_bn': clear_lp_bn(true); - $('#' + row_id).css('display', 'none'); break; case 'lp_color': clear_lp_color(true); - $('#' + row_id).css('display', 'none'); break; case 'lp_bnhq': clear_lp_bnhq(true); - $('#' + row_id).css('display', 'none'); break; case 'lp_colorhq': clear_lp_colorhq(true); - $('#' + row_id).css('display', 'none'); break; default: clear_lp_bn(true); clear_lp_color(true); clear_lp_bnhq(true); clear_lp_colorhq(true); - $('.lp-interior').css('display', 'none'); break; } + if(row_id.length>0) + tableLineasPresupuesto.row( row_id ) + .remove() + .draw(); + else{ + tableLineasPresupuesto.row( '#lp_bn' ) + .remove().draw() + tableLineasPresupuesto.row( '#lp_bnhq' ) + .remove().draw() + tableLineasPresupuesto.row( '#lp_color' ) + .remove().draw() + tableLineasPresupuesto.row( '#lp_colorhq' ) + .remove().draw() + } } @@ -737,25 +786,30 @@ function clear_rotativa(row_id = ''){ switch(row_id) { case 'lp_rot_bn': clear_lp_rot_bn(true); - $('.lp_rot_bn').css('display', 'none'); break; case 'lp_rot_color': clear_lp_rot_color(true); - $('.lp_rot_color').css('display', 'none'); break; default: clear_lp_rot_bn(true); clear_lp_rot_color(true); - $('.lp_rot_bn').css('display', 'none'); - $('.lp_rot_color').css('display', 'none'); break; } + if(row_id.length>0) + tableLineasPresupuesto.row( row_id ) + .remove() + .draw(); + else{ + tableLineasPresupuesto.row( '#lp_rot_bn' ) + .remove().draw() + tableLineasPresupuesto.row( '#lp_rot_color' ) + .remove().draw() + } } function clear_cubierta(){ clear_lp_cubierta(true); - $('#lp_cubierta').css('display', 'none'); } @@ -813,75 +867,110 @@ $('.insertarLinea').on("click", function (e) { $('#addLineasPresupuesto').on("change", function (e) { + + var data = tableLineasPresupuesto + .rows() + .data(); + switch($('#addLineasPresupuesto').val()){ // Se chequean todas las lineas de negro y todas las de color // (solo una de cada en interior) + case 'lp_bn': - if($('#lp_bn').css('display') != 'none' || - $('#lp_bnhq').css('display') != 'none' || - $('#lp_rot_bn').css('display') != 'none'){ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_bn').length>0 || + data.filter(x => x.row_id === 'lp_bnhq').length>0 || + data.filter(x => x.row_id === 'lp_rot_bn').length>0 ) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - $('#lp_bn').css('display', 'table-row') + var data = processRowData({tipo_maquina: 'toner'}, 'lp_bn', 'lp-bn'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_bn() } + break case 'lp_bnhq': - if($('#lp_bn').css('display') != 'none' || - $('#lp_bnhq').css('display') != 'none' || - $('#lp_rot_bn').css('display') != 'none'){ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_bn').length>0 || + data.filter(x => x.row_id === 'lp_bnhq').length>0 || + data.filter(x => x.row_id === 'lp_rot_bn').length>0 ) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - $('#lp_bnhq').css('display', 'table-row') + var data = processRowData({tipo_maquina: 'toner'}, 'lp_bnhq', 'lp-bnhq'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_bnhq() } break case 'lp_color': - if($('#lp_color').css('display') != 'none' || - $('#lp_colorhq').css('display') != 'none' || - $('#lp_rot_color').css('display') != 'none'){ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_color').length>0 || + data.filter(x => x.row_id === 'lp_colorhq').length>0 || + data.filter(x => x.row_id === 'lp_rot_color').length>0 ) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - $('#lp_color').css('display', 'table-row') + var data = processRowData({tipo_maquina: 'toner'}, 'lp_color', 'lp-color'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_color() } break case 'lp_colorhq': - if($('#lp_color').css('display') != 'none' || - $('#lp_colorhq').css('display') != 'none' || - $('#lp_rot_color').css('display') != 'none'){ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_color').length>0 || + data.filter(x => x.row_id === 'lp_colorhq').length>0 || + data.filter(x => x.row_id === 'lp_rot_color').length>0 ) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - $('#lp_colorhq').css('display', 'table-row') + var data = processRowData({tipo_maquina: 'toner'}, 'lp_colorhq', 'lp-colorhq'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_colorhq() } break case 'lp_rot_bn': - if($('#lp_bn').css('display') != 'none' || - $('#lp_bnhq').css('display') != 'none' || - $('#lp_rot_bn').css('display') != 'none'){ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_bn').length>0 || + data.filter(x => x.row_id === 'lp_bnhq').length>0 || + data.filter(x => x.row_id === 'lp_rot_bn').length>0 ) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - $('#lp_rot_bn').css('display', 'table-row') + var data = processRowData({tipo_maquina: 'toner'}, 'lp_rot_bn', 'lp-rot-bn'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_rot_bn() } break case 'lp_rot_color': - if($('#lp_color').css('display') != 'none' || - $('#lp_colorhq').css('display') != 'none' || - $('#lp_rot_color').css('display') != 'none'){ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_color').length>0 || + data.filter(x => x.row_id === 'lp_colorhq').length>0 || + data.filter(x => x.row_id === 'lp_rot_color').length>0 ) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - $('#lp_rot_color').css('display', 'table-row') + var data = processRowData({tipo_maquina: 'toner'}, 'lp_rot_color', 'lp-rot-color'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_rot_color() } break case 'lp_cubierta': - if($('#lp_cubierta').css('display') == 'none'){ - $('#lp_cubierta').css('display', 'table-row') + if(data.length>0){ + if( data.filter(x => x.row_id === 'lp_cubierta').length>0) + + popErrorAlert('', 'divAlarmasLineasPresupuesto'); } else{ - popErrorAlert('', 'divAlarmasLineasPresupuesto'); + var data = processRowData({tipo_maquina: 'toner'}, 'lp_cubierta', 'lp-cubierta'); + tableLineasPresupuesto.row.add(data).draw(true) + eventos_lp_cubierta() } break default: @@ -1010,7 +1099,7 @@ function change_lp_bn_paginas(){ if( parseInt($('#lp_bn_paginas').val())>0 && parseInt($('#lp_bn_papel option:selected').val())>0 && - parseInt($('#lp_bn_gramaje option:selected').val())>0 && + $('#lp_bn_gramaje option:selected').text().length>0 && parseInt($('#lp_bn_papelImpresion option:selected').val())>0 ){ @@ -1022,7 +1111,7 @@ function calcularPresupuesto_bn(input_data={}){ const dimension = getDimensionLibro(); - if(Object.keys(input_data).lengt == 0){ + if(Object.keys(input_data).length == 0){ input_data = { paginas:parseInt($('#lp_bn_paginas').val()), @@ -1090,22 +1179,7 @@ function calcularPresupuesto_bn(input_data={}){ function fill_lp_bn(row, fromComparator=false){ if(fromComparator){ - /* - $('#lp_bn_paginas').val(row.paginas) - $('#lp_bn_papel').val(row.papelGenericoId) - $('#lp_bn_gramaje').empty() - $('#lp_bn_gramaje').append(``); - $('#lp_bn_papelImpresion').empty() - $('#lp_bn_papelImpresion').append(``); - $('#lp_bn_maquina').empty() - $('#lp_bn_maquina').append(``); - */ + var input_data = { paginas: row.paginas, papel_generico_id: row.papelGenericoId, @@ -1117,33 +1191,37 @@ function fill_lp_bn(row, fromComparator=false){ } else{ // Si viene de hacerlo a mano... - console.log(row) data = processRowData(row, 'lp_bn', 'lp-bn'); - tableLineasPresupuesto.row.add(data).draw(true) - var row = tableLineasPresupuesto.row('#lp_bn'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_bn').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_bn'); + } row.child(format(row.data())).show(); - $('#lp_bn_papel').bind("focus", {clear_selectors: true}, clear_lp_bn); - $('#lp_bn_gramaje').bind("focus", set_lp_bn_gramaje); - $('#lp_bn_papelImpresion').focus("focus", set_lp_bn_papelImpresion); - $('#lp_bn_maquina').bind("focus", set_lp_bn_maquina); - $('#lp_bn_maquina').bind("change", change_lp_bn_maquina); - $('#lp_bn_paginas').bind("change", change_lp_bn_paginas); - $('#lp_bn_paginas').bind("change", change_lp_bn_paginas); - $('#lp_bn_vercalculos').bind("click", {rowId: 'lp_bn'}, verCalculosInkjet); + eventos_lp_bn() calcular_mermas() updateTotales() } - $('#lp_bn').css('display', '') $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } + +function eventos_lp_bn(){ + $('#lp_bn_papel').bind("focus", {clear_selectors: true}, clear_lp_bn); + $('#lp_bn_gramaje').bind("focus", set_lp_bn_gramaje); + $('#lp_bn_papelImpresion').focus("focus", set_lp_bn_papelImpresion); + $('#lp_bn_maquina').bind("focus", set_lp_bn_maquina); + $('#lp_bn_maquina').bind("change", change_lp_bn_maquina); + $('#lp_bn_vercalculos').bind("click", {rowId: 'lp_bn'}, verCalculosInkjet); +} endSection() ?> @@ -1250,48 +1328,55 @@ function clear_lp_color(clear_selectors){ $( ".lp-color-select").empty() } -$('#lp_color_papel').bind("focus", {clear_selectors: true}, clear_lp_color); -$('#lp_color_gramaje').bind("focus", set_lp_color_gramaje); -$('#lp_color_papelImpresion').focus("focus", set_lp_color_papelImpresion); -$('#lp_color_maquina').bind("focus", set_lp_color_maquina); - -$('#lp_color_maquina').on("change", function () { +function change_lp_color_maquina(){ if(parseInt($('#lp_color_paginas').val())>0){ calcularPresupuesto_color(); } -}) +} -$('#lp_color_paginas').on("change", function () { +function change_lp_color_paginas(){ if( parseInt($('#lp_color_paginas').val())>0 && parseInt($('#lp_color_papel option:selected').val())>0 && - parseInt($('#lp_color_gramaje option:selected').val())>0 && + $('#lp_color_gramaje option:selected').text().length>0 && parseInt($('#lp_color_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_color(); } -}) +} -function calcularPresupuesto_color(){ +function calcularPresupuesto_color(input_data={}){ const dimension = getDimensionLibro(); + if(Object.keys(input_data).length == 0){ + + input_data = { + paginas:parseInt($('#lp_color_paginas').val()), + papel_generico_id: $('#lp_color_papel option:selected').val(), + papel_generico: $('#lp_color_papel option:selected').text().trim(), + gramaje: $('#lp_color_gramaje option:selected').text().trim(), + maquina_id: $('#lp_color_maquina option:selected').val(), + papel_impresion_id: $('#lp_color_papelImpresion option:selected').val() + } + } + let datos = { type: 'interior', color: 1, hq: 0, - paginas: parseInt($('#lp_color_paginas').val()), + paginas: input_data.paginas, tirada: parseInt($('#tirada').val()), merma: parseInt($('#merma').val()), ancho: dimension.ancho, alto: dimension.alto, - papel_generico_id: $('#lp_color_papel option:selected').val() , - papel_generico: $('#lp_color_papel option:selected').text().trim(), - gramaje: $('#lp_color_gramaje option:selected').text().trim(), + papel_generico_id: input_data.papel_generico_id, + papel_generico: input_data.papel_generico, + gramaje: input_data.gramaje, cliente_id: $('#clienteId').find(":selected").val(), : v }; @@ -1305,9 +1390,9 @@ function calcularPresupuesto_color(){ if(data.lineas.length >0){ // Se cogen los valores de la linea con los datos correspondientes $.each(data.lineas, function(key, value) { - if(value.fields.maquina_id === $('#lp_color_maquina option:selected').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_color_papelImpresion option:selected').val() ) { + if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id) { fill_lp_color(value.fields); return false; @@ -1334,58 +1419,52 @@ function calcularPresupuesto_color(){ function fill_lp_color(row, fromComparator=false){ if(fromComparator){ - $('#lp_color_paginas').val(row.paginas) - $('#lp_color_papel').val(row.papelGenericoId) - $('#lp_color_gramaje').empty() - $('#lp_color_gramaje').append(``); - $('#lp_color_papelImpresion').empty() - $('#lp_color_papelImpresion').append(``); - $('#lp_color_maquina').empty() - $('#lp_color_maquina').append(``); - calcularPresupuesto_color(false) + var input_data = { + paginas: row.paginas, + papel_generico_id: row.papelGenericoId, + gramaje: row.gramaje, + papel_impresion_id: row.papelImpresionId, + maquina_id: row.maquinaId, + } + calcularPresupuesto_color(input_data) } else{ // Si viene de hacerlo a mano... - $('#lp_color_tiempo').val(row.tiempo_maquina) - $('#lp_color_numeroPliegos').val(isNaN(parseFloat(row.pliegos_libro)) ? "" : parseFloat(row.pliegos_libro).toFixed(2)) - $('#lp_color_pliegosPedido').val(isNaN(parseFloat(row.pliegos_pedido)) ? "" : parseFloat(row.pliegos_pedido).toFixed(2)) - $('#lp_color_precioPliego').val(isNaN(parseFloat(row.precios_pliegos)) ? "" : parseFloat(row.precios_pliegos).toFixed(6)) - $('#lp_color_libro').val(isNaN(parseFloat(row.precio_libro)) ? "" : parseFloat(row.precio_libro).toFixed(2)) - $('#lp_color_totalPapelPedido').val(isNaN(parseFloat(row.precio_pedido)) ? "" : parseFloat(row.precio_pedido).toFixed(2)) - $('#lp_color_margenPapelPedido').val(isNaN(parseFloat(row.margen_papel_pedido)) ? "": parseFloat(row.margen_papel_pedido).toFixed(2)) - $('#lp_color_lomo').val(isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2)) - $('#lp_color_peso').val(isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2)) - $('#lp_color_click').val(isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6)) - $('#lp_color_totalClicks').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) + data = processRowData(row, 'lp_color', 'lp-color'); - $('#lp_color_tarifa_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id)) - $('#lp_color_maquina_ancho').val(isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0])) - $('#lp_color_maquina_alto').val(isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1])) - $('#lp_color_maquina_impresion_ancho').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0])) - $('#lp_color_maquina_impresion_alto').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1])) - $('#lp_color_formas').val(isNaN(parseInt(row.num_formas.value)) ? "" : parseInt(row.num_formas.value)) - $('#lp_color_formas_h').val(isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? "" : parseInt(row.num_formas.num_formas_horizontales)) - $('#lp_color_formas_v').val(isNaN(parseInt(row.num_formas.num_formas_verticales)) ? "" : parseInt(row.num_formas.num_formas_verticales)) - $('#lp_color_formas_orientacion').val(row.num_formas.posicion_formas) + var row = tableLineasPresupuesto.row('#lp_color'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_color').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_color'); + } + row.child(format(row.data())).show(); + + eventos_lp_color() calcular_mermas() updateTotales() } - - $('#lp_color').css('display', '') $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } + +function eventos_lp_color(){ + + $('#lp_color_papel').bind("focus", {clear_selectors: true}, clear_lp_color); + $('#lp_color_gramaje').bind("focus", set_lp_color_gramaje); + $('#lp_color_papelImpresion').focus("focus", set_lp_color_papelImpresion); + $('#lp_color_maquina').bind("focus", set_lp_color_maquina); + $('#lp_color_maquina').bind("change", change_color_maquina); + $('#lp_color_paginas').bind("change", change_lp_color_paginas); + $('#lp_color_vercalculos').bind("click", {rowId: 'lp_color'}, verCalculosInkjet); +} + endSection() ?> @@ -1419,8 +1498,6 @@ async function set_lp_bnhq_gramaje(){ } - - async function set_lp_bnhq_papelImpresion(){ await $.ajax({ type: 'post', @@ -1492,47 +1569,54 @@ function clear_lp_bnhq(clear_selectors){ $( ".lp-bnhq-select").empty() } -$('#lp_bnhq_papel').bind("focus", {clear_selectors: true}, clear_lp_bnhq); -$('#lp_bnhq_gramaje').bind("focus", set_lp_bnhq_gramaje); -$('#lp_bnhq_papelImpresion').focus("focus", set_lp_bnhq_papelImpresion); -$('#lp_bnhq_maquina').bind("focus", set_lp_bnhq_maquina); -$('#lp_bnhq_maquina').on("change", function () { +function change_lp_bnhq_maquina(){ if(parseInt($('#lp_bnhq_paginas').val())>0){ calcularPresupuesto_bnhq(); } -}) +} - -$('#lp_bnhq_paginas').on("change", function () { +function change_lp_bnhq_paginas(){ if( parseInt($('#lp_bnhq_paginas').val())>0 && parseInt($('#lp_bnhq_papel option:selected').val())>0 && - parseInt($('#lp_bnhq_gramaje option:selected').val())>0 && + $('#lp_bnhq_gramaje option:selected').text().length>0 && parseInt($('#lp_bnhq_papelImpresion option:selected').val())>0 ){ - calcularPresupuesto_bn(); + calcularPresupuesto_bnhq(); } -}) +} -function calcularPresupuesto_bnhq(){ +function calcularPresupuesto_bnhq(input_data={}){ const dimension = getDimensionLibro(); + if(Object.keys(input_data).length == 0){ + + input_data = { + paginas:parseInt($('#lp_bnhq_paginas').val()), + papel_generico_id: $('#lp_bnhq_papel option:selected').val(), + papel_generico: $('#lp_bnhq_papel option:selected').text().trim(), + gramaje: $('#lp_bnhq_gramaje option:selected').text().trim(), + maquina_id: $('#lp_bnhq_maquina option:selected').val(), + papel_impresion_id: $('#lp_bnhq_papelImpresion option:selected').val() + } + } + let datos = { type: 'interior', color: 0, hq: 1, - paginas: parseInt($('#lp_bnhq_paginas').val()), + paginas: input_data.paginas, tirada: parseInt($('#tirada').val()), merma: parseInt($('#merma').val()), ancho: dimension.ancho, alto: dimension.alto, - papel_generico_id: $('#lp_bnhq_papel option:selected').val() , - papel_generico: $('#lp_bnhq_papel option:selected').text().trim(), - gramaje: $('#lp_bnhq_gramaje option:selected').text().trim(), + papel_generico_id: input_data.papel_generico_id, + papel_generico: input_data.papel_generico, + gramaje: input_data.gramaje, cliente_id: $('#clienteId').find(":selected").val(), : v }; @@ -1546,9 +1630,9 @@ function calcularPresupuesto_bnhq(){ if(data.lineas.length >0){ // Se cogen los valores de la linea con los datos correspondientes $.each(data.lineas, function(key, value) { - if(value.fields.maquina_id === $('#lp_bnhq_maquina option:selected').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_bnhq_papelImpresion option:selected').val() ) { + if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id) { fill_lp_bnhq(value.fields); return false; @@ -1575,57 +1659,51 @@ function calcularPresupuesto_bnhq(){ function fill_lp_bnhq(row, fromComparator=false){ if(fromComparator){ - $('#lp_bnhq_paginas').val(row.paginas) - $('#lp_bnhq_papel').val(row.papelGenericoId) - $('#lp_bnhq_gramaje').empty() - $('#lp_bnhq_gramaje').append(``); - $('#lp_bnhq_papelImpresion').empty() - $('#lp_bnhq_papelImpresion').append(``); - $('#lp_bnhq_maquina').empty() - $('#lp_bnhq_maquina').append(``); - calcularPresupuesto_bnhq(false) + var input_data = { + paginas: row.paginas, + papel_generico_id: row.papelGenericoId, + gramaje: row.gramaje, + papel_impresion_id: row.papelImpresionId, + maquina_id: row.maquinaId, + } + calcularPresupuesto_bnhq(input_data) } else{ - // Si viene de hacerlo a mano... - $('#lp_bnhq_tiempo').val(row.tiempo_maquina) - $('#lp_bnhq_numeroPliegos').val(isNaN(parseFloat(row.pliegos_libro)) ? "" : parseFloat(row.pliegos_libro).toFixed(2)) - $('#lp_bnhq_pliegosPedido').val(isNaN(parseFloat(row.pliegos_pedido)) ? "" : parseFloat(row.pliegos_pedido).toFixed(2)) - $('#lp_bnhq_precioPliego').val(isNaN(parseFloat(row.precios_pliegos)) ? "" : parseFloat(row.precios_pliegos).toFixed(6)) - $('#lp_bnhq_libro').val(isNaN(parseFloat(row.precio_libro)) ? "" : parseFloat(row.precio_libro).toFixed(2)) - $('#lp_bnhq_totalPapelPedido').val(isNaN(parseFloat(row.precio_pedido)) ? "" : parseFloat(row.precio_pedido).toFixed(2)) - $('#lp_bnhq_margenPapelPedido').val(isNaN(parseFloat(row.margen_papel_pedido)) ? "" : parseFloat(row.margen_papel_pedido).toFixed(2)) - $('#lp_bnhq_lomo').val(isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2)) - $('#lp_bnhq_peso').val(isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2)) - $('#lp_bnhq_click').val(isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6)) - $('#lp_bnhq_totalClicks').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) - $('#lp_bnhq_tarifa_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id)) - $('#lp_bnhq_maquina_ancho').val(isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0])) - $('#lp_bnhq_maquina_alto').val(isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1])) - $('#lp_bnhq_maquina_impresion_ancho').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0])) - $('#lp_bnhq_maquina_impresion_alto').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1])) - $('#lp_bnhq_formas').val(isNaN(parseInt(row.num_formas.value)) ? "" : parseInt(row.num_formas.value)) - $('#lp_bnhq_formas_h').val(isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? "" : parseInt(row.num_formas.num_formas_horizontales)) - $('#lp_bnhq_formas_v').val(isNaN(parseInt(row.num_formas.num_formas_verticales)) ? "" : parseInt(row.num_formas.num_formas_verticales)) - $('#lp_bnhq_formas_orientacion').val(row.num_formas.posicion_formas) + // Si viene de hacerlo a mano... + data = processRowData(row, 'lp_bnhq', 'lp-bnhq'); + + var row = tableLineasPresupuesto.row('#lp_bnhq'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_bnhq').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_bnhq'); + } + row.child(format(row.data())).show(); + + eventos_lp_bnhq() calcular_mermas() updateTotales() } - - $('#lp_bnhq').css('display', '') $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } + +function eventos_lp_bnhq(){ + $('#lp_bnhq_papel').bind("focus", {clear_selectors: true}, clear_lp_bnhq); + $('#lp_bnhq_gramaje').bind("focus", set_lp_bnhq_gramaje); + $('#lp_bnhq_papelImpresion').focus("focus", set_lp_bnhq_papelImpresion); + $('#lp_bnhq_maquina').bind("focus", set_lp_bnhq_maquina); + $('#lp_bnhq_maquina').bind("change", change_lp_bnhq_maquina); + $('#lp_bnhq_paginas').bind("change", change_lp_bnhq_paginas); + $('#lp_bnhq_vercalculos').bind("click", {rowId: 'lp_bnhq'}, verCalculosInkjet); +} + endSection() ?> @@ -1733,48 +1811,55 @@ function clear_lp_colorhq(clear_selectors){ } -$('#lp_colorhq_papel').bind("focus", {clear_selectors: true}, clear_lp_colorhq); -$('#lp_colorhq_gramaje').bind("focus", set_lp_colorhq_gramaje); -$('#lp_colorhq_papelImpresion').focus("focus", set_lp_colorhq_papelImpresion); -$('#lp_colorhq_maquina').bind("focus", set_lp_colorhq_maquina); - - -$('#lp_colorhq_maquina').on("change", function () { +function change_lp_colorhq_maquina(){ if(parseInt($('#lp_colorhq_paginas').val())>0){ calcularPresupuesto_colorhq(); } -}) +} -$('#lp_colorhq_paginas').on("change", function () { +function change_lp_colorhq_paginas(){ if( parseInt($('#lp_colorhq_paginas').val())>0 && parseInt($('#lp_colorhq_papel option:selected').val())>0 && - parseInt($('#lp_colorhq_gramaje option:selected').val())>0 && + $('#lp_colorhq_gramaje option:selected').text().length>0 && parseInt($('#lp_colorhq_papelImpresion option:selected').val())>0 ){ - calcularPresupuesto_bn(); + calcularPresupuesto_colorhq(); } -}) +} -function calcularPresupuesto_colorhq(){ + +function calcularPresupuesto_colorhq(input_data={}){ const dimension = getDimensionLibro(); + if(Object.keys(input_data).length == 0){ + + input_data = { + paginas:parseInt($('#lp_colorhq_paginas').val()), + papel_generico_id: $('#lp_colorhq_papel option:selected').val(), + papel_generico: $('#lp_colorhq_papel option:selected').text().trim(), + gramaje: $('#lp_colorhq_gramaje option:selected').text().trim(), + maquina_id: $('#lp_colorhq_maquina option:selected').val(), + papel_impresion_id: $('#lp_colorhq_papelImpresion option:selected').val() + } + } + let datos = { type: 'interior', color: 1, hq: 1, - paginas: parseInt($('#lp_colorhq_paginas').val()), + paginas: input_data.paginas, tirada: parseInt($('#tirada').val()), merma: parseInt($('#merma').val()), ancho: dimension.ancho, alto: dimension.alto, - papel_generico_id: $('#lp_colorhq_papel option:selected').val() , - papel_generico: $('#lp_colorhq_papel option:selected').text().trim(), - gramaje: $('#lp_colorhq_gramaje option:selected').text().trim(), + papel_generico_id: input_data.papel_generico_id, + papel_generico: input_data.papel_generico, + gramaje: input_data.gramaje, cliente_id: $('#clienteId').find(":selected").val(), : v }; @@ -1788,9 +1873,9 @@ function calcularPresupuesto_colorhq(){ if(data.lineas.length >0){ // Se cogen los valores de la linea con los datos correspondientes $.each(data.lineas, function(key, value) { - if(value.fields.maquina_id === $('#lp_colorhq_maquina option:selected').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_colorhq_papelImpresion option:selected').val() ) { + if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id) { fill_lp_colorhq(value.fields); return false; @@ -1817,58 +1902,50 @@ function calcularPresupuesto_colorhq(){ function fill_lp_colorhq(row, fromComparator=false){ if(fromComparator){ - $('#lp_colorhq_paginas').val(row.paginas) - $('#lp_colorhq_papel').val(row.papelGenericoId) - $('#lp_colorhq_gramaje').empty() - $('#lp_colorhq_gramaje').append(``); - $('#lp_colorhq_papelImpresion').empty() - $('#lp_colorhq_papelImpresion').append(``); - $('#lp_colorhq_maquina').empty() - $('#lp_colorhq_maquina').append(``); - - calcularPresupuesto_colorhq(row, false) + var input_data = { + paginas: row.paginas, + papel_generico_id: row.papelGenericoId, + gramaje: row.gramaje, + papel_impresion_id: row.papelImpresionId, + maquina_id: row.maquinaId, + } + calcularPresupuesto_colorhq(input_data) } else{ // Si viene de hacerlo a mano... - $('#lp_colorhq_tiempo').val(row.tiempo_maquina) - $('#lp_colorhq_numeroPliegos').val(isNaN(parseFloat(row.pliegos_libro)) ? "" : parseFloat(row.pliegos_libro).toFixed(2)) - $('#lp_colorhq_pliegosPedido').val(isNaN(parseFloat(row.pliegos_pedido)) ? "" : parseFloat(row.pliegos_pedido).toFixed(2)) - $('#lp_colorhq_precioPliego').val(isNaN(parseFloat(row.precios_pliegos)) ? "" : parseFloat(row.precios_pliegos).toFixed(6)) - $('#lp_colorhq_libro').val(isNaN(parseFloat(row.precio_libro)) ? "" : parseFloat(row.precio_libro).toFixed(2)) - $('#lp_colorhq_totalPapelPedido').val(isNaN(parseFloat(row.precio_pedido)) ? "" : parseFloat(row.precio_pedido).toFixed(2)) - $('#lp_colorhq_margenPapelPedido').val(isNaN(parseFloat(row.margen_papel_pedido)) ? "": parseFloat(row.margen_papel_pedido).toFixed(2)) - $('#lp_colorhq_lomo').val(isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2)) - $('#lp_colorhq_peso').val(isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2)) - $('#lp_colorhq_click').val(isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6)) - $('#lp_colorhq_totalClicks').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) + data = processRowData(row, 'lp_colorhq', 'lp-colorhq'); - $('#lp_colorhq_tarifa_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id)) - $('#lp_colorhq_maquina_ancho').val(isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0])) - $('#lp_colorhq_maquina_alto').val(isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1])) - $('#lp_colorhq_maquina_impresion_ancho').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0])) - $('#lp_colorhq_maquina_impresion_alto').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1])) - $('#lp_colorhq_formas').val(isNaN(parseInt(row.num_formas.value)) ? "" : parseInt(row.num_formas.value)) - $('#lp_colorhq_formas_h').val(isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? "" : parseInt(row.num_formas.num_formas_horizontales)) - $('#lp_colorhq_formas_v').val(isNaN(parseInt(row.num_formas.num_formas_verticales)) ? "" : parseInt(row.num_formas.num_formas_verticales)) - $('#lp_colorhq_formas_orientacion').val(row.num_formas.posicion_formas) + var row = tableLineasPresupuesto.row('#lp_colorhq'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_colorhq').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_colorhq'); + } + row.child(format(row.data())).show(); + + eventos_lp_colorhq() calcular_mermas() updateTotales() } - - $('#lp_colorhq').css('display', '') $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } + +function eventos_lp_colorhq(){ + + $('#lp_colorhq_papel').bind("focus", {clear_selectors: true}, clear_lp_colorhq); + $('#lp_colorhq_gramaje').bind("focus", set_lp_colorhq_gramaje); + $('#lp_colorhq_papelImpresion').focus("focus", set_lp_colorhq_papelImpresion); + $('#lp_colorhq_maquina').bind("focus", set_lp_colorhq_maquina); + $('#lp_colorhq_maquina').bind("change", change_lp_colorhq_maquina); + $('#lp_colorhq_paginas').bind("change", change_lp_colorhq_paginas); + $('#lp_colorhq_vercalculos').bind("click", {rowId: 'lp_colorhq'}, verCalculosInkjet); +} endSection() ?> @@ -1977,64 +2054,72 @@ function clear_lp_rot_bn(clear_selectors){ } -$('#lp_rot_bn_papel').bind("focus", {clear_selectors: true}, clear_lp_rot_bn); -$('#lp_rot_bn_gramaje').bind("focus", set_lp_rot_bn_gramaje); -$('#lp_rot_bn_papelImpresion').focus("focus", set_lp_rot_bn_papelImpresion); -$('#lp_rot_bn_maquina').bind("focus", set_lp_rot_bn_maquina); - - -$('#lp_rot_bn_maquina').on("change", function () { +function change_lp_rot_bn_maquina(){ if(parseInt($('#lp_rot_bn_paginas').val())>0){ calcularPresupuesto_rot_bn(); } -}) +} -$('#lp_rot_bn_paginas').on("change", function () { +function change_lp_rot_bn_paginas(){ if( parseInt($('#lp_rot_bn_paginas').val())>0 && parseInt($('#lp_rot_bn_papel option:selected').val())>0 && - parseInt($('#lp_rot_bn_gramaje option:selected').val())>0 && + $('#lp_rot_bn_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_bn_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_bn(); } -}) +} -$('#lp_rot_bn_aFavorFibra').on("change", function () { +function change_lp_rot_bn_aFavorFibra(){ + if( parseInt($('#lp_rot_bn_paginas').val())>0 && parseInt($('#lp_rot_bn_papel option:selected').val())>0 && - parseInt($('#lp_rot_bn_gramaje option:selected').val())>0 && + $('#lp_rot_bn_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_bn_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_bn(false, true); } -}) +} -function calcularPresupuesto_rot_bn(fromComparador=false, updatedTipologias=false){ +function calcularPresupuesto_rot_bn(fromComparador=false, updatedTipologias=false, input_data={}){ const dimension = getDimensionLibro(); + if(Object.keys(input_data).length == 0){ + + input_data = { + paginas:parseInt($('#lp_rot_bn_paginas').val()), + papel_generico_id: $('#lp_rot_bn_papel option:selected').val(), + papel_generico: $('#lp_rot_bn_papel option:selected').text().trim(), + gramaje: $('#lp_rot_bn_gramaje option:selected').text().trim(), + maquina_id: $('#lp_rot_bn_maquina option:selected').val(), + papel_impresion_id: $('#lp_rot_bn_papelImpresion option:selected').val(), + fibra: $('#lp_rot_bn_aFavorFibra').prop('checked') + } + } + let datos = { type: 'interior_rot', color: 0, hq: 0, - paginas: parseInt($('#lp_rot_bn_paginas').val()), - paginas_negro: parseInt($('#lp_rot_bn_paginas').val()), + paginas: input_data.paginas, + paginas_negro: input_data.paginas, paginas_color: 0, tirada: parseInt($('#tirada').val()), merma: parseInt($('#merma').val()), ancho: dimension.ancho, alto: dimension.alto, - papel_generico_id: $('#lp_rot_bn_papel option:selected').val() , - papel_generico: $('#lp_rot_bn_papel option:selected').text().trim(), - gramaje: $('#lp_rot_bn_gramaje option:selected').text().trim(), + papel_generico_id: input_data.papel_generico_id, + papel_generico: input_data.papel_generico, + gramaje: input_data.gramaje, cliente_id: $('#clienteId').find(":selected").val(), : v }; @@ -2057,20 +2142,20 @@ function calcularPresupuesto_rot_bn(fromComparador=false, updatedTipologias=fals if(data.lineas.length >0){ // Se cogen los valores de la linea con los datos correspondientes $.each(data.lineas, function(key, value) { - fibra = $('#lp_rot_bn_aFavorFibra').prop('checked') + if(fromComparador){ - if(value.fields.maquina_id === $('#lp_rot_bn_maquina option:selected').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_rot_bn_papelImpresion option:selected').val()) { + if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id) { fill_lp_rot_bn(value.fields); return false; } } - else if (value.fields.maquina_id === $('#lp_rot_bn_maquina').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_rot_bn_papelImpresion').val() && - value.fields.a_favor_fibra == $('#lp_rot_bn_aFavorFibra').prop('checked')?1:0) { + else if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id && + value.fields.a_favor_fibra == input_data.fibra) { fill_lp_rot_bn(value.fields); return false; @@ -2092,134 +2177,88 @@ function calcularPresupuesto_rot_bn(fromComparador=false, updatedTipologias=fals } -$('.lp-rotbn-tipologia').on("change", function () { + +function change_lp_rot_bn_tipologia(){ if( parseInt($('#lp_rot_bn_paginas').val())>0 && parseInt($('#lp_rot_bn_papel option:selected').val())>0 && - parseInt($('#lp_rot_bn_gramaje option:selected').val())>0 && + $('#lp_rot_bn_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_bn_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_bn(false,true); } -}) +} -$('#lp_rot_bn_defecto').on("click", function () { +function por_defecto_lp_rot_bn(){ if( parseInt($('#lp_rot_bn_paginas').val())>0 && parseInt($('#lp_rot_bn_papel option:selected').val())>0 && - parseInt($('#lp_rot_bn_gramaje option:selected').val())>0 && + $('#lp_rot_bn_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_bn_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_bn(false); } -}) +} function fill_lp_rot_bn(row, fromComparador=false){ if(fromComparador){ - $('#lp_rot_bn_paginas').val(row.paginas) - $('#lp_rot_bn_papel').val(row.papelGenericoId) - $('#lp_rot_bn_gramaje').empty() - $('#lp_rot_bn_gramaje').append(``); - $('#lp_rot_bn_papelImpresion').empty() - $('#lp_rot_bn_papelImpresion').append(``); - $('#lp_rot_bn_maquina').empty() - $('#lp_rot_bn_maquina').append(``); - $('#lp_rot_bn_aFavorFibra').prop('checked', row.aFavorFibra=='si'?true:false) - calcularPresupuesto_rot_bn(false); + var input_data = { + paginas: row.paginas, + papel_generico_id: row.papelGenericoId, + gramaje: row.gramaje, + papel_impresion_id: row.papelImpresionId, + maquina_id: row.maquinaId, + fibra: row.aFavorFibra=='no'?false:true + } + + calcularPresupuesto_rot_bn(false, false, input_data); } else{ + // Si viene de hacerlo a mano... - $('#lp_rot_bn_tiempo').val(row.tiempo_maquina) - $('#lp_rot_bn_numeroPliegos').val(isNaN(parseFloat(row.pliegos_libro)) ? "" : parseFloat(row.pliegos_libro).toFixed(2)) - $('#lp_rot_bn_pliegosPedido').val(isNaN(parseFloat(row.pliegos_pedido)) ? "" : parseFloat(row.pliegos_pedido).toFixed(2)) - $('#lp_rot_bn_precioPliego').val(isNaN(parseFloat(row.precios_pliegos)) ? "" : parseFloat(row.precios_pliegos).toFixed(6)) - $('#lp_rot_bn_libro').val(isNaN(parseFloat(row.precio_libro)) ? "" : parseFloat(row.precio_libro).toFixed(2)) - $('#lp_rot_bn_totalPapelPedido').val(isNaN(parseFloat(row.precio_pedido)) ? "" : parseFloat(row.precio_pedido).toFixed(2)) - $('#lp_rot_bn_margenPapelPedido').val(isNaN(parseFloat(row.margen_papel_pedido)) ? "": parseFloat(row.margen_papel_pedido).toFixed(2)) - $('#lp_rot_bn_lomo').val(isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2)) - $('#lp_rot_bn_peso').val(isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2)) - $('#lp_rot_bn_click').val(isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6)) - $('#lp_rot_bn_totalClicks').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) - $('#lp_rot_bn_totalLinea').val(isNaN(parseFloat(row.total_impresion)) ? "" : parseFloat(row.total_impresion).toFixed(2)) - $('#lp_rot_bn_aFavorFibra').prop('checked', row.a_favor_fibra==0?false:true) + data = processRowData(row, 'lp_rot_bn', 'lp-rot-bn'); - $('#lp_rot_bn_cobNegro').val(isNaN(parseFloat(row.datosTipologias.negro)) ? "" : parseFloat(row.datosTipologias.negro).toFixed(0)) - $('#lp_rot_bn_cobCyan').val(isNaN(parseFloat(row.datosTipologias.cyan)) ? "" : parseFloat(row.datosTipologias.cyan).toFixed(0)) - $('#lp_rot_bn_cobMagenta').val(isNaN(parseFloat(row.datosTipologias.magenta)) ? "" : parseFloat(row.datosTipologias.magenta).toFixed(0)) - $('#lp_rot_bn_cobAmarillo').val(isNaN(parseFloat(row.datosTipologias.amarillo)) ? "" : parseFloat(row.datosTipologias.amarillo).toFixed(0)) - $('#lp_rot_bn_gotaNegro').val(isNaN(parseFloat(row.datosTipologias.gota_negro)) ? "" : parseFloat(row.datosTipologias.gota_negro).toFixed(0)) - $('#lp_rot_bn_gotaColor').val(isNaN(parseFloat(row.datosTipologias.gota_color)) ? "" : parseFloat(row.datosTipologias.gota_color).toFixed(0)) + var row = tableLineasPresupuesto.row('#lp_rot_bn'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_rot_bn').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_rot_bn'); + } + row.child(format(row.data())).show(); - $('#lp_rot_bn_metrosMinuto').val(isNaN(parseFloat(row.maquina_velocidad)) ? "" : parseFloat(row.maquina_velocidad).toFixed(2)) - $('#lp_rot_bn_resolucion').val(isNaN(parseFloat(row.resolucion)) ? "" : parseFloat(row.resolucion).toFixed(0)) - $('#lp_rot_bn_areaPaginas').val(isNaN(parseFloat(row.superficie)) ? "" : parseFloat(row.superficie).toFixed(2)) - $('#lp_rot_bn_gotasNegro').val(isNaN(parseFloat(row.num_gotas_negro)) ? "" : parseFloat(row.num_gotas_negro).toFixed(0)) - $('#lp_rot_bn_gotasCyan').val(isNaN(parseFloat(row.num_gotas_cyan)) ? "" : parseFloat(row.num_gotas_cyan).toFixed(0)) - $('#lp_rot_bn_gotasMagenta').val(isNaN(parseFloat(row.num_gotas_magenta)) ? "" : parseFloat(row.num_gotas_magenta).toFixed(0)) - $('#lp_rot_bn_gotasAmarillo').val(isNaN(parseFloat(row.num_gotas_amarillo)) ? "" : parseFloat(row.num_gotas_amarillo).toFixed(0)) - $('#lp_rot_bn_precioPagNegro').val(isNaN(parseFloat(row.precio_pagina_negro)) ? "" : parseFloat(row.precio_pagina_negro).toFixed(6)) - $('#lp_rot_bn_precioPagColor').val(isNaN(parseFloat(row.precio_pagina_color)) ? "" : parseFloat(row.precio_pagina_color).toFixed(6)) - $('#lp_rot_bn_factorAltura').val(isNaN(parseFloat(row.factor_altura)) ? "" : parseFloat(row.factor_altura).toFixed(2)) - $('#lp_rot_bn_factorAnchura').val(isNaN(parseFloat(row.factor_anchura)) ? "" : parseFloat(row.factor_anchura).toFixed(2)) - $('#lp_rot_bn_paginasPliego').val(isNaN(parseFloat(row.paginas_por_pliego)) ? "" : parseFloat(row.paginas_por_pliego).toFixed(2)) - - $('#lp_rot_bn_metrosPapelLibro').val(isNaN(parseFloat(row.metros_papel_libro)) ? "" : parseFloat(row.metros_papel_libro).toFixed(2)) - $('#lp_rot_bn_metrosPapelTotal').val(isNaN(parseFloat(row.metros_papel_total)) ? "" : parseFloat(row.metros_papel_total).toFixed(2)) - $('#lp_rot_bn_clicksLibro').val(isNaN(parseFloat(row.clicks_libro)) ? "" : parseFloat(row.clicks_libro).toFixed(0)) - $('#lp_rot_bn_gTintaNegro').val(isNaN(parseFloat(row.peso_gotas_negro)) ? "" : parseFloat(row.peso_gotas_negro).toFixed(2)) - $('#lp_rot_bn_gTintaCyan').val(isNaN(parseFloat(row.peso_gotas_cyan)) ? "" : parseFloat(row.peso_gotas_cyan).toFixed(2)) - $('#lp_rot_bn_gTintaMagenta').val(isNaN(parseFloat(row.peso_gotas_magenta)) ? "" : parseFloat(row.peso_gotas_magenta).toFixed(2)) - $('#lp_rot_bn_gTintaAmarillo').val(isNaN(parseFloat(row.peso_gotas_amarillo)) ? "" : parseFloat(row.peso_gotas_amarillo).toFixed(2)) - $('#lp_rot_bn_clicksPedido').val(isNaN(parseFloat(row.clicks_pedido)) ? "" : parseFloat(row.clicks_pedido).toFixed(0)) - $('#lp_rot_bn_totalClicksPedido').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) - $('#lp_rot_bn_totalTinta').val(isNaN(parseFloat(row.precio_tinta)) ? "" : parseFloat(row.precio_tinta).toFixed(2)) - $('#lp_rot_bn_totalCorte').val(isNaN(parseFloat(row.total_corte)) ? "" : parseFloat(row.total_corte).toFixed(2)) - $('#lp_rot_bn_totalImpresion').val(isNaN(parseFloat(row.precio_click_pedido+row.precio_tinta+row.total_corte)) ? "" : parseFloat(row.precio_click_pedido+row.precio_tinta+row.total_corte).toFixed(2)) - - $('#lp_rot_bn_velocidadCorte').val(isNaN(parseFloat(row.velocidad_corte)) ? "" : parseFloat(row.velocidad_corte).toFixed(2)) - $('#lp_rot_bn_precioHoraCorte').val(isNaN(parseFloat(row.precio_hora_corte)) ? "" : parseFloat(row.precio_hora_corte).toFixed(2)) - $('#lp_rot_bn_tiempoCorte').val(isNaN(parseFloat(row.tiempo_corte)) ? "" : parseFloat(row.tiempo_corte).toFixed(2)) - $('#lp_rot_bn_gTintaNegroPed').val(isNaN(parseFloat(row.peso_gotas_negro_pedido)) ? "" : parseFloat(row.peso_gotas_negro_pedido).toFixed(2)) - $('#lp_rot_bn_gTintaCyanPed').val(isNaN(parseFloat(row.peso_gotas_cyan_pedido)) ? "" : parseFloat(row.peso_gotas_cyan_pedido).toFixed(2)) - $('#lp_rot_bn_gTintaMagentaPed').val(isNaN(parseFloat(row.peso_gotas_magenta_pedido)) ? "" : parseFloat(row.peso_gotas_magenta_pedido).toFixed(2)) - $('#lp_rot_bn_gTintaAmarilloPed').val(isNaN(parseFloat(row.peso_gotas_amarillo_pedido)) ? "" : parseFloat(row.peso_gotas_amarillo_pedido).toFixed(2)) - - $('#lp_rot_bn_tarifa_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id)) - $('#lp_rot_bn_maquina_ancho').val(isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0])) - $('#lp_rot_bn_maquina_alto').val(isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1])) - $('#lp_rot_bn_maquina_impresion_ancho').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0])) - $('#lp_rot_bn_maquina_impresion_alto').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1])) - $('#lp_rot_bn_formas').val(isNaN(parseInt(row.num_formas.value)) ? "" : parseInt(row.num_formas.value)) - $('#lp_rot_bn_formas_h').val(isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? "" : parseInt(row.num_formas.num_formas_horizontales)) - $('#lp_rot_bn_formas_v').val(isNaN(parseInt(row.num_formas.num_formas_verticales)) ? "" : parseInt(row.num_formas.num_formas_verticales)) - $('#lp_rot_bn_formas_orientacion').val(row.num_formas.posicion_formas) - - $('#lp_rot_bn_alto_click').val(row.alto_click) + eventos_lp_rot_bn() calcular_mermas() updateTotales() } - $('.lp_rot_bn').css('display', '') $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } + +function eventos_lp_rot_bn(){ + $('#lp_rot_bn_papel').bind("focus", {clear_selectors: true}, clear_lp_rot_bn); + $('#lp_rot_bn_gramaje').bind("focus", set_lp_rot_bn_gramaje); + $('#lp_rot_bn_papelImpresion').focus("focus", set_lp_rot_bn_papelImpresion); + $('#lp_rot_bn_maquina').bind("focus", set_lp_rot_bn_maquina); + $('#lp_rot_bn_maquina').bind("change", change_lp_rot_bn_maquina); + $('#lp_rot_bn_paginas').bind("change", change_lp_rot_bn_paginas); + $('#lp_rot_bn_vercalculos').bind("click", {rowId: 'lp_rot_bn'}, verCalculosInkjet); + $('#lp_rot_bn_aFavorFibra').bind("change", change_lp_rot_bn_aFavorFibra); + $('.lp-rot-bn-tipologia').bind("change", change_lp_rot_bn_tipologia); + $('#lp_rot_bn_defecto').bind("click", por_defecto_lp_rot_bn); +} endSection() ?> @@ -2330,64 +2369,71 @@ function clear_lp_rot_color(clear_selectors){ } -$('#lp_rot_color_papel').bind("focus", {clear_selectors: true}, clear_lp_rot_color); -$('#lp_rot_color_gramaje').bind("focus", set_lp_rot_color_gramaje); -$('#lp_rot_color_papelImpresion').focus("focus", set_lp_rot_color_papelImpresion); -$('#lp_rot_color_maquina').bind("focus", set_lp_rot_color_maquina); - - -$('#lp_rot_color_maquina').on("change", function () { +function change_lp_rot_color_maquina(){ if(parseInt($('#lp_rot_color_paginas').val())>0){ calcularPresupuesto_rot_color(); } -}) +} -$('#lp_rot_color_paginas').on("change", function () { +function change_lp_rot_color_paginas(){ if( parseInt($('#lp_rot_color_paginas').val())>0 && parseInt($('#lp_rot_color_papel option:selected').val())>0 && - parseInt($('#lp_rot_color_gramaje option:selected').val())>0 && + $('#lp_rot_color_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_color_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_color(); } -}) +} -$('#lp_rot_color_aFavorFibra').on("change", function () { +function change_lp_rot_color_aFavorFibra(){ if( parseInt($('#lp_rot_color_paginas').val())>0 && parseInt($('#lp_rot_color_papel option:selected').val())>0 && - parseInt($('#lp_rot_color_gramaje option:selected').val())>0 && + $('#lp_rot_color_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_color_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_color(false, true); } -}) +} -function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=false){ +function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=false, input_data={}){ const dimension = getDimensionLibro(); + if(Object.keys(input_data).length == 0){ + + input_data = { + paginas:parseInt($('#lp_rot_color_paginas').val()), + papel_generico_id: $('#lp_rot_color_papel option:selected').val(), + papel_generico: $('#lp_rot_color_papel option:selected').text().trim(), + gramaje: $('#lp_rot_color_gramaje option:selected').text().trim(), + maquina_id: $('#lp_rot_color_maquina option:selected').val(), + papel_impresion_id: $('#lp_rot_color_papelImpresion option:selected').val(), + fibra: $('#lp_rot_bn_aFavorFibra').prop('checked') + } + } + let datos = { type: 'interior_rot', color: 1, hq: 0, - paginas: parseInt($('#lp_rot_color_paginas').val()), - paginas_negro: parseInt($('#lp_rot_color_paginas').val())-parseInt($('#lp_rot_color_numPagColor').val()), + paginas: input_data.paginas, + paginas_negro: input_data.paginas-parseInt($('#lp_rot_color_numPagColor').val()), paginas_color: parseInt($('#lp_rot_color_numPagColor').val()), tirada: parseInt($('#tirada').val()), merma: parseInt($('#merma').val()), ancho: dimension.ancho, alto: dimension.alto, - papel_generico_id: $('#lp_rot_color_papel option:selected').val() , - papel_generico: $('#lp_rot_color_papel option:selected').text().trim(), - gramaje: $('#lp_rot_color_gramaje option:selected').text().trim(), + papel_generico_id: input_data.papel_generico_id, + papel_generico: input_data.papel_generico, + gramaje: input_data.gramaje, cliente_id: $('#clienteId').find(":selected").val(), : v }; @@ -2417,18 +2463,18 @@ function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=f $.each(data.lineas, function(key, value) { fibra = $('#lp_rot_color_aFavorFibra').prop('checked') if(fromComparador){ - if(value.fields.maquina_id === $('#lp_rot_color_maquina option:selected').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_rot_color_papelImpresion option:selected').val()) { + if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id) { fill_lp_rot_color(value.fields); return false; } } - else if (value.fields.maquina_id === $('#lp_rot_color_maquina').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_rot_color_papelImpresion').val() && - value.fields.a_favor_fibra == $('#lp_rot_color_aFavorFibra').prop('checked')?1:0) { + else if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id && + value.fields.a_favor_fibra == input_data.fibra) { fill_lp_rot_color(value.fields); return false; @@ -2450,137 +2496,85 @@ function calcularPresupuesto_rot_color(fromComparador=false, updatedTipologias=f } -$('.lp-rotcolor-tipologia').on("change", function () { +function change_lp_rot_color_tipologia(){ if( parseInt($('#lp_rot_color_paginas').val())>0 && parseInt($('#lp_rot_color_papel option:selected').val())>0 && - parseInt($('#lp_rot_color_gramaje option:selected').val())>0 && + $('#lp_rot_color_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_color_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_color(false,true); } -}) +} -$('#lp_rot_color_defecto').on("click", function () { +function por_defecto_lp_rot_color(){ if( parseInt($('#lp_rot_color_paginas').val())>0 && parseInt($('#lp_rot_color_papel option:selected').val())>0 && - parseInt($('#lp_rot_color_gramaje option:selected').val())>0 && + $('#lp_rot_color_gramaje option:selected').text().length>0 && parseInt($('#lp_rot_color_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_rot_color(false); } -}) +} function fill_lp_rot_color(row, fromComparador=false){ if(fromComparador){ - //console.log(row) - $('#lp_rot_color_paginas').val(row.paginas) - $('#lp_rot_color_papel').val(row.papelGenericoId) - $('#lp_rot_color_gramaje').empty() - $('#lp_rot_color_gramaje').append(``); - $('#lp_rot_color_papelImpresion').empty() - $('#lp_rot_color_papelImpresion').append(``); - $('#lp_rot_color_maquina').empty() - $('#lp_rot_color_maquina').append(``); - $('#lp_rot_color_aFavorFibra').prop('checked', row.aFavorFibra=='si'?true:false) - $('#lp_rot_color_numPagColor').val(row.paginasColor) - calcularPresupuesto_rot_color(false); + var input_data = { + paginas: row.paginas, + papel_generico_id: row.papelGenericoId, + gramaje: row.gramaje, + papel_impresion_id: row.papelImpresionId, + maquina_id: row.maquinaId, + fibra: row.aFavorFibra=='no'?false:true + } + + calcularPresupuesto_rot_color(false, false, input_data); } else{ // Si viene de hacerlo a mano... - $('#lp_rot_color_tiempo').val(row.tiempo_maquina) - $('#lp_rot_color_numeroPliegos').val(isNaN(parseFloat(row.pliegos_libro)) ? "" : parseFloat(row.pliegos_libro).toFixed(2)) - $('#lp_rot_color_pliegosPedido').val(isNaN(parseFloat(row.pliegos_pedido)) ? "" : parseFloat(row.pliegos_pedido).toFixed(2)) - $('#lp_rot_color_precioPliego').val(isNaN(parseFloat(row.precios_pliegos)) ? "" : parseFloat(row.precios_pliegos).toFixed(6)) - $('#lp_rot_color_libro').val(isNaN(parseFloat(row.precio_libro)) ? "" : parseFloat(row.precio_libro).toFixed(2)) - $('#lp_rot_color_totalPapelPedido').val(isNaN(parseFloat(row.precio_pedido)) ? "" : parseFloat(row.precio_pedido).toFixed(2)) - $('#lp_rot_color_margenPapelPedido').val(isNaN(parseFloat(row.margen_papel_pedido)) ? "": parseFloat(row.margen_papel_pedido).toFixed(2)) - $('#lp_rot_color_lomo').val(isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2)) - $('#lp_rot_color_peso').val(isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2)) - $('#lp_rot_color_click').val(isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6)) - $('#lp_rot_color_totalClicks').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) - $('#lp_rot_color_totalLinea').val(isNaN(parseFloat(row.total_impresion)) ? "" : parseFloat(row.total_impresion).toFixed(2)) - $('#lp_rot_color_aFavorFibra').prop('checked', row.a_favor_fibra==0?false:true) + // Si viene de hacerlo a mano... + data = processRowData(row, 'lp_rot_color', 'lp-rot-color'); - $('#lp_rot_color_cobNegro').val(isNaN(parseFloat(row.datosTipologias.negro)) ? "" : parseFloat(row.datosTipologias.negro).toFixed(0)) - $('#lp_rot_color_cobCyan').val(isNaN(parseFloat(row.datosTipologias.cyan)) ? "" : parseFloat(row.datosTipologias.cyan).toFixed(0)) - $('#lp_rot_color_cobMagenta').val(isNaN(parseFloat(row.datosTipologias.magenta)) ? "" : parseFloat(row.datosTipologias.magenta).toFixed(0)) - $('#lp_rot_color_cobAmarillo').val(isNaN(parseFloat(row.datosTipologias.amarillo)) ? "" : parseFloat(row.datosTipologias.amarillo).toFixed(0)) - $('#lp_rot_color_gotaNegro').val(isNaN(parseFloat(row.datosTipologias.gota_negro)) ? "" : parseFloat(row.datosTipologias.gota_negro).toFixed(0)) - $('#lp_rot_color_gotaColor').val(isNaN(parseFloat(row.datosTipologias.gota_color)) ? "" : parseFloat(row.datosTipologias.gota_color).toFixed(0)) + var row = tableLineasPresupuesto.row('#lp_rot_color'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_rot_color').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_rot_color'); + } + row.child(format(row.data())).show(); - $('#lp_rot_color_metrosMinuto').val(isNaN(parseFloat(row.maquina_velocidad)) ? "" : parseFloat(row.maquina_velocidad).toFixed(2)) - $('#lp_rot_color_resolucion').val(isNaN(parseFloat(row.resolucion)) ? "" : parseFloat(row.resolucion).toFixed(0)) - $('#lp_rot_color_areaPaginas').val(isNaN(parseFloat(row.superficie)) ? "" : parseFloat(row.superficie).toFixed(2)) - $('#lp_rot_color_gotasNegro').val(isNaN(parseFloat(row.num_gotas_negro)) ? "" : parseFloat(row.num_gotas_negro).toFixed(0)) - $('#lp_rot_color_gotasCyan').val(isNaN(parseFloat(row.num_gotas_cyan)) ? "" : parseFloat(row.num_gotas_cyan).toFixed(0)) - $('#lp_rot_color_gotasMagenta').val(isNaN(parseFloat(row.num_gotas_magenta)) ? "" : parseFloat(row.num_gotas_magenta).toFixed(0)) - $('#lp_rot_color_gotasAmarillo').val(isNaN(parseFloat(row.num_gotas_amarillo)) ? "" : parseFloat(row.num_gotas_amarillo).toFixed(0)) - $('#lp_rot_color_precioPagNegro').val(isNaN(parseFloat(row.precio_pagina_negro)) ? "" : parseFloat(row.precio_pagina_negro).toFixed(6)) - $('#lp_rot_color_precioPagColor').val(isNaN(parseFloat(row.precio_pagina_color)) ? "" : parseFloat(row.precio_pagina_color).toFixed(6)) - $('#lp_rot_color_factorAltura').val(isNaN(parseFloat(row.factor_altura)) ? "" : parseFloat(row.factor_altura).toFixed(2)) - $('#lp_rot_color_factorAnchura').val(isNaN(parseFloat(row.factor_anchura)) ? "" : parseFloat(row.factor_anchura).toFixed(2)) - $('#lp_rot_color_paginasPliego').val(isNaN(parseFloat(row.paginas_por_pliego)) ? "" : parseFloat(row.paginas_por_pliego).toFixed(2)) - - $('#lp_rot_color_metrosPapelLibro').val(isNaN(parseFloat(row.metros_papel_libro)) ? "" : parseFloat(row.metros_papel_libro).toFixed(2)) - $('#lp_rot_color_metrosPapelTotal').val(isNaN(parseFloat(row.metros_papel_total)) ? "" : parseFloat(row.metros_papel_total).toFixed(2)) - $('#lp_rot_color_clicksLibro').val(isNaN(parseFloat(row.clicks_libro)) ? "" : parseFloat(row.clicks_libro).toFixed(0)) - $('#lp_rot_color_gTintaNegro').val(isNaN(parseFloat(row.peso_gotas_negro)) ? "" : parseFloat(row.peso_gotas_negro).toFixed(2)) - $('#lp_rot_color_gTintaCyan').val(isNaN(parseFloat(row.peso_gotas_cyan)) ? "" : parseFloat(row.peso_gotas_cyan).toFixed(2)) - $('#lp_rot_color_gTintaMagenta').val(isNaN(parseFloat(row.peso_gotas_magenta)) ? "" : parseFloat(row.peso_gotas_magenta).toFixed(2)) - $('#lp_rot_color_gTintaAmarillo').val(isNaN(parseFloat(row.peso_gotas_amarillo)) ? "" : parseFloat(row.peso_gotas_amarillo).toFixed(2)) - $('#lp_rot_color_clicksPedido').val(isNaN(parseFloat(row.clicks_pedido)) ? "" : parseFloat(row.clicks_pedido).toFixed(0)) - $('#lp_rot_color_totalClicksPedido').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) - $('#lp_rot_color_totalTinta').val(isNaN(parseFloat(row.precio_tinta)) ? "" : parseFloat(row.precio_tinta).toFixed(2)) - $('#lp_rot_color_totalCorte').val(isNaN(parseFloat(row.total_corte)) ? "" : parseFloat(row.total_corte).toFixed(2)) - $('#lp_rot_color_totalImpresion').val(isNaN(parseFloat(row.precio_click_pedido+row.precio_tinta+row.total_corte)) ? "" : parseFloat(row.precio_click_pedido+row.precio_tinta+row.total_corte).toFixed(2)) - - $('#lp_rot_color_velocidadCorte').val(isNaN(parseFloat(row.velocidad_corte)) ? "" : parseFloat(row.velocidad_corte).toFixed(2)) - $('#lp_rot_color_precioHoraCorte').val(isNaN(parseFloat(row.precio_hora_corte)) ? "" : parseFloat(row.precio_hora_corte).toFixed(2)) - $('#lp_rot_color_tiempoCorte').val(isNaN(parseFloat(row.tiempo_corte)) ? "" : parseFloat(row.tiempo_corte).toFixed(2)) - $('#lp_rot_color_gTintaNegroPed').val(isNaN(parseFloat(row.peso_gotas_negro_pedido)) ? "" : parseFloat(row.peso_gotas_negro_pedido).toFixed(2)) - $('#lp_rot_color_gTintaCyanPed').val(isNaN(parseFloat(row.peso_gotas_cyan_pedido)) ? "" : parseFloat(row.peso_gotas_cyan_pedido).toFixed(2)) - $('#lp_rot_color_gTintaMagentaPed').val(isNaN(parseFloat(row.peso_gotas_magenta_pedido)) ? "" : parseFloat(row.peso_gotas_magenta_pedido).toFixed(2)) - $('#lp_rot_color_gTintaAmarilloPed').val(isNaN(parseFloat(row.peso_gotas_amarillo_pedido)) ? "" : parseFloat(row.peso_gotas_amarillo_pedido).toFixed(2)) - - $('#lp_rot_color_numPagColor').val(row.paginas_color) - - $('#lp_rot_color_tarifa_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id)) - $('#lp_rot_color_maquina_ancho').val(isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0])) - $('#lp_rot_color_maquina_alto').val(isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1])) - $('#lp_rot_color_maquina_impresion_ancho').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0])) - $('#lp_rot_color_maquina_impresion_alto').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1])) - $('#lp_rot_color_formas').val(isNaN(parseInt(row.num_formas.value)) ? "" : parseInt(row.num_formas.value)) - $('#lp_rot_color_formas_h').val(isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? "" : parseInt(row.num_formas.num_formas_horizontales)) - $('#lp_rot_color_formas_v').val(isNaN(parseInt(row.num_formas.num_formas_verticales)) ? "" : parseInt(row.num_formas.num_formas_verticales)) - $('#lp_rot_color_formas_orientacion').val(row.num_formas.posicion_formas) - - $('#lp_rot_color_alto_click').val(row.alto_click) + eventos_lp_rot_color() calcular_mermas() updateTotales() } - - - $('.lp_rot_color').css('display', '') + $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } + +function eventos_lp_rot_color(){ + $('#lp_rot_color_papel').bind("focus", {clear_selectors: true}, clear_lp_rot_color); + $('#lp_rot_color_gramaje').bind("focus", set_lp_rot_color_gramaje); + $('#lp_rot_color_papelImpresion').focus("focus", set_lp_rot_color_papelImpresion); + $('#lp_rot_color_maquina').bind("focus", set_lp_rot_color_maquina); + $('#lp_rot_color_maquina').bind("change", change_lp_rot_color_maquina); + $('#lp_rot_color_paginas').bind("change", change_lp_rot_color_paginas); + $('#lp_rot_color_vercalculos').bind("click", {rowId: 'lp_rot_color'}, verCalculosInkjet); + $('#lp_rot_color_aFavorFibra').bind("change", change_lp_rot_color_aFavorFibra); + $('.lp-rot-bn-tipologia').bind("change", change_lp_rot_color_tipologia); + $('#lp_rot_color_defecto').bind("click", por_defecto_lp_rot_color); +} endSection() ?> @@ -2600,7 +2594,7 @@ async function set_lp_cubierta_gramaje(){ tipo: 'gramajeLineasPresupuesto', uso: 'cubierta', datos: $('#lp_cubierta_papel option:selected').val() , - tipoLinea: "color", + tipoLinea: "colorhq", : v }, dataType: 'json', @@ -2632,7 +2626,7 @@ async function set_lp_cubierta_papelImpresion(){ uso: 'cubierta', datos: $('#lp_cubierta_papel option:selected').val() , gramaje: $('#lp_cubierta_gramaje option:selected').text().trim() , - tipoLinea: "color", + tipoLinea: "colorhq", : v }, dataType: 'json', @@ -2659,7 +2653,7 @@ async function set_lp_cubierta_maquina(){ }, data: { tipo: 'maquina', - uso: 'color', + uso: 'colorhq', tipoLinea: "cubierta", uso_tarifa: "cubierta", is_rotativa: 0, @@ -2691,42 +2685,48 @@ function clear_lp_cubierta(clear_selectors){ } -$('#lp_cubierta_papel').bind("focus", {clear_selectors: true}, clear_lp_cubierta); -$('#lp_cubierta_gramaje').bind("focus", set_lp_cubierta_gramaje); -$('#lp_cubierta_papelImpresion').focus("focus", set_lp_cubierta_papelImpresion); -$('#lp_cubierta_maquina').bind("focus", set_lp_cubierta_maquina); - - -$('#lp_cubierta_maquina').on("change", function () { +function change_lp_cubierta_maquina(){ if(parseInt($('#lp_cubierta_paginas option:selected').val())>0){ calcularPresupuesto_cubierta(); } -}) +} -$('#lp_cubierta_paginas').on("change", function () { +function change_lp_cubierta_paginas(){ if( parseInt($('#lp_cubierta_paginas option:selected').val())>0 && parseInt($('#lp_cubierta_papel option:selected').val())>0 && - parseInt($('#lp_cubierta_gramaje option:selected').val())>0 && + $('#lp_cubierta_gramaje option:selected').text().length>0 && parseInt($('#lp_cubierta_papelImpresion option:selected').val())>0 ){ calcularPresupuesto_cubierta(); } -}) +} -function calcularPresupuesto_cubierta(fromComparador=false, updatedTipologias=false){ +function calcularPresupuesto_cubierta(fromComparador=false, input_data={}){ const dimension = getDimensionLibro(); + if(Object.keys(input_data).length == 0){ + + input_data = { + paginas:parseInt($('#lp_cubierta_paginas option:selected').val()), + papel_generico_id: $('#lp_cubierta_papel option:selected').val(), + papel_generico: $('#lp_cubierta_papel option:selected').text().trim(), + gramaje: $('#lp_cubierta_gramaje option:selected').text().trim(), + maquina_id: $('#lp_cubierta_maquina option:selected').val(), + papel_impresion_id: $('#lp_cubierta_papelImpresion option:selected').val() + } + } + let datos = { type: 'cubierta', color: 1, - hq: 0, - paginas: parseInt($('#lp_cubierta_paginas option:selected').val()), + hq: 1, + paginas: input_data.paginas, paginas_negro: 0, paginas_color: 0, solapas: $('#solapas').is(':checked')?1:0, @@ -2735,9 +2735,9 @@ function calcularPresupuesto_cubierta(fromComparador=false, updatedTipologias=fa merma: parseInt($('#mermacubierta').val()), ancho: dimension.ancho, alto: dimension.alto, - papel_generico_id: $('#lp_cubierta_papel option:selected').val() , - papel_generico: $('#lp_cubierta_papel option:selected').text().trim(), - gramaje: $('#lp_cubierta_gramaje option:selected').text().trim(), + papel_generico_id: input_data.papel_generico_id, + papel_generico: input_data.papel_generico, + gramaje: input_data.gramaje, cliente_id: $('#clienteId').find(":selected").val(), : v } @@ -2751,18 +2751,9 @@ function calcularPresupuesto_cubierta(fromComparador=false, updatedTipologias=fa if(data.lineas.length >0){ // Se cogen los valores de la linea con los datos correspondientes $.each(data.lineas, function(key, value) { - if(fromComparador){ - if(value.fields.maquina_id === $('#lp_cubierta_maquina option:selected').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_cubierta_papelImpresion option:selected').val()) { - - fill_lp_cubierta(value.fields); - return false; - } - } - else if (value.fields.maquina_id === $('#lp_cubierta_maquina').val() && - value.fields.papel_generico_id === datos.papel_generico_id && - value.fields.papel_impresion_id === $('#lp_cubierta_papelImpresion').val()) { + if(value.fields.maquina_id === input_data.maquina_id && + value.fields.papel_generico_id === input_data.papel_generico_id && + value.fields.papel_impresion_id === input_data.papel_impresion_id) { fill_lp_cubierta(value.fields); return false; @@ -2788,26 +2779,20 @@ function fill_lp_cubierta(row, fromComparador=false){ if(fromComparador){ - $('#lp_cubierta_paginas').val(row.paginas) - $('#lp_cubierta_papel').val(row.papelGenericoId) - $('#lp_cubierta_gramaje').empty() - $('#lp_cubierta_gramaje').append(``); - $('#lp_cubierta_papelImpresion').empty() - $('#lp_cubierta_papelImpresion').append(``); - $('#lp_cubierta_maquina').empty() - $('#lp_cubierta_maquina').append(``); - calcularPresupuesto_cubierta(false); + var input_data = { + paginas: row.paginas, + papel_generico_id: row.papelGenericoId, + gramaje: row.gramaje, + papel_impresion_id: row.papelImpresionId, + maquina_id: row.maquinaId, + } + + calcularPresupuesto_cubierta(false, input_data); } else{ - var portadaObjeto = { + var portadaObjeto = { anchoLibro:row.dimensiones_libro[0], altoLibro:row.dimensiones_libro[1], solapas:$('#solapas_ancho').val(), @@ -2815,44 +2800,39 @@ function fill_lp_cubierta(row, fromComparador=false){ //previewEsquemaCubierta(portadaObjeto); - - // Si viene de hacerlo a mano... - $('#lp_cubierta_tiempo').val(row.tiempo_maquina) - $('#lp_cubierta_numeroPliegos').val(isNaN(parseFloat(row.pliegos_libro)) ? "" : parseFloat(row.pliegos_libro).toFixed(2)) - $('#lp_cubierta_pliegosPedido').val(isNaN(parseFloat(row.pliegos_pedido)) ? "" : parseFloat(row.pliegos_pedido).toFixed(2)) - $('#lp_cubierta_precioPliego').val(isNaN(parseFloat(row.precios_pliegos)) ? "" : parseFloat(row.precios_pliegos).toFixed(6)) - $('#lp_cubierta_libro').val(isNaN(parseFloat(row.precio_libro)) ? "" : parseFloat(row.precio_libro).toFixed(2)) - $('#lp_cubierta_totalPapelPedido').val(isNaN(parseFloat(row.precio_pedido)) ? "" : parseFloat(row.precio_pedido).toFixed(2)) - $('#lp_cubierta_margenPapelPedido').val(isNaN(parseFloat(row.margen_papel_pedido)) ? "" : parseFloat(row.margen_papel_pedido).toFixed(2)) - $('#lp_cubierta_lomo').val(isNaN(parseFloat(row.mano)) ? "" : parseFloat(row.mano).toFixed(2)) - $('#lp_cubierta_peso').val(isNaN(parseFloat(row.peso)) ? "" : parseFloat(row.peso).toFixed(2)) - $('#lp_cubierta_click').val(isNaN(parseFloat(row.precio_click)) ? "" : parseFloat(row.precio_click).toFixed(6)) - $('#lp_cubierta_totalClicks').val(isNaN(parseFloat(row.precio_click_pedido)) ? "" : parseFloat(row.precio_click_pedido).toFixed(2)) - $('#lp_cubierta_totalLinea').val(isNaN(parseFloat(row.total_impresion)) ? "" : parseFloat(row.total_impresion).toFixed(2)) - $('#lp_cubierta_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id))) ? "" : parseInt(row.tarifa_impresion_id) + data = processRowData(row, 'lp_cubierta', 'lp-cubierta'); - $('#lp_cubierta_tarifa_impresion_id').val(isNaN(parseInt(row.tarifa_impresion_id)) ? "" : parseInt(row.tarifa_impresion_id)) - $('#lp_cubierta_maquina_ancho').val(isNaN(parseFloat(row.dimensiones_maquina[0])) ? "" : parseFloat(row.dimensiones_maquina[0])) - $('#lp_cubierta_maquina_alto').val(isNaN(parseFloat(row.dimensiones_maquina[1])) ? "" : parseFloat(row.dimensiones_maquina[1])) - $('#lp_cubierta_maquina_impresion_ancho').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[0])) ? "" : parseFloat(row.dimensiones_maquina_impresion[0])) - $('#lp_cubierta_maquina_impresion_alto').val(isNaN(parseFloat(row.dimensiones_maquina_impresion[1])) ? "" : parseFloat(row.dimensiones_maquina_impresion[1])) - $('#lp_cubierta_formas').val(isNaN(parseInt(row.num_formas.value)) ? "" : parseInt(row.num_formas.value)) - $('#lp_cubierta_formas_h').val(isNaN(parseInt(row.num_formas.num_formas_horizontales)) ? "" : parseInt(row.num_formas.num_formas_horizontales)) - $('#lp_cubierta_formas_v').val(isNaN(parseInt(row.num_formas.num_formas_verticales)) ? "" : parseInt(row.num_formas.num_formas_verticales)) - $('#lp_cubierta_formas_orientacion').val(row.num_formas.posicion_formas) + var row = tableLineasPresupuesto.row('#lp_cubierta'); + if(row.length>0) + tableLineasPresupuesto.row('#lp_cubierta').data(data).draw(true) + else{ + tableLineasPresupuesto.row.add(data).draw(true) + row = tableLineasPresupuesto.row('#lp_cubierta'); + } + row.child(format(row.data())).show(); calcular_mermas() updateTotales() + } - $('.lp_cubierta').css('display', '') $("#tableLineasPresupuesto").DataTable().columns.adjust(); // getVisibleTabs(); // Update preview UI } +function eventos_lp_cubierta(){ + + $('#lp_cubierta_papel').bind("focus", {clear_selectors: true}, clear_lp_cubierta); + $('#lp_cubierta_gramaje').bind("focus", set_lp_cubierta_gramaje); + $('#lp_cubierta_papelImpresion').focus("focus", set_lp_cubierta_papelImpresion); + $('#lp_cubierta_maquina').bind("focus", set_lp_cubierta_maquina); + $('#lp_cubierta_maquina').bind("change", change_lp_cubierta_maquina); + $('#lp_cubierta_paginas').bind("change", change_lp_cubierta_paginas); + $('#lp_cubierta_vercalculos').bind("click", {rowId: 'lp_cubierta'}, verCalculosInkjet); +} fill_lp_from_bbdd() @@ -2964,7 +2944,54 @@ async function fill_bbdd_from_lp(presupuesto_id){ const tiposLineas = ['bn','bnhq','color','colorhq','cubierta','rot_bn','rot_color']; data=[]; - tiposLineas.forEach(function(tipo_lp) { + + tableLineasPresupuesto.rows().every( function ( rowIdx, tableLoop, rowLoop ) { + var rowData = this.data(); + console.log(data) + const formas = { + maquina_ancho: rowData.maquina_ancho, + maquina_alto: rowData.maquina_alto, + maquina_impresion_ancho: rowData.maquina_impresion_ancho, + maquina_impresion_alto: rowData.maquina_impresion_alto, + formas: rowData.formas, + formas_v: rowData.formas_v, + formas_h: rowData.formas_h, + formas_orientacion: rowData.formas_orientacion, + } + + var t_maq_str = rowData.tiempo.split(':'); // split it at the colons + var t_maq = 0 + + if(t_maq_str.length == 3) + t_maq = (+t_maq_str[0]) * 3600 + (+t_maq_str[1]) * 60 + (+t_maq_str[2]); + + linea_data = { + presupuesto_id: presupuesto_id, + tipo: rowData.row_id, + paginas: rowData.paginas, + papel_id: rowData.papel, + gramaje: rowData.gramage, + papel_impresion_id: rowData.papel_impresion_id, + maquina_id: rowData.maquina_id, + tiempo_maquina: t_maq, + pliegos_libro: rowData.numeroPliegos, + pliegos_pedido: rowData.pliegosPedido, + pliegos_precio: rowData.precioPliego, + libro: rowData.libro, + total_papel_pedido: rowData.totalPapelPedido, + margen_papel_pedido: rowData.margenPapelPedido, + mano: rowData.lomo, + peso: rowData.peso, + precio_click: rowData.click, + precio_click_pedido: rowData.totalClicks, + check_papel_total: $('#' + rowData.row_id + '_checkPapel').is(":checked")?1:0, + check_impresion_total: $('#' + rowData.row_id + '_checkClicks').is(":checked")?1:0, + tarifa_impresion_id: rowData.tarifa_impresion_id, + formas: JSON.stringify(formas) + } + + } ); + tiposLineas.forEach(function(row) { if($('#lp_' + tipo_lp).css('display') != 'none'){