From 2df473edb68781e3217206567ce393b249b88dc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jaime=20Jim=C3=A9nez?= Date: Tue, 17 Dec 2024 21:47:08 +0100 Subject: [PATCH] trabajando en el comparador --- ci4/app/Config/Routes.php | 3 +- .../Presupuestos/Presupuestoadmin.php | 50 +- ci4/app/Language/es/Presupuestos.php | 3 + .../presupuestos/admin/_comentariosItems.php | 4 +- .../form/presupuestos/admin/_datosEnvios.php | 4 +- .../admin/_datosPresupuestoClienteItems.php | 1241 +--------------- .../admin/_datosServiciosItems.php | 5 +- .../admin/_lineasPresupuestoItems.php | 4 +- .../admin/_presupuestoDireccionesForm.php | 4 +- .../form/presupuestos/admin/_previewItems.php | 3 +- .../admin/_tiradasAlternativasItems.php | 4 +- .../form/presupuestos/admin/comparador.js | 195 +-- .../admin/viewPresupuestoadminForm.php | 6 +- .../presupuestoAdmin/sections/comparador.js | 1269 ++++++++++++++++- .../presupuestoAdmin/sections/datosLibro.js | 4 +- 15 files changed, 1345 insertions(+), 1454 deletions(-) diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php index 94d0516a..d9c91ec9 100644 --- a/ci4/app/Config/Routes.php +++ b/ci4/app/Config/Routes.php @@ -570,7 +570,6 @@ $routes->group('presupuestoadmin', ['namespace' => 'App\Controllers\Presupuestos $routes->get('list/(:num)', 'Presupuestoadmin::list/$1', ['as' => 'presupuestoAdminList']); // HOMOGENIZAR CON ARGS DINAMICOS!!! $routes->get('add/(:num)', 'Presupuestoadmin::add/$1', ['as' => 'newPresupuestoAdmin']); $routes->get('edit/(:any)', 'Presupuestoadmin::edit/$1', ['as' => 'editarPresupuestoAdmin']); - $routes->get('cargar/(:any)', 'Presupuestoadmin::cargar/$1'); $routes->post('add/(:num)', 'Presupuestoadmin::add/$1', ['as' => 'createPresupuestoAdmin']); $routes->post('create', 'Presupuestoadmin::create', ['as' => 'ajaxCreatePresupuestoAdmin']); $routes->put('(:num)/update', 'Presupuestoadmin::update/$1', ['as' => 'ajaxUpdatePresupuestoAdmin']); @@ -580,6 +579,8 @@ $routes->group('presupuestoadmin', ['namespace' => 'App\Controllers\Presupuestos $routes->post('allmenuitems', 'Presupuestoadmin::allItemsSelect', ['as' => 'select2ItemsOfPresupuestoAdmin']); $routes->post('menuitems', 'Presupuestoadmin::menuItems', ['as' => 'menuItemsOfPresupuestoAdmin']); + $routes->get('cargar/(:any)', 'Presupuestoadmin::cargar/$1'); + $routes->post('comparadorplana', 'Presupuestoadmin::obtenerComparadorPlana'); $routes->get('papelgenerico', 'Presupuestoadmin::getPapelGenerico'); $routes->get('papelgramaje', 'Presupuestoadmin::getGramaje'); }); diff --git a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php index d7240367..914fb0b1 100644 --- a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php +++ b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php @@ -19,6 +19,7 @@ use App\Models\Presupuestos\PresupuestoModel; use App\Models\Presupuestos\PresupuestoPreimpresionesModel; use App\Models\Presupuestos\PresupuestoServiciosExtraModel; use App\Services\PresupuestoService; +use App\Services\PresupuestoClienteService; use Exception; class Presupuestoadmin extends \App\Controllers\BaseResourceController @@ -534,14 +535,11 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController foreach ($data['comparador']['json_data'] as &$item) { $item['papel_nombre'] = $modelPapelGenerico->getNombre($item['papel_id'])['nombre']; } - + $data['comparador']['posPagColor'] = $presupuesto->comp_pos_paginas_color; /* - $data['datosGenerales']['posPaginasColor'] = $presupuesto->comp_pos_paginas_color; - $data['datosGenerales']['papelInteriorDiferente'] = $presupuesto->papel_interior_diferente; - $data['datosGenerales']['paginasColorConsecutivas'] = $presupuesto->paginas_color_consecutivas; - + $datos_papel = $this->obtenerDatosPapel($presupuesto->id); @@ -610,6 +608,44 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController } } + + public function obtenerComparadorPlana(){ + echo "hola"; + //if($this->request->isAJAX()){ + + $cliente_id = $this->request->getPost('cliente_id'); + $datosPedido = $this->request->getPost('datosPedido'); + $papel_generico = $this->request->getPost('papel_generico'); + $gramaje = $this->request->getPost('gramaje'); + $papelInteriorDirefente = $this->request->getPost('papelInteriorDiferente'); + $paginas_color = $this->request->getPost('paginas_color'); + $isColor = $this->request->getPost('isColor'); + $isHq = $this->request->getPost('isHq'); + $tipo_impresion_id = $this->request->getPost('tipo_impresion_id'); + $uso = $this->request->getPost('uso'); + + $data = (object)array( + 'cliente_id' => $cliente_id, + 'datosPedido' => $datosPedido, + 'papel_generico' => $papel_generico, + 'gramaje' => $gramaje, + 'papelInteriorDirefente' => $papelInteriorDirefente, + 'paginas_color' => $paginas_color, + 'isColor' => $isColor, + 'isHq' => $isHq, + 'tipo_impresion_id' => $tipo_impresion_id, + 'uso' => $uso + ); + + $data = PresupuestoClienteService::obtenerComparadorInteriorPlana($data); + return $this->respond($data); + /*} + else{ + return $this->failUnauthorized('Invalid request', 403); + }*/ + } + + public function datatable() { if ($this->request->isAJAX()) { @@ -1310,11 +1346,11 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController $query = $model->getGramajeForComparador($tipo, $papel_generico_id, $cubierta, $sobrecubierta, $rotativa, $guardas, $tapa_dura, $isPOD); if ($this->request->getGet("q")) { $query->groupStart() - ->orLike("lg_papel_generico.nombre", $this->request->getGet("q")) + ->orLike("lg_papel_impresion.gramaje", $this->request->getGet("q")) ->groupEnd(); } - return $this->response->setJSON($query->orderBy("t1.nombre", "asc")->get()->getResultObject()); + return $this->response->setJSON($query->orderBy("t2.gramaje", "asc")->get()->getResultObject()); } else { return $this->failUnauthorized('Invalid request', 403); } diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php index fee02953..59d13387 100755 --- a/ci4/app/Language/es/Presupuestos.php +++ b/ci4/app/Language/es/Presupuestos.php @@ -369,6 +369,9 @@ return [ 'paginas' => 'El campo páginas tiene que ser mayor que cero', 'paginasLP' => 'El número de páginas no coincide con el total', 'tiradas' => 'El campo tiradas tiene que ser mayor que cero', + 'seleccionePapel' => 'Seleccione un papel', + 'seleccioneGramaje' => 'Seleccione un gramaje', + 'seleccioneCliente' => 'Seleccione un cliente', 'dimension' => 'La dimensión del libro tiene que ser mayor que 60mm', 'lineaDuplicada' => 'Ya existe ese tipo de linea en el presupuesto', 'errorRotColor' => 'Papeles y gramajes deben ser iguales en color y BN', diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_comentariosItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_comentariosItems.php index 64c4289c..f5b3c691 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_comentariosItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_comentariosItems.php @@ -158,7 +158,7 @@ section("additionalInlineJs") ?> - +/* $("textarea[name*='comentarios_']").each(function(){ if (!$.trim($(this).val())) { // textarea is empty or contains only white-space @@ -167,7 +167,7 @@ $("textarea[name*='comentarios_']").each(function(){ $("#mostrar_" + $(this).attr('name')).show(); } }); - +*/ endSection() ?> diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosEnvios.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosEnvios.php index 26a0f0b7..641d40f8 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosEnvios.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosEnvios.php @@ -59,7 +59,7 @@ section("additionalInlineJs") ?> - +/* window.paisList = ; window.direccionesList = ; @@ -74,5 +74,5 @@ window.token_ajax= {: v}; $( document ).ready(function() { load_datos_envios(); }); - +*/ endSection() ?> \ No newline at end of file diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosPresupuestoClienteItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosPresupuestoClienteItems.php index b9c143f3..f17fa7a0 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosPresupuestoClienteItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosPresupuestoClienteItems.php @@ -81,7 +81,7 @@
-
@@ -95,21 +95,14 @@

- +
-
@@ -123,21 +116,14 @@

- +
-
@@ -151,21 +137,14 @@

- +
-
@@ -190,17 +169,10 @@
-
@@ -224,18 +196,11 @@
-
-
@@ -266,13 +231,6 @@
@@ -286,13 +244,13 @@ -
+
-
+
- - - - -section("additionalInlineJs") ?> - - autosize($('#compCalPaginasColor')); - - function init_comparador() { - $('#tipoImpresion').select2({ - allowClear: false, - }); - - - - $('#compCarasCubierta').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - }); - - $('#compPapelGuardas').select2({ - allowClear: false, - }); - - $('#compCarasGuardas').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - }); - - - updatePapelesComparador(); - const paginasColor = document.getElementById('compCalPaginasColor'); - if (paginasColor.value.length > 0) { - computarPaginasColor(paginasColor.value); - } - - computarPaginasColor($('#compPosPaginasColor').val()); - } - - $('#compSobrecubierta').on('change', function(){ - if ($('#compSobrecubierta').val()==1){ - value = false - } - else{ - value = 'disabled' - $('#compPapelSobrecubierta').val(0) - $('#compGramajeSobrecubierta').val('') - $('#compGramajeSobrecubierta').select2("destroy") - $('#compGramajeSobrecubierta').select2({allowClear: false, minimumResultsForSearch: Infinity}) - - } - $('#compPapelSobrecubierta').prop('disabled', value); - $('#compGramajeSobrecubierta').prop('disabled', value); - }) - - function init_lineas_comparador(){ - var comp_data = - - try{ - $("#compPapelNegro").val(parseInt(comp_data.bn.papel_id)).trigger('change'); - - try{ - var newState = new Option(comp_data.bn.gramaje, comp_data.bn.gramaje, true, true); - // Append it to the select - $("#compGramajeNegro").append(newState).trigger('change'); - $('#compGramajeNegro').prop('disabled', false); - }catch(e){} - }catch(e){} - - try{ - $("#compPapelNegrohq").val(parseInt(comp_data.bnhq.papel_id)).trigger('change'); - - try{ - var newState = new Option(comp_data.bnhq.gramaje, comp_data.bnhq.gramaje, true, true); - // Append it to the select - $("#compGramajeNegrohq").append(newState).trigger('change'); - $('#compGramajeNegrohq').prop('disabled', false); - }catch(e){} - }catch(e){} - - try{ - $("#compPapelColor").val(parseInt(comp_data.color.papel_id)).trigger('change'); - - try{ - var newState = new Option(comp_data.color.gramaje, comp_data.color.gramaje, true, true); - // Append it to the select - $("#compGramajeColor").append(newState).trigger('change'); - $('#compGramajeColor').prop('disabled', false); - }catch(e){} - }catch(e){} - - try{ - $("#compPapelColorhq").val(parseInt(comp_data.colorhq.papel_id)).trigger('change'); - - try{ - var newState = new Option(comp_data.colorhq.gramaje, comp_data.colorhq.gramaje, true, true); - // Append it to the select - $("#compGramajeColorhq").append(newState).trigger('change'); - $('#compGramajeColorhq').prop('disabled', false); - }catch(e){} - }catch(e){} - - try{ - $("#compCarasCubierta").val(parseInt(comp_data.cubierta.paginas)).change(); - try{ - $("#compPapelCubierta").val(parseInt(comp_data.cubierta.papel_id)).trigger('select2:select'); - - try{ - var newState = new Option(comp_data.cubierta.gramaje, comp_data.cubierta.gramaje, true, true); - // Append it to the select - $("#compGramajeCubierta").append(newState).trigger('change'); - $('#compGramajeCubierta').prop('disabled', false); - }catch(e){} - }catch(e){} - }catch(e){} - - try{ - $("#compSobrecubierta").val(parseInt(comp_data.sobrecubierta.imprimir)).change(); - try{ - $("#compPapelSobrecubierta").val(parseInt(comp_data.sobrecubierta.papel_id)).trigger('select2:select'); - - try{ - var newState = new Option(comp_data.sobrecubierta.gramaje, comp_data.sobrecubierta.gramaje, true, true); - // Append it to the select - $("#compGramajeSobrecubierta").append(newState).trigger('change'); - $('#compGramajeSobrecubierta').prop('disabled', false); - }catch(e){} - }catch(e){} - }catch(e){} - - try{ - $("#compCarasGuardas").val(parseInt(comp_data.guardas.paginas_impresion)).change(); - $("#compPapelGuardas").val(parseInt(comp_data.guardas.papel_id)).trigger('change'); - }catch(e){} - - } - - var tableCompIntPlana = new DataTable('#tableCompIntPlana',{ - scrollX: true, - searching: false, - paging: false, - info: false, - ordering: false, - responsive: true, - select: false, - language: { - url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" - }, - columns: [ - { 'data': 'tipo', - 'render': function ( data, type, row, meta ) { - if(data=='bn') - return ''; - else if(data=='bnhq') - return ''; - else if(data=='color') - return ''; - else if(data=='colorhq') - return ''; - } - }, - { 'data': 'paginas' }, - { 'data': 'papel' }, - { 'data': 'gramaje' }, - { 'data': 'marca' }, - { 'data': 'maquina' }, - { 'data': 'numeroPliegos' }, - { 'data': 'pliegosPedido' }, - { 'data': 'precioPliego' }, - { 'data': 'libro' }, - { 'data': 'totalPapelPedido' }, - { 'data': 'lomo' }, - { 'data': 'peso' }, - { 'data': 'horasMaquina' }, - { 'data': 'precioImpresion' }, - { 'data': 'total' }, - { 'data': 'maquinaId'}, - { 'data': 'maquinaVelocidad'}, - { 'data': 'tiempoMaquina'}, - { 'data': 'papelGenericoId'}, - { 'data': 'papelImpresionId'}, - { 'data': 'tarifa_impresion_id'} - ], - columnDefs: [ - { - target: [16,17,18,19,20,21], - visible: false, - searchable: false - }, - ] - }); - - - var tableCompIntRotativa = new DataTable('#tableCompIntRotativa',{ - scrollX: true, - searching: false, - paging: false, - info: false, - ordering: false, - responsive: true, - select: false, - language: { - url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" - }, - columns: [ - { 'data': 'tipo', - 'render': function ( data, type, row, meta ) { - if(data=='rotativa') - return ''; - } - }, - { 'data': 'paginas' }, - { 'data': 'papel' }, - { 'data': 'gramaje' }, - { 'data': 'marca' }, - { 'data': 'aFavorFibra', - 'render': function(data, type, row, meta){ - if(data=='si') - return ''; - else if(data=='no') - return ''; - } - }, - { 'data': 'maquina' }, - { 'data': 'numeroPliegos' }, - { 'data': 'pliegosPedido' }, - { 'data': 'precioPliego' }, - { 'data': 'libro' }, - { 'data': 'totalPapelPedido' }, - { 'data': 'lomo' }, - { 'data': 'peso' }, - { 'data': 'horasMaquina' }, - { 'data': 'precioImpresion' }, - { 'data': 'precioPagNegro' }, - { 'data': 'precioPagColor' }, - { 'data': 'totalTinta' }, - { 'data': 'totalCorte' }, - { 'data': 'total' }, - { 'data': 'maquinaId'}, - { 'data': 'maquinaVelocidad'}, - { 'data': 'tiempoMaquina'}, - { 'data': 'papelGenericoId'}, - { 'data': 'papelImpresionId'}, - { 'data': 'paginasColor'}, - { 'data': 'tarifa_impresion_id'} - ], - columnDefs: [ - { - target: [21,22,23,24,25,26,27], - visible: false, - searchable: false - }, - ] - }); - - var tableCompCubierta = new DataTable('#tableCompCubierta',{ - scrollX: true, - searching: false, - paging: false, - info: false, - ordering: true, - responsive: true, - select: false, - language: { - url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" - }, - columns: [ - { 'data': 'tipo', - 'render': function ( data, type, row, meta ) { - if(data=='cubierta') - return ''; - else if(data=='sobrecubierta') - return ''; - } - }, - { 'data': 'paginas' }, - { 'data': 'papel' }, - { 'data': 'gramaje' }, - { 'data': 'marca' }, - { 'data': 'maquina' }, - { 'data': 'numeroPliegos' }, - { 'data': 'pliegosPedido' }, - { 'data': 'precioPliego' }, - { 'data': 'libro' }, - { 'data': 'totalPapelPedido' }, - { 'data': 'lomo' }, - { 'data': 'peso' }, - { 'data': 'horasMaquina' }, - { 'data': 'precioImpresion' }, - { 'data': 'total' }, - { 'data': 'maquinaId'}, - { 'data': 'maquinaVelocidad'}, - { 'data': 'tiempoMaquina'}, - { 'data': 'papelGenericoId'}, - { 'data': 'papelImpresionId'}, - { 'data': 'tarifa_impresion_id'} - ], - columnDefs: [ - { - target: [16,17,18,19,20,21], - visible: false, - searchable: false - }, - ], - "order": [ [0, 'asc'],[15, 'asc'] ] - }); - - - var tableCompGuardas = new DataTable('#tableCompGuardas',{ - scrollX: true, - searching: false, - paging: false, - info: false, - ordering: false, - responsive: true, - select: false, - language: { - url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" - }, - columns: [ - { 'data': 'tipo', - 'render': function ( data, type, row, meta ) { - - return ''; - } - - }, - { 'data': 'paginas' }, - { 'data': 'papel' }, - { 'data': 'gramaje' }, - { 'data': 'marca' }, - { 'data': 'maquina' }, - { 'data': 'numeroPliegos' }, - { 'data': 'pliegosPedido' }, - { 'data': 'precioPliego' }, - { 'data': 'libro' }, - { 'data': 'totalPapelPedido' }, - { 'data': 'lomo' }, - { 'data': 'peso' }, - { 'data': 'horasMaquina' }, - { 'data': 'precioImpresion' }, - { 'data': 'total' }, - { 'data': 'maquinaId'}, - { 'data': 'maquinaVelocidad'}, - { 'data': 'tiempoMaquina'}, - { 'data': 'papelGenericoId'}, - { 'data': 'papelImpresionId'}, - { 'data': 'tarifa_impresion_id'}, - { 'data': 'paginas_impresion'}, - ], - columnDefs: [ - { - target: [16,17,18,19,20,21,22], - visible: false, - searchable: false - }, - ] - }); - - function checkComparadorGuardas(actualizarLinea = false){ - - if ($('#compPapelGuardas').select2('data')[0].id > 0 ){ - - const dimension = getDimensionLibro(); - - let datos = { - tipo_impresion_id: , - type: 'guardas', - paginas: 8, - paginas_impresion: parseInt($('#compCarasGuardas').select2('data')[0].id), - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - color: 1, - hq: 1, - ancho: dimension.ancho, - alto: dimension.alto, - papel_generico_id: $('#compPapelGuardas').select2('data')[0].id, - papel_generico: $('#compPapelGuardas').select2('data')[0].text.trim(), - gramaje: parseInt($('#compGramajeGuardas').val()), - cliente_id: $('#clienteId').find(":selected").val(), - : v - }; - - $.ajax({ - type: "POST", - url: "/presupuestoadmin/datatable", - data: datos, - success: function (data) { - - clearGuardas(); - - if(data.lineas.length >0){ - fillGuardas(data); - selectGuardasLineas(); - $('#title_guardas').html('' + ' (' + tableCompGuardas.rows().count() + ')'); - $('#insertarGuardasBtn').removeClass('d-none') - if(actualizarLinea){ - var rows = $("#tableCompCubierta").DataTable().rows( '.selected' ).data().toArray(); - for(row of rows){ - fill_lp_guardas(row, true); - } - } - } - else{ - $('#title_guardas').html(''); - $('#insertarGuardasBtn').addClass('d-none') - $('#total_comp_guardas').html('0.00') - - } - yeniden(data.); - return true; - }, - error: function(e){ - return false; - } - }) - } - - else{ - clearGuardas(); - } - } - - - $('.comp_guardas_items').on('change', function (e) { - - checkComparadorGuardas(false); - }); - - - - async function getLineasIntPlana(is_color, is_hq, actualizarLinea){ - - const dimension = getDimensionLibro(); - - let datos = { - tipo_impresion_id: , - type: 'interior', - color: is_color?1:0, - hq: is_hq?1:0, - paginas: parseInt($(''+ elementos.paginas).val()), - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#merma').val()), - ancho: dimension.ancho, - alto: dimension.alto, - papel_generico_id: $(''+ elementos.papel).select2('data')[0].id, - papel_generico: $(''+ elementos.papel).select2('data')[0].text.trim(), - gramaje: $(''+ elementos.gramaje).select2('data')[0].text.trim() , - cliente_id: $('#clienteId').find(":selected").val(), - : v - }; - - $.ajax({ - type: "POST", - url: "/presupuestoadmin/datatable", - data: datos, - success: function (data) { - - clearIntLineas(is_color); - - if(data.lineas.length >0){ - - fillIntPlana(data, is_color, is_hq); - selectIntLineas(); - $('#title_int_plana').html('' + ' (' + tableCompIntPlana.rows().count() + ')'); - $('#insertarPlanaBtn').removeClass('d-none') - if(actualizarLinea){ - var rows = $("#tableCompIntPlana").DataTable().rows( '.selected' ).data().toArray(); - for(row of rows){ - - if(row['tipo'] =='bn' && !is_color && !is_hq){ - if($('#lp_bn').css('display')!='none') - fill_lp_bn(row, true); - } - else if(row['tipo'] =='bnhq' && !is_color && is_hq){ - if($('#lp_bnhq').css('display')!='none') - fill_lp_bnhq(row, true); - } - else if(row['tipo'] =='color' && is_color && !is_hq){ - if($('#lp_color').css('display')!='none') - fill_lp_color(row, true); - } - else if(row['tipo'] =='colorhq' && is_color && is_hq){ - if($('#lp_colorhq').css('display')!='none') - fill_lp_colorhq(row, true); - } - } - } - } - else{ - $('#title_int_plana').html(''); - $('#insertarPlanaBtn').addClass('d-none') - $('#total_comp_plana').html('0.00'); - } - yeniden(data.); - return true; - }, - error: function(e){ - return false; - } - }) - return false; - } - - async function getLineasIntRot(is_hq, actualizarLinea=false){ - - const dimension = getDimensionLibro(); - - // Rotativa solo negro o color (no hq) - if ( is_hq==false){ - - if(checkInputsForRotativa()){ - - let datos = { - tipo_impresion_id: , - type: 'interior_rot', - paginas: parseInt($('#paginas').val()), - paginas_negro: parseInt($('#compPaginasNegro').val()), - paginas_color: parseInt($('#compPaginasColor').val()), - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#merma').val()), - ancho: dimension.ancho, - alto: dimension.alto, - // el papel y el gramaje se coge del negro (siempre estará) - papel_generico_id: $('#compPapelNegro').select2('data')[0].id, - papel_generico: $('#compPapelNegro').select2('data')[0].text.trim(), - gramaje: $('#compGramajeNegro').select2('data')[0].text.trim() , - cliente_id: $('#clienteId').find(":selected").val(), - : v - }; - - $.ajax({ - type: "POST", - url: "/presupuestoadmin/datatable", - data: datos, - success: function (data) { - - clearIntRot(); - - if(data.lineas.length >0){ - - fillIntRot(data); - selectIntRotLineas(); - $('#title_int_rot').html('' + ' (' + tableCompIntRotativa.rows().count() + ')'); - $('#insertarRotativaBtn').removeClass('d-none') - if(actualizarLinea){ - var rows = $("#tableCompIntRotativa").DataTable().rows( '.selected' ).data().toArray(); - for(row of rows){ - if(row['paginasColor'] ==0){ - if($('#lp_rot_bn').css('display')!='none') - fill_lp_rot_bn(row, true); - } - else if(row['paginasColor'] >0){ - if($('#lp_rot_color').css('display')!='none') - fill_lp_rot_color(row, true); - } - } - } - } - else{ - $('#title_int_rot').html(''); - $('#insertarRotativaBtn').addClass('d-none') - $('#total_comp_rot').html('0.00') - - } - yeniden(data.); - return true; - }, - error: function(e){ - return false; - } - }) - } - } - return false; - } - - $('.comp_cubierta_items').on('change', function (){ - - checkComparadorCubierta() - }); - - - function checkComparadorCubierta(actualizarLinea = false){ - - if ($('#compCarasCubierta option:selected').val().length > 0 && - $('#compPapelCubierta').select2('data').length > 0 && - $('#compGramajeCubierta').select2('data').length > 0 ){ - - const dimension = getDimensionLibro(); - - let datos = { - tipo_impresion_id: , - type: 'cubierta', - paginas: parseInt($('#compCarasCubierta option:selected').val()), - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - color: 1, - ancho: dimension.ancho, - alto: dimension.alto, - lomo: getLomoLineasPresupuesto(), - solapas: $('#solapas').is(':checked')?1:0, - solapas_ancho: $('#solapas').is(':checked')?parseInt($('#solapas_ancho').val()):0, - papel_generico_id: $('#compPapelCubierta').select2('data')[0].id, - papel_generico: $('#compPapelCubierta').select2('data')[0].text.trim(), - gramaje: $('#compGramajeCubierta').select2('data')[0].text.trim() , - cliente_id: $('#clienteId').find(":selected").val(), - : v - }; - - $.ajax({ - type: "POST", - url: "/presupuestoadmin/datatable", - data: datos, - success: function (data) { - - clearCubierta(); - - if(data.lineas.length >0){ - fillCubierta(data); - selectCubiertaLineas(); - tableCompCubierta.order([0, 'asc']).draw() - $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); - $('#insertarCubiertaBtn').removeClass('d-none') - if(actualizarLinea){ - var rows = $("#tableCompCubierta").DataTable().rows( '.selected' ).data().toArray(); - for(row of rows){ - if (row.tipo=='cubierta') - fill_lp_cubierta(row, true); - } - } - } - else{ - $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); - if(tableCompCubierta.rows().count()==0){ - $('#insertarCubiertaBtn').addClass('d-none') - $('#total_comp_cubierta').html('0.00') - } - else{ - selectCubiertaLineas(); - } - - } - yeniden(data.); - return true; - }, - error: function(e){ - return false; - } - }) - } - - else{ - clearCubierta(); - } - } - - $('.comp_sobrecubierta_items').on('change', function (){ - - checkComparadorSobrecubierta() - }); - - - function checkComparadorSobrecubierta(actualizarLinea = false){ - - if ($('#compSobrecubierta option:selected').val() == 1 && - $('#compPapelSobrecubierta').select2('data').length > 0 && - $('#compGramajeSobrecubierta').select2('data').length > 0 ){ - - - const dimension = getDimensionLibro(); - - let datos = { - tipo_impresion_id: , - type: 'sobrecubierta', - paginas: 4, - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - color: 1, - ancho: dimension.ancho, - alto: dimension.alto, - lomo: getLomoLineasPresupuesto() + getLomoCubiertaLineasPresupuesto(), - solapas: $('#solapas_sobrecubierta').is(':checked')?1:0, - solapas_ancho: $('#solapas_sobrecubierta').is(':checked')?parseInt($('#solapas_ancho_sobrecubierta').val()):0, - papel_generico_id: $('#compPapelSobrecubierta').select2('data')[0].id, - papel_generico: $('#compPapelSobrecubierta').select2('data')[0].text.trim(), - gramaje: $('#compGramajeSobrecubierta').select2('data')[0].text.trim() , - cliente_id: $('#clienteId').find(":selected").val(), - : v - }; - - $.ajax({ - type: "POST", - url: "/presupuestoadmin/datatable", - data: datos, - success: function (data) { - - clearSobrecubierta(); - - if(data.lineas.length >0){ - - fillSobrecubierta(data); - selectCubiertaLineas(); - tableCompCubierta.order([ [0, 'asc'],[15, 'asc'] ]).draw() - $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); - $('#insertarCubiertaBtn').removeClass('d-none') - if(actualizarLinea){ - var rows = $("#tableCompCubierta").DataTable().rows( '.selected' ).data().toArray(); - for(row of rows){ - if (row.tipo=='sobrecubierta') - fill_lp_sobrecubierta(row, true); - } - } - } - else{ - $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); - if(tableCompCubierta.rows().count()==0){ - $('#insertarCubiertaBtn').addClass('d-none') - $('#total_comp_cubierta').html('0.00') - } - else{ - selectCubiertaLineas(); - } - - } - yeniden(data.); - return true; - }, - error: function(e){ - return false; - } - }) - } - - else{ - clearSobrecubierta(); - } - } - - - - $('.comp_negro_items').on('change', function (e) { - - checkComparadorInt(false,false); - }); - - $('.comp_negrohq_items').on('change', function (e) { - - checkComparadorInt(false, true); - }); - - $('.comp_color_items').on('change', function (e) { - - checkComparadorInt(true, false); - }); - - $('.comp_colorhq_items').on('change', function (e) { - checkComparadorInt(true, true); - }); - - - - $('#tipoImpresion').on("change.select2", function () { - updatePapelesComparador(); - $('#title_int_rot').html(''); - $('#title_int_plana').html(''); - if (($('#tipoImpresion').select2('data')[0].id == 'negro' || - $('#tipoImpresion').select2('data')[0].id == 'color')){ - - $('#tableCompIntRotativa').DataTable().clear().draw(); - $('#total_comp_rot').html("0.00"); - - - $('#compPaginasColor').val('0') - $('#compPaginasColorhq').val('0') - $('#compPaginasNegrohq').val('0'); - $('#compPaginasNegro').val($('#paginas').val()) - - if($('#tipoImpresion').select2('data')[0].id == 'negro'){ - $('#compGramajeColor').val('').trigger('change') - $('#compPapelColor').val(0).trigger('change') - } - - if( $('#tableCompIntPlana').DataTable().rows().count() > 0 && - $('#tableCompIntPlana').DataTable().cell(0, 0).data().includes('hq')) { - - $('#tableCompIntPlana').DataTable().clear().draw(); - $('#total_comp_plana').html("0.00"); - } - - } - else if (($('#tipoImpresion').select2('data')[0].id == 'negrohq' || - $('#tipoImpresion').select2('data')[0].id == 'colorhq')){ - - $('#tableCompIntRotativa').DataTable().clear().draw(); - $('#total_comp_rot').html("0.00"); - - $('#compPaginasColorhq').val('0') - $('#compPaginasColor').val('0') - $('#compPaginasNegro').val('0') - $('#compPaginasNegrohq').val($('#paginas').val()) - - if($('#tipoImpresion').select2('data')[0].id == 'negrohq'){ - $('#compGramajeColorhq').val('').trigger('change') - $('#compPapelColorhq').val(0).trigger('change') - } - - if($('#tableCompIntPlana').DataTable().rows().count() > 0 && - !$('#tableCompIntPlana').DataTable().cell(0, 0).data().includes('hq')) { - - $('#tableCompIntPlana').DataTable().clear().draw(); - $('#total_comp_plana').html("0.00"); - } - } - }); - - $('#tipoImpresion').on("select2:close", function () { - - $('#paginas').change() - }) - - - function checkComparadorInt(is_color, is_hq, actualizarLineaPlana=false, actualizarLineaRot=false) { - - /* TO-DO with select2 component - try{ - - clearIntLineas(is_color); - clearIntRot(); - $('#title_int_rot').html(''); - $('#title_int_plana').html(''); - - elementos = getIDsComparador(is_color, is_hq) - - if ($(''+ elementos.papel).select2('data').length > 0 && - $(''+ elementos.gramaje).select2('data').length > 0 && - parseInt($(''+ elementos.paginas).val()) >= 0 && - checkDatosPedidoForComp()) { - - - getLineasIntPlana(is_color, is_hq, actualizarLineaPlana).then((result) =>{ - // Para rotativa, si es color el papel y el gramaje tiene que ser igual - if(!is_color) - { - getLineasIntRot(is_hq, actualizarLineaRot); - } - else - { - if(!is_hq){ - if ($('#compPapelNegro').select2('data').length>0 && $('#compPapelColor').select2('data').length>0 && - $('#compGramajeNegro').select2('data').length>0 && $('#compGramajeColor').select2('data').length>0) - { - if(($('#compPapelNegro').select2('data')[0].id == $('#compPapelColor').select2('data')[0].id && - $('#compGramajeNegro').select2('data')[0].text.trim() == $('#compGramajeColor').select2('data')[0].text.trim())) - { - getLineasIntRot(is_hq, actualizarLineaRot); - } - else - { - $('#errorComRot').html(''); - } - } - } - } - }); - } - }catch(e){ - console.log(e) - } - */ - } - - - $('#compPapelNegro').on('select2:select', function (e){ - - if($('#compPapelNegro').select2('data')[0].id=='0'){ - $('#compGramajeNegro').val('').change(); - $('#compGramajeNegro').prop('disabled', true); - } - - else{ - $('#insertarPlanaBtn').addClass('d-none') - $('#insertarRotativaBtn').addClass('d-none') - $('#total_comp_plana').html('0.00') - $('#total_comp_rot').html('0.00') - $('#compGramajeNegro').val('').change(); - $('#compGramajeNegro').empty().trigger("change"); - $('#compGramajeNegro').prop('disabled', false); - $('#compGramajeNegro').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - ajax: { - url: '', - type: 'post', - dataType: 'json', - - data: function (params) { - return { - tipo: 'gramaje', - uso: 'bn', - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - datos: $('#compPapelNegro').select2('data')[0].text.trim() , - : v - }; - }, - delay: 60, - processResults: function (response) { - yeniden(response.); - return { - results: response.menu - }; - }, - cache: true - } - }); - } - }); - - $('#compPapelNegrohq').on('select2:select', function (e){ - - if($('#compPapelNegrohq').select2('data')[0].id=='0'){ - $('#compGramajeNegrohq').val('').change(); - $('#compGramajeNegrohq').prop('disabled', true); - } - else{ - $('#insertarPlanaBtn').addClass('d-none') - $('#insertarRotativaBtn').addClass('d-none') - $('#total_comp_plana').html('0.00') - $('#total_comp_rot').html('0.00') - $('#compGramajeNegrohq').empty().trigger("change"); - $('#compGramajeNegrohq').prop('disabled', false); - $('#compGramajeNegrohq').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - ajax: { - url: '', - type: 'post', - dataType: 'json', - - data: function (params) { - return { - tipo: 'gramaje', - uso: 'bnhq', - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - datos: $('#compPapelNegrohq').select2('data')[0].text.trim() , - : v - }; - }, - delay: 60, - processResults: function (response) { - yeniden(response.); - return { - results: response.menu - }; - }, - cache: true - } - }); - } - }); - - - $('#compPapelColor').on('select2:select', function (e){ - - if($('#compPapelColor').select2('data')[0].id=='0'){ - $('#compGramajeColor').val('').change(); - $('#compGramajeColor').prop('disabled', true); - } - else{ - $('#insertarPlanaBtn').addClass('d-none') - $('#insertarRotativaBtn').addClass('d-none') - $('#total_comp_plana').html('0.00') - $('#total_comp_rot').html('0.00') - $('#compGramajeColor').empty().trigger("change"); - $('#compGramajeColor').prop('disabled', false); - $('#compPapelColor').find('option[value="0"]').remove(); - $('#compGramajeColor').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - ajax: { - url: '', - type: 'post', - dataType: 'json', - - data: function (params) { - return { - tipo: 'gramaje', - uso: 'color', - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - datos: $('#compPapelColor').select2('data')[0].text.trim() , - : v - }; - }, - delay: 60, - processResults: function (response) { - yeniden(response.); - return { - results: response.menu - }; - }, - cache: true - } - }); - } - }); - - - $('#compPapelColorhq').on('select2:select', function (e){ - - if($('#compPapelColorhq').select2('data')[0].id=='0'){ - $('#compGramajeColorhq').val('').change(); - $('#compGramajeColorhq').prop('disabled', true); - } - else{ - $('#insertarPlanaBtn').addClass('d-none') - $('#insertarRotativaBtn').addClass('d-none') - $('#total_comp_plana').html('0.00') - $('#total_comp_rot').html('0.00') - $('#compGramajeColorhq').empty().trigger("change"); - $('#compGramajeColorhq').prop('disabled', false); - $('#compPapelColorhq').find('option[value="0"]').remove(); - $('#compGramajeColorhq').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - ajax: { - url: '', - type: 'post', - dataType: 'json', - - data: function (params) { - return { - tipo: 'gramaje', - uso: 'colorhq', - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - datos: $('#compPapelColorhq').select2('data')[0].text.trim() , - : v - }; - }, - delay: 60, - processResults: function (response) { - yeniden(response.); - return { - results: response.menu - }; - }, - cache: true - } - }); - } - }); - - $('#compPapelCubierta').on('select2:select', function (e){ - if($('#compPapelCubierta').select2('data')[0].id=='0'){ - $('#compGramajeCubierta').val('').change(); - $('#compGramajeCubierta').prop('disabled', true); - } - else{ - clearCubierta(); - $('#compGramajeCubierta').empty().trigger("change"); - $('#compGramajeCubierta').val('').trigger('change'); - $('#compGramajeCubierta').prop('disabled', false); - $('#compPapelCubierta').find('option[value="0"]').remove(); - $('#compGramajeCubierta').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - ajax: { - url: '', - type: 'post', - dataType: 'json', - - data: function (params) { - return { - tipo: 'gramaje', - uso: 'cubierta', - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - datos: $('#compPapelCubierta').select2('data')[0].text.trim() , - : v - }; - }, - delay: 60, - processResults: function (response) { - yeniden(response.); - return { - results: response.menu - }; - }, - cache: true - } - }); - } - }); - - $('#compPapelSobrecubierta').on('select2:open', function (e){ - $('#compGramajeSobrecubierta').val(0).trigger('change'); - $('#compGramajeSobrecubierta').select2("destroy") - $('#compGramajeSobrecubierta').select2({allowClear: false, minimumResultsForSearch: Infinity}) - }) - - - $('#compPapelSobrecubierta').on('select2:select', function (e){ - if($('#compPapelSobrecubierta').select2('data')[0].id=='0'){ - - $('#compGramajeSobrecubierta').prop('disabled', true); - } - else{ - clearSobrecubierta(); - $('#compGramajeSobrecubierta').prop('disabled', false); - $('#compPapelSobrecubierta').find('option[value="0"]').remove(); - $('#compGramajeSobrecubierta').select2({ - allowClear: false, - minimumResultsForSearch: Infinity, - ajax: { - url: '', - type: 'post', - dataType: 'json', - - data: function (params) { - return { - tipo: 'gramaje', - uso: 'sobrecubierta', - tirada: parseInt($('#tirada').val()), - merma: parseInt($('#mermacubierta').val()), - datos: $('#compPapelSobrecubierta').select2('data')[0].text.trim() , - : v - }; - }, - delay: 60, - processResults: function (response) { - yeniden(response.); - return { - results: response.menu - }; - }, - cache: true - } - }); - } - }); - - - function checkDatosPedidoForComp() { - - const dimension = getDimensionLibro(); - - if (parseInt($('#paginas').val()) <= 0){ - popErrorAlert('', 'divAlarmasComparador'); - return false; - } - if (parseInt($('#tirada').val()) <= 0){ - popErrorAlert('', 'divAlarmasComparador'); - return false; - } - if('ancho' in dimension && 'alto' in dimension){ - - if(dimension.alto < 60 || dimension.ancho < 60 || isNaN(dimension.alto) || isNaN(dimension.ancho) ){ - popErrorAlert('', 'divAlarmasComparador'); - return false; - } - } - else{ - popErrorAlert('', 'divAlarmasComparador'); - return false; - } - return true; - } - - init_comparador() - init_lineas_comparador() - -endSection() ?> \ No newline at end of file diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosServiciosItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosServiciosItems.php index d6fbe850..4804f3a3 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosServiciosItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosServiciosItems.php @@ -286,6 +286,7 @@ section("additionalInlineJs") ?> // Generación de la lista de servicios de acabado (id, nombre) + ; window.serviciosacabadosList = ; window.serviciosAutomaticos = ; @@ -318,7 +319,7 @@ init_servicio_extra() - /* ELIMINADO PARA COMPROBAR EL MAXIMO DE SOLAPAS DESDE EL BACKEND + /// ELIMINADO PARA COMPROBAR EL MAXIMO DE SOLAPAS DESDE EL BACKEND PENDIENTE $('.solapas_cubierta').on('change', function(){ @@ -364,6 +365,6 @@ $('#compGramajeSobrecubierta').trigger('change') }) - */ + */?> endSection() ?> diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php index d6bb3738..1b655662 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php @@ -74,7 +74,7 @@ section("additionalInlineJs") ?> -window.papelGenericoNegroList = []; +/*window.papelGenericoNegroList = []; window.papelGenericoNegroHQList = []; window.papelGenericoColorList = []; window.papelGenericoColorHQList = []; @@ -95,7 +95,7 @@ window.routes_lp = { } - +*/ /* fill_lp_from_bbdd() diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_presupuestoDireccionesForm.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_presupuestoDireccionesForm.php index 601eeca8..6a25b1b9 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_presupuestoDireccionesForm.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_presupuestoDireccionesForm.php @@ -140,7 +140,7 @@ section("additionalInlineJs") ?> - +/* $('#cancelAdd').on('click', function(){ $('#addressForm').modal("hide"); }) @@ -394,5 +394,5 @@ $('#addressForm').on('hidden.bs.modal', function () { $('#add_saveDirection').prop('checked', false) $('#add_entregaPieCalle').prop('checked', false) }) - +*/ endSection() ?> \ No newline at end of file diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php index 10529606..e898e029 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_previewItems.php @@ -918,7 +918,7 @@ section("additionalInlineJs") ?> - +/* $('#tab-pv-bn').on( "click", function() { @@ -980,6 +980,7 @@ $('#tab-pv-sobrecubierta').on( "click", function() { previewInteriorPlana('sobrecubierta', , ); } ); +*/ endSection() ?> diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems.php index ecb7af82..f4a35236 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_tiradasAlternativasItems.php @@ -52,14 +52,14 @@ section("additionalInlineJs") ?> - window.datatable_lang_url = "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json"; + /* window.datatable_lang_url = "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json"; window.datatable_TA_url = ""; window.get_tirada_url = ""; window.error_lang_tirada_alt_duplicada = ""; window.error_lang_tirada_alt_tipo = ""; - + */ endSection() ?> diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/comparador.js b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/comparador.js index 61231bc8..bdebd239 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/comparador.js +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/comparador.js @@ -1,81 +1,11 @@ /******************************* * Eventos asociados a elementos HTML *******************************/ -$('#compPaginasNegro').on("change", function () { - var negro = parseInt(document.getElementById('compPaginasNegro').value); - const paginas = parseInt(document.getElementById('paginas').value); - if (paginas < negro) { - document.getElementById('compPaginasNegro').value = paginas; - negro = paginas; - } - var color = parseInt(document.getElementById('compPaginasColor').value); - if ($('#tipoImpresion').select2('data')[0].id == 'color') { - - var newValue = paginas - negro; - if (newValue != color) { - document.getElementById('compPaginasColor').value = newValue >= 0 ? newValue : 0; - $('#compPaginasColor').change(); - } - } -}); - -$('#compPaginasColor').on("change", function () { - const paginas = parseInt(document.getElementById('paginas').value); - var color = parseInt(document.getElementById('compPaginasColor').value); - var negro = parseInt(document.getElementById('compPaginasNegro').value); - - if (paginas < color) { - document.getElementById('compPaginasColor').value = paginas; - color = paginas - } - var newValue = paginas - color; - if (newValue != negro) { - document.getElementById('compPaginasNegro').value = newValue >= 0 ? newValue : 0; - $('#compPaginasNegro').change(); - } -}); - -$('#compPaginasNegrohq').on("change", function () { - - var negro = parseInt(document.getElementById('compPaginasNegrohq').value); - const paginas = parseInt(document.getElementById('paginas').value); - if (paginas < negro) { - document.getElementById('compPaginasNegrogq').value = paginas; - negro = paginas; - } - var color = parseInt(document.getElementById('compPaginasColorhq').value); - if ($('#tipoImpresion').select2('data')[0].id == 'colorhq') { - - var newValue = paginas - negro; - if (newValue != color) { - document.getElementById('compPaginasColorhq').value = newValue >= 0 ? newValue : 0; - $('#compPaginasColorhq').change(); - } - } - -}); - -$('#compPaginasColorhq').on("change", function () { - const paginas = parseInt(document.getElementById('paginas').value); - var color = parseInt(document.getElementById('compPaginasColorhq').value); - var negro = parseInt(document.getElementById('compPaginasNegrohq').value); - - if (paginas < color) { - document.getElementById('compPaginasColorhq').value = paginas; - color = paginas - } - var newValue = paginas - color; - if (newValue != negro) { - document.getElementById('compPaginasNegrohq').value = newValue >= 0 ? newValue : 0; - $('#compPaginasNegrohq').change(); - } -}); -$('#prototipo').on("change", function () { - $('#ferro').prop('checked', true) -}); + + @@ -84,28 +14,6 @@ $('#compPosPaginasColor').on("keyup", function () { }); -// Este evento recoloca los headers de las tablas cuando se pulsa el -// boton del acordeon -$('.accordion-button').on('click', function (e) { - - if (e.target.id.includes("plana")) { - $("#tableCompIntPlana").DataTable().columns.adjust(); - } - else if (e.target.id.includes("rotativa")) { - $("#tableCompIntRotativa").DataTable().columns.adjust(); - } - else if (e.target.id.includes("cubierta")) { - $("#tableCompCubierta").DataTable().columns.adjust(); - } - else if (e.target.id.includes("guardas")) { - $("#tableCompGuardas").DataTable().columns.adjust(); - } - else if (e.target.id.includes("LineasPresupuesto")) { - $("#tableLineasPresupuesto").DataTable().columns.adjust(); - } - - -}); @@ -189,110 +97,11 @@ function getRowFromLineaRot(linea) { -function computarPaginasColor(string) { - - var numbers = []; - for (const [, beginStr, endStr] of string.matchAll(/(\d+)(?:-(\d+))?/g)) { - const [begin, end] = [beginStr, endStr].map(Number); - numbers.push(begin); - if (endStr !== undefined) { - for (let num = begin + 1; num <= end; num++) { - numbers.push(num); - } - } - } - var numbers2 = []; - numbers.forEach(function (value, i) { - // Si es impar y no está el siguiente par hay que añadirlo - if (value % 2 != 0 && numbers[i + 1] != value + 1) { - numbers2.push(value + 1); - } - }); - numbers = numbers.concat(numbers2); - numbers.sort(function (a, b) { - return a - b; - }); - calPagesTextarea = document.getElementById('compCalPaginasColor'); - calPagesTextarea.value = numbers; - autosize.update(calPagesTextarea); -} -function updatePapelesComparador() { - var e = document.getElementById("tipoImpresion"); - elements_negro = document.getElementsByClassName('comp-negro-selected'); - elements_negrohq = document.getElementsByClassName('comp-negrohq-selected'); - elements_color = document.getElementsByClassName('comp-color-selected'); - elements_colorhq = document.getElementsByClassName('comp-colorhq-selected'); - switch (e.value) { - case "negro": - Array.from(elements_color).forEach(element => { - element.style.display = "none"; - }); - Array.from(elements_negro).forEach(element => { - element.style.display = "flex"; - }); - Array.from(elements_negrohq).forEach(element => { - element.style.display = "none"; - }); - Array.from(elements_colorhq).forEach(element => { - element.style.display = "none"; - }); - break; - - case "negrohq": - Array.from(elements_color).forEach(element => { - element.style.display = "none"; - - }); - Array.from(elements_negro).forEach(element => { - element.style.display = "none"; - }); - Array.from(elements_negrohq).forEach(element => { - element.style.display = "flex"; - }); - Array.from(elements_colorhq).forEach(element => { - element.style.display = "none"; - }); - break; - - case "color": - Array.from(elements_negro).forEach(element => { - element.style.display = "flex"; - }); - Array.from(elements_negrohq).forEach(element => { - element.style.display = "none"; - }); - Array.from(elements_color).forEach(element => { - element.style.display = "flex"; - }); - Array.from(elements_colorhq).forEach(element => { - element.style.display = "none"; - }); - break; - - case "colorhq": - Array.from(elements_negro).forEach(element => { - element.style.display = "none"; - }); - Array.from(elements_negrohq).forEach(element => { - element.style.display = "flex"; - }); - Array.from(elements_color).forEach(element => { - element.style.display = "none"; - }); - Array.from(elements_colorhq).forEach(element => { - element.style.display = "flex"; - }); - break; - - default: - break; - } -} diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php index 9e5a7e7a..120cb0e9 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/viewPresupuestoadminForm.php @@ -304,14 +304,14 @@ - + + - + --> diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/comparador.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/comparador.js index c86df266..795fda67 100644 --- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/comparador.js +++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/comparador.js @@ -1,5 +1,6 @@ import ClassSelect from '../../../components/select2.js'; import { getToken } from '../../../common/common.js'; +import Ajax from '../../../components/ajax.js'; class Comparador { @@ -7,6 +8,8 @@ class Comparador { this.domItem = domItem; + this.tipo_impresion_id = parseInt($('#tipo_impresion_id').val()); + this.csrf_token = getToken(); this.csrf_hash = $('#mainContainer').find('input[name="' + this.csrf_token + '"]').val(); @@ -18,8 +21,8 @@ class Comparador { '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, { [this.csrf_token]: this.csrf_hash, - tipo_impresion: this.tipo_impresion.val(), - tirada: $('#tirada').val(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), tipo: 'negro', }); @@ -27,31 +30,1283 @@ class Comparador { '/presupuestoadmin/papelgramaje', 'Seleccione gramaje', false, { [this.csrf_token]: this.csrf_hash, - papel_generico: this.papelNegro.getVal(), - tipo_impresion: this.tipo_impresion.val(), - tirada: $('#tirada').val(), + papel_generico: () => this.papelNegro.getVal(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), tipo: 'negro', }); + this.paginasColor = $('#compPaginasColor'); + this.papelColor = new ClassSelect($('#compPapelColor'), + '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, + { + [this.csrf_token]: this.csrf_hash, + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'color', + }); + this.gramajeColor = new ClassSelect($('#compGramajeColor'), + '/presupuestoadmin/papelgramaje', 'Seleccione gramaje', false, + { + [this.csrf_token]: this.csrf_hash, + papel_generico: () => this.papelColor.getVal(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'color', + }); + + this.paginasNegrohq = $('#compPaginasNegrohq'); + this.papelNegrohq = new ClassSelect($('#compPapelNegrohq'), + '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, + { + [this.csrf_token]: this.csrf_hash, + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'negrohq', + }); + + this.gramajeNegrohq = new ClassSelect($('#compGramajeNegrohq'), + '/presupuestoadmin/papelgramaje', 'Seleccione gramaje', false, + { + [this.csrf_token]: this.csrf_hash, + papel_generico: () => this.papelNegrohq.getVal(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'negrohq', + }); + + this.paginasColorhq = $('#compPaginasColorhq'); + this.papelColorhq = new ClassSelect($('#compPapelColorhq'), + '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, + { + [this.csrf_token]: this.csrf_hash, + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'colorhq', + }); + + this.gramajeColorhq = new ClassSelect($('#compGramajeColorhq'), + '/presupuestoadmin/papelgramaje', 'Seleccione gramaje', false, + { + [this.csrf_token]: this.csrf_hash, + papel_generico: () => this.papelColorhq.getVal(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'colorhq', + }); + + this.paginasCubierta = $('#compCarasCubierta'); + this.papelCubierta = new ClassSelect($('#compPapelCubierta'), + '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, + { + [this.csrf_token]: this.csrf_hash, + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'colorhq', + uso: 'cubierta', + }); + this.gramajeCubierta = new ClassSelect($('#compGramajeCubierta'), + '/presupuestoadmin/papelgramaje', 'Seleccione gramaje', false, + { + [this.csrf_token]: this.csrf_hash, + papel_generico: () => this.papelCubierta.getVal(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'colorhq', + uso: 'cubierta', + }); + if (this.tipo_impresion_id != 5 && this.tipo_impresion_id != 6 && this.tipo_impresion_id != 7 && this.tipo_impresion_id != 8 && this.tipo_impresion_id != 21) { + this.sobrecubierta = $('#compSobrecubierta'); + this.papelSobrecubierta = new ClassSelect($('#compPapelSobrecubierta'), + '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, + { + [this.csrf_token]: this.csrf_hash, + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'colorhq', + uso: 'sobrecubierta', + }); + this.gramajeSobrecubierta = new ClassSelect($('#compGramajeSobrecubierta'), + '/presupuestoadmin/papelgramaje', 'Seleccione gramaje', false, + { + [this.csrf_token]: this.csrf_hash, + papel_generico: () => this.papelSobrecubierta.getVal(), + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'colorhq', + uso: 'sobrecubierta', + }); + } + + if (this.tipo_impresion_id == 1 || this.tipo_impresion_id == 3 || this.tipo_impresion_id == 5 || this.tipo_impresion_id == 7) { + this.papelGuardas = new ClassSelect($('#compPapelGuardas'), + '/presupuestoadmin/papelgenerico', 'Seleccione papel', false, + { + [this.csrf_token]: this.csrf_hash, + tipo_impresion: this.tipo_impresion_id, + tirada: () => $('#tirada').val(), + tipo: 'guardas', + }); + this.carasGuardas = $('#compCarasGuardas'); + this.gramajeGuardas = $('#compGramajeGuardas'); + this.btnInsertarGuardas = $('#insertarGuardasBtn'); + } + + this.posPagColor = $('#compPosPaginasColor'); + this.calculatedColorPages = $('#compCalPaginasColor'); + + this.tableCompCubierta = null; + this.tableCompGuardas = null; + this.tableCompIntPlana = null; + this.tableCompIntRotativa = null; + this.btnInsertarPlana = $('#insertarPlanaBtn'); + this.btnInsertarRotativa = $('#insertarRotativaBtn'); + this.btnInsertarCubierta = $('#insertarCubiertaBtn'); } init() { + + autosize($('#compCalPaginasColor')); + + this.generateTables(); + + this.initSelect2(); + + this.initEvents(); + } + + initSelect2() { + + if ($('#tipo_impresion_id').val() == 1 || $('#tipo_impresion_id').val() == 3 || + $('#tipo_impresion_id').val() == 5 || $('#tipo_impresion_id').val() == 7) { + $('#compCarasCubierta').select2({ + allowClear: false, + minimumResultsForSearch: Infinity, + }); + + $('#compPapelGuardas').select2({ + allowClear: false, + }); + + $('#compCarasGuardas').select2({ + allowClear: false, + minimumResultsForSearch: Infinity, + }); + } this.papelNegro.init(); this.gramajeNegro.init(); + this.papelColor.init(); + this.gramajeColor.init(); + this.papelNegrohq.init(); + this.gramajeNegrohq.init(); + this.papelColorhq.init(); + this.gramajeColorhq.init(); + this.papelCubierta.init(); + this.gramajeCubierta.init(); + if (this.tipo_impresion_id != 5 && this.tipo_impresion_id != 6 && this.tipo_impresion_id != 7 && this.tipo_impresion_id != 8 && this.tipo_impresion_id != 21) { + this.papelSobrecubierta.init(); + this.gramajeSobrecubierta.init(); + this.papelSobrecubierta.onChange(() => this.gramajeSobrecubierta.setVal(0)) + this.sobrecubierta.on('change', () => { + if (this.sobrecubierta.val() == 1) { + $('#compPapelSobrecubierta').prop('disabled', false); + $('#compGramajeSobrecubierta').prop('disabled', false); + } + else { + this.papelSobrecubierta.setVal(0); + this.gramajeSobrecubierta.setVal(0); + $('#compPapelSobrecubierta').prop('disabled', true); + $('#compGramajeSobrecubierta').prop('disabled', true); + + } + }); + } + + if (this.tipo_impresion_id == 1 || this.tipo_impresion_id == 3 || this.tipo_impresion_id == 5 || this.tipo_impresion_id == 7) { + this.papelGuardas.init(); + } + + this.papelNegro.onChange(() => this.gramajeNegro.setVal(0)) + this.papelNegrohq.onChange(() => this.gramajeNegrohq.setVal(0)) + this.papelColor.onChange(() => this.gramajeColor.setVal(0)) + this.papelColorhq.onChange(() => this.gramajeColorhq.setVal(0)) + this.papelCubierta.onChange(() => this.gramajeCubierta.setVal(0)) + + + this.tipo_impresion.select2({ + allowClear: false, + }); + + this.posPagColor.on('keyup', () => this.#computarPaginasColor(this.posPagColor.val())); } + initEvents() { + + this.tipo_impresion.on("change", this.#handleTipoImpresion.bind(this)); + $('.accordion-button').on('click', function (e) { + + if (e.target.id.includes("plana")) { + $("#tableCompIntPlana").DataTable().columns.adjust(); + } + else if (e.target.id.includes("rotativa")) { + $("#tableCompIntRotativa").DataTable().columns.adjust(); + } + else if (e.target.id.includes("cubierta")) { + $("#tableCompCubierta").DataTable().columns.adjust(); + } + else if (e.target.id.includes("guardas")) { + $("#tableCompGuardas").DataTable().columns.adjust(); + } + else if (e.target.id.includes("LineasPresupuesto")) { + $("#tableLineasPresupuesto").DataTable().columns.adjust(); + } + }); + this.paginasNegro.on("change", this.#changePaginasComparador.bind(this)); + this.paginasNegrohq.on("change", this.#changePaginasComparador.bind(this)); + this.paginasColor.on("change", this.#changePaginasComparador.bind(this)); + this.paginasColorhq.on("change", this.#changePaginasComparador.bind(this)); + + $('.comp_negro_items').on('change', this.obtenerComparadorInterior.bind(this)); + $('.comp_negrohq_items').on('change', this.obtenerComparadorInterior.bind(this)); + $('.comp_color_items').on('change', this.obtenerComparadorInterior.bind(this)); + $('.comp_colorhq_items').on('change', this.obtenerComparadorInterior.bind(this)); + } + + #changePaginasComparador(element) { + + const paginas = parseInt($('#paginas').val()); + const newPaginas = parseInt($(element.currentTarget).val()); + + if (paginas < newPaginas) { + $(element.currentTarget).val(paginas) + } + if ($(element.currentTarget).attr('id') == this.paginasNegro.attr('id')) { + if (!$('.comp-color-selected').hasClass('d-none')) { + this.paginasColor.val((paginas - newPaginas) > 0 ? paginas - newPaginas : 0); + } + } + else if ($(element.currentTarget).attr('id') == this.paginasNegro.attr('id')) { + if (!$('.comp-colorhq-selected').hasClass('d-none')) { + this.paginasColorhq.val((paginas - newPaginas) > 0 ? paginas - newPaginas : 0); + } + } + else if ($(element.currentTarget).attr('id') == this.paginasColor.attr('id')) { + this.paginasNegro.val((paginas - newPaginas) > 0 ? paginas - newPaginas : 0); + } + else if ($(element.currentTarget).attr('id') == this.paginasColorhq.attr('id')) { + this.paginasNegrohq.val((paginas - newPaginas) > 0 ? paginas - newPaginas : 0); + } + } + + cargarDatos(datos) { - this.tipo_impresion.val(datos.tipo_impresion); + this.tipo_impresion.val(datos.tipo_impresion).trigger('change'); + this.updateOpcionesComparador(); this.comparador_json.val(JSON.stringify(datos.json_data)); - if (datos.json_data.bn){ + if (datos.json_data.bn) { this.paginasNegro.val(datos.json_data.bn.paginas); this.papelNegro.setOption(datos.json_data.bn.papel_id, datos.json_data.bn.papel_nombre); this.gramajeNegro.setOption(datos.json_data.bn.gramaje, datos.json_data.bn.gramaje); } + if (datos.json_data.bnhq) { + this.paginasNegrohq.val(datos.json_data.bnhq.paginas); + this.papelNegrohq.setOption(datos.json_data.bnhq.papel_id, datos.json_data.bnhq.papel_nombre); + this.gramajeNegrohq.setOption(datos.json_data.bnhq.gramaje, datos.json_data.bnhq.gramaje); + } + if (datos.json_data.color) { + this.paginasColor.val(datos.json_data.color.paginas); + this.papelColor.setOption(datos.json_data.color.papel_id, datos.json_data.color.papel_nombre); + this.gramajeColor.setOption(datos.json_data.color.gramaje, datos.json_data.color.gramaje); + } + if (datos.json_data.colorhq) { + this.paginasColorhq.val(datos.json_data.colorhq.paginas); + this.papelColorhq.setOption(datos.json_data.colorhq.papel_id, datos.json_data.colorhq.papel_nombre); + this.gramajeColorhq.setOption(datos.json_data.colorhq.gramaje, datos.json_data.colorhq.gramaje); + } + if (datos.json_data.cubierta) { + this.paginasCubierta.val(datos.json_data.cubierta.paginas); + this.papelCubierta.setOption(datos.json_data.cubierta.papel_id, datos.json_data.cubierta.papel_nombre); + this.gramajeCubierta.setOption(datos.json_data.cubierta.gramaje, datos.json_data.cubierta.gramaje); + } + if (datos.json_data.sobrecubierta) { + this.sobrecubierta.val(datos.json_data.sobrecubierta.imprimir).trigger('change'); + this.papelSobrecubierta.setOption(datos.json_data.sobrecubierta.papel_id, datos.json_data.sobrecubierta.papel_nombre); + this.gramajeSobrecubierta.setOption(datos.json_data.sobrecubierta.gramaje, datos.json_data.sobrecubierta.gramaje); + } + + if (datos.posPagColor.length > 0) { + this.posPagColor.val(datos.posPagColor); + this.#computarPaginasColor(datos.posPagColor); + } + } + + + generateTables() { + + this.tableCompIntPlana = new DataTable('#tableCompIntPlana', { + scrollX: true, + searching: false, + paging: false, + info: false, + ordering: false, + responsive: true, + select: false, + language: { + url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" + }, + columns: [ + { + 'data': 'tipo', + 'render': function (data, type, row, meta) { + if (data == 'bn') + return window.language.Presupuestos.bn; + else if (data == 'bnhq') + return window.language.Presupuestos.bnhq; + else if (data == 'color') + return window.language.Presupuestos.color; + else if (data == 'colorhq') + return window.language.Presupuestos.colorhq; + } + }, + { 'data': 'paginas' }, + { 'data': 'papel' }, + { 'data': 'gramaje' }, + { 'data': 'marca' }, + { 'data': 'maquina' }, + { 'data': 'numeroPliegos' }, + { 'data': 'pliegosPedido' }, + { 'data': 'precioPliego' }, + { 'data': 'libro' }, + { 'data': 'totalPapelPedido' }, + { 'data': 'lomo' }, + { 'data': 'peso' }, + { 'data': 'horasMaquina' }, + { 'data': 'precioImpresion' }, + { 'data': 'total' }, + { 'data': 'maquinaId' }, + { 'data': 'maquinaVelocidad' }, + { 'data': 'tiempoMaquina' }, + { 'data': 'papelGenericoId' }, + { 'data': 'papelImpresionId' }, + { 'data': 'tarifa_impresion_id' } + ], + columnDefs: [ + { + target: [16, 17, 18, 19, 20, 21], + visible: false, + searchable: false + }, + ] + }); + + + this.tableCompIntRotativa = new DataTable('#tableCompIntRotativa', { + scrollX: true, + searching: false, + paging: false, + info: false, + ordering: false, + responsive: true, + select: false, + language: { + url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" + }, + columns: [ + { + 'data': 'tipo', + 'render': function (data, type, row, meta) { + if (data == 'rotativa') + return window.language.Presupuestos.rotativa; + } + }, + { 'data': 'paginas' }, + { 'data': 'papel' }, + { 'data': 'gramaje' }, + { 'data': 'marca' }, + { + 'data': 'aFavorFibra', + 'render': function (data, type, row, meta) { + if (data == 'si') + return window.language.Presupuestos.si; + else if (data == 'no') + return window.language.Presupuestos.no; + } + }, + { 'data': 'maquina' }, + { 'data': 'numeroPliegos' }, + { 'data': 'pliegosPedido' }, + { 'data': 'precioPliego' }, + { 'data': 'libro' }, + { 'data': 'totalPapelPedido' }, + { 'data': 'lomo' }, + { 'data': 'peso' }, + { 'data': 'horasMaquina' }, + { 'data': 'precioImpresion' }, + { 'data': 'precioPagNegro' }, + { 'data': 'precioPagColor' }, + { 'data': 'totalTinta' }, + { 'data': 'totalCorte' }, + { 'data': 'total' }, + { 'data': 'maquinaId' }, + { 'data': 'maquinaVelocidad' }, + { 'data': 'tiempoMaquina' }, + { 'data': 'papelGenericoId' }, + { 'data': 'papelImpresionId' }, + { 'data': 'paginasColor' }, + { 'data': 'tarifa_impresion_id' } + ], + columnDefs: [ + { + target: [21, 22, 23, 24, 25, 26, 27], + visible: false, + searchable: false + }, + ] + }); + + this.tableCompCubierta = new DataTable('#tableCompCubierta', { + scrollX: true, + searching: false, + paging: false, + info: false, + ordering: true, + responsive: true, + select: false, + language: { + url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" + }, + columns: [ + { + 'data': 'tipo', + 'render': function (data, type, row, meta) { + if (data == 'cubierta') + return window.language.Presupuestos.cubierta; + else if (data == 'sobrecubierta') + return window.language.Presupuestos.sobrecubierta; + } + }, + { 'data': 'paginas' }, + { 'data': 'papel' }, + { 'data': 'gramaje' }, + { 'data': 'marca' }, + { 'data': 'maquina' }, + { 'data': 'numeroPliegos' }, + { 'data': 'pliegosPedido' }, + { 'data': 'precioPliego' }, + { 'data': 'libro' }, + { 'data': 'totalPapelPedido' }, + { 'data': 'lomo' }, + { 'data': 'peso' }, + { 'data': 'horasMaquina' }, + { 'data': 'precioImpresion' }, + { 'data': 'total' }, + { 'data': 'maquinaId' }, + { 'data': 'maquinaVelocidad' }, + { 'data': 'tiempoMaquina' }, + { 'data': 'papelGenericoId' }, + { 'data': 'papelImpresionId' }, + { 'data': 'tarifa_impresion_id' } + ], + columnDefs: [ + { + target: [16, 17, 18, 19, 20, 21], + visible: false, + searchable: false + }, + ], + "order": [[0, 'asc'], [15, 'asc']] + }); + + if (this.tipo_impresion_id == 1 || this.tipo_impresion_id == 3 || this.tipo_impresion_id == 5 || this.tipo_impresion_id == 7) { + this.tableCompGuardas = new DataTable('#tableCompGuardas', { + scrollX: true, + searching: false, + paging: false, + info: false, + ordering: false, + responsive: true, + select: false, + language: { + url: "/themes/vuexy/vendor/libs/datatables-sk/plugins/i18n/es-ES.json" + }, + columns: [ + { + 'data': 'tipo', + 'render': function (data, type, row, meta) { + + return window.language.Presupuestos.Guardas; + } + + }, + { 'data': 'paginas' }, + { 'data': 'papel' }, + { 'data': 'gramaje' }, + { 'data': 'marca' }, + { 'data': 'maquina' }, + { 'data': 'numeroPliegos' }, + { 'data': 'pliegosPedido' }, + { 'data': 'precioPliego' }, + { 'data': 'libro' }, + { 'data': 'totalPapelPedido' }, + { 'data': 'lomo' }, + { 'data': 'peso' }, + { 'data': 'horasMaquina' }, + { 'data': 'precioImpresion' }, + { 'data': 'total' }, + { 'data': 'maquinaId' }, + { 'data': 'maquinaVelocidad' }, + { 'data': 'tiempoMaquina' }, + { 'data': 'papelGenericoId' }, + { 'data': 'papelImpresionId' }, + { 'data': 'tarifa_impresion_id' }, + { 'data': 'paginas_impresion' }, + ], + columnDefs: [ + { + target: [16, 17, 18, 19, 20, 21, 22], + visible: false, + searchable: false + }, + ] + }); + } + + } + + updateOpcionesComparador() { + + const selValue = this.tipo_impresion.val(); + const elements_negro = $('.comp-negro-selected'); + const elements_negrohq = $('.comp-negrohq-selected'); + const elements_color = $('.comp-color-selected'); + const elements_colorhq = $('.comp-colorhq-selected'); + if (selValue.includes("hq")) { + Array.from(elements_negro).forEach(element => { + $(element).addClass('d-none'); + }); + Array.from(elements_color).forEach(element => { + $(element).addClass('d-none'); + }); + if (selValue.includes('color')) { + Array.from(elements_colorhq).forEach(element => { + $(element).removeClass('d-none'); + }); + } + Array.from(elements_negrohq).forEach(element => { + $(element).removeClass('d-none'); + }); + } + else { + Array.from(elements_negrohq).forEach(element => { + $(element).addClass('d-none'); + }); + Array.from(elements_colorhq).forEach(element => { + $(element).addClass('d-none'); + }); + if (selValue.includes('color')) { + Array.from(elements_color).forEach(element => { + $(element).removeClass('d-none'); + }); + } + Array.from(elements_negro).forEach(element => { + $(element).removeClass('d-none'); + }); + } + + if (selValue.includes('color')) { + $('.pos-paginas-color').removeClass('d-none'); + } + else { + $('.pos-paginas-color').addClass('d-none'); + } + } + + #computarPaginasColor(string) { + + var numbers = []; + for (const [, beginStr, endStr] of string.matchAll(/(\d+)(?:-(\d+))?/g)) { + const [begin, end] = [beginStr, endStr].map(Number); + numbers.push(begin); + if (endStr !== undefined) { + for (let num = begin + 1; num <= end; num++) { + numbers.push(num); + } + } + } + var numbers2 = []; + numbers.forEach(function (value, i) { + // Si es impar y no está el siguiente par hay que añadirlo + if (value % 2 != 0 && numbers[i + 1] != value + 1) { + numbers2.push(value + 1); + } + }); + numbers = numbers.concat(numbers2); + numbers.sort(function (a, b) { + return a - b; + }); + this.calculatedColorPages.val(numbers); + autosize.update(this.calculatedColorPages); + } + + #handleTipoImpresion() { + + this.updateOpcionesComparador(); + $('#title_int_rot').html(window.language.Presupuestos.compInteriorRotativa); + $('#title_int_plana').html(window.language.Presupuestos.compInteriorPlana); + if (($('#tipoImpresion').select2('data')[0].id == 'negro' || + $('#tipoImpresion').select2('data')[0].id == 'color')) { + + $('#tableCompIntRotativa').DataTable().clear().draw(); + $('#total_comp_rot').html("0.00"); + + $('#compPaginasColor').val('0') + $('#compPaginasColorhq').val('0') + $('#compPaginasNegrohq').val('0'); + $('#compPaginasNegro').val($('#paginas').val()) + + if ($('#tipoImpresion').select2('data')[0].id == 'negro') { + $('#compGramajeColor').val('').trigger('change') + $('#compPapelColor').val(0).trigger('change') + } + + if ($('#tableCompIntPlana').DataTable().rows().count() > 0 && + $('#tableCompIntPlana').DataTable().cell(0, 0).data().includes('hq')) { + + $('#tableCompIntPlana').DataTable().clear().draw(); + $('#total_comp_plana').html("0.00"); + } + + } + else if (($('#tipoImpresion').select2('data')[0].id == 'negrohq' || + $('#tipoImpresion').select2('data')[0].id == 'colorhq')) { + + $('#tableCompIntRotativa').DataTable().clear().draw(); + $('#total_comp_rot').html("0.00"); + + $('#compPaginasColorhq').val('0') + $('#compPaginasColor').val('0') + $('#compPaginasNegro').val('0') + $('#compPaginasNegrohq').val($('#paginas').val()) + + if ($('#tipoImpresion').select2('data')[0].id == 'negrohq') { + $('#compGramajeColorhq').val('').trigger('change') + $('#compPapelColorhq').val(0).trigger('change') + } + + if ($('#tableCompIntPlana').DataTable().rows().count() > 0 && + !$('#tableCompIntPlana').DataTable().cell(0, 0).data().includes('hq')) { + + $('#tableCompIntPlana').DataTable().clear().draw(); + $('#total_comp_plana').html("0.00"); + } + } + } + + getDataForComp(uso = 'interior') { + + let ancho = 0; + let alto = 0; + let papel_generico = {}; + let gramaje = {}; + let paginasColor = 0; + + if (!$('#papelFormatoPersonalizado').prop('checked')) { + const selectedFormat = $('#papelFormatoId').select2('data')[0].text; + ancho = Math.round(parseFloat(selectedFormat.trim().split(" x ")[0]), 2); + alto = Math.round(parseFloat(selectedFormat.trim().split(" x ")[1]), 2); + + } + else { + ancho = Math.round(parseFloat($('#papelFormatoAncho').val()), 2); + alto = Math.round(parseFloat($('#papelFormatoAlto').val()), 2); + } + + if (parseInt($('#paginas').val()) <= 0) { + popErrorAlert(window.language.Presupuestos.errores.paginas, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + if (parseInt($('#tirada').val()) <= 0) { + popErrorAlert(window.language.Presupuestos.errores.tiradas, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + if (ancho && alto) { + + if (alto < 60 || ancho < 60 || isNaN(alto) || isNaN(ancho)) { + popErrorAlert(window.language.Presupuestos.errores.dimension, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + } + else { + popErrorAlert(window.language.Presupuestos.errores.dimension, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + + if (uso == 'interior') { + let papeles = []; + let gramajes = []; + if (this.tipo_impresion.val().includes('hq')) { + if (this.tipo_impresion.val().includes('color')) { + papeles.push(this.papelColorhq); + gramajes.push(this.gramajeColorhq); + } + papeles.push(this.papelNegrohq); + gramajes.push(this.gramajeNegrohq); + } + else { + if (this.tipo_impresion.val().includes('color')) { + papeles.push(this.papelColor); + gramajes.push(this.gramajeColor); + } + papeles.push(this.papelNegro); + gramajes.push(this.gramajeNegro); + } + for (let element of papeles) { + if (element.getVal() == 0 || element.getVal() == null) { + popErrorAlert(window.language.Presupuestos.errores.seleccionePapel, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + }; + for (let element of gramajes) { + + if (element.getVal() == 0 || element.getVal() == null) { + popErrorAlert(window.language.Presupuestos.errores.seleccioneGramaje, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + }; + + if (this.tipo_impresion.val().includes('color')) { + if (this.tipo_impresion.val().includes('hq')) { + papel_generico.color= { id: this.papelColorhq.getVal(), nombre: this.papelColorhq.getText() }; + gramaje.color= this.gramajeColorhq.getVal(); + paginasColor = this.paginasColorhq.val(); + } + papel_generico.negro= { id: this.papelNegrohq.getVal(), nombre: this.papelNegrohq.getText() } ; + gramaje.negro= this.gramajeNegrohq.getVal() ; + } + else { + if (this.tipo_impresion.val().includes('hq')) { + papel_generico.color = { id: this.papelColor.getVal(), nombre: this.papelColor.getText() } ; + gramaje.color = this.gramajeColor.getVal() ; + paginasColor = this.paginasColor.val(); + } + papel_generico.negro= { id: this.papelNegro.getVal(), nombre: this.papelNegro.getText() } ; + gramaje.negro= this.gramajeNegro.getVal() ; + } + } + + const datosPedido = { + paginas: $('#paginas').val(), + tirada: $('#tirada').val(), + merma: $('#merma').val(), + ancho: ancho, + alto: alto, + isCosido: $('#isCosido').val(), + a_favor_fibra: 1, + }; + + + if ($('#clienteId').select2('data').length == 0 || $('#clienteId').select2('data').id < 1) { + popErrorAlert(window.language.Presupuestos.errores.seleccioneCliente, 'divAlarmasComparador'); + return { error: true, data: {} }; + } + + let datos = { + datosPedido: datosPedido, + uso: uso, + tipo_impresion_id: this.tipo_impresion_id, + cliente_id: $('#clienteId').select2('data')[0].id, + papelInteriorDiferente: 1, + papel_generico: papel_generico, + gramaje: gramaje, + isColor: this.tipo_impresion.val().includes('color'), + isHq: this.tipo_impresion.val().includes('hq'), + paginas_color: paginasColor + } + + + return { error: false, data: datos }; + } + + obtenerComparadorInterior(actualizarLineaPlana = false, actualizarLineaRot = false) { + + + try { + + this.tableCompIntPlana.clear().draw(); + this.tableCompIntRotativa.clear().draw(); + this.btnInsertarPlana.addClass('d-none'); + $('#title_int_rot').html(window.language.Presupuestos.compInteriorRotativa); + $('#title_int_plana').html(window.language.Presupuestos.compInteriorPlana); + + const datosComp = this.getDataForComp('interior'); + if(datosComp.error){ + return; + } + else{ + + datosComp.data[this.csrf_token] = this.csrf_hash; + new Ajax('/presupuestoadmin/comparadorplana', + datosComp.data, + {}, + (response) =>{ + console.log(response); + }, + (error) =>{ + console.log(error); + } + ).post(); + } + /* + elementos = getIDsComparador(is_color, is_hq) + + + if ($('' + elementos.papel).select2('data').length > 0 && + $('' + elementos.gramaje).select2('data').length > 0 && + parseInt($('' + elementos.paginas).val()) >= 0 && + checkDatosPedidoForComp()) { + + + getLineasIntPlana(is_color, is_hq, actualizarLineaPlana).then((result) => { + // Para rotativa, si es color el papel y el gramaje tiene que ser igual + if (!is_color) { + getLineasIntRot(is_hq, actualizarLineaRot); + } + else { + if (!is_hq) { + if ($('#compPapelNegro').select2('data').length > 0 && $('#compPapelColor').select2('data').length > 0 && + $('#compGramajeNegro').select2('data').length > 0 && $('#compGramajeColor').select2('data').length > 0) { + if (($('#compPapelNegro').select2('data')[0].id == $('#compPapelColor').select2('data')[0].id && + $('#compGramajeNegro').select2('data')[0].text.trim() == $('#compGramajeColor').select2('data')[0].text.trim())) { + getLineasIntRot(is_hq, actualizarLineaRot); + } + else { + $('#errorComRot').html(''); + } + } + } + } + }); + }*/ + } catch (e) { + console.log(e) + } + } } +/* + $('#compSobrecubierta').on('change', function(){ + if ($('#compSobrecubierta').val()==1){ + value = false + } + else{ + value = 'disabled' + $('#compPapelSobrecubierta').val(0) + $('#compGramajeSobrecubierta').val('') + $('#compGramajeSobrecubierta').select2("destroy") + $('#compGramajeSobrecubierta').select2({allowClear: false, minimumResultsForSearch: Infinity}) + + } + $('#compPapelSobrecubierta').prop('disabled', value); + $('#compGramajeSobrecubierta').prop('disabled', value); + }) + + + + + function checkComparadorGuardas(actualizarLinea = false){ + + if ($('#compPapelGuardas').select2('data')[0].id > 0 ){ + + const dimension = getDimensionLibro(); + + let datos = { + tipo_impresion_id: , + type: 'guardas', + paginas: 8, + paginas_impresion: parseInt($('#compCarasGuardas').select2('data')[0].id), + tirada: parseInt($('#tirada').val()), + merma: parseInt($('#mermacubierta').val()), + color: 1, + hq: 1, + ancho: dimension.ancho, + alto: dimension.alto, + papel_generico_id: $('#compPapelGuardas').select2('data')[0].id, + papel_generico: $('#compPapelGuardas').select2('data')[0].text.trim(), + gramaje: parseInt($('#compGramajeGuardas').val()), + cliente_id: $('#clienteId').find(":selected").val(), + : v + }; + + $.ajax({ + type: "POST", + url: "/presupuestoadmin/datatable", + data: datos, + success: function (data) { + + clearGuardas(); + + if(data.lineas.length >0){ + fillGuardas(data); + selectGuardasLineas(); + $('#title_guardas').html('' + ' (' + tableCompGuardas.rows().count() + ')'); + $('#insertarGuardasBtn').removeClass('d-none') + if(actualizarLinea){ + var rows = $("#tableCompCubierta").DataTable().rows( '.selected' ).data().toArray(); + for(row of rows){ + fill_lp_guardas(row, true); + } + } + } + else{ + $('#title_guardas').html(''); + $('#insertarGuardasBtn').addClass('d-none') + $('#total_comp_guardas').html('0.00') + + } + yeniden(data.); + return true; + }, + error: function(e){ + return false; + } + }) + } + + else{ + clearGuardas(); + } + } + + + $('.comp_guardas_items').on('change', function (e) { + + checkComparadorGuardas(false); + }); + + + + async function getLineasIntPlana(is_color, is_hq, actualizarLinea){ + + const dimension = getDimensionLibro(); + + let datos = { + tipo_impresion_id: , + type: 'interior', + color: is_color?1:0, + hq: is_hq?1:0, + paginas: parseInt($(''+ elementos.paginas).val()), + tirada: parseInt($('#tirada').val()), + merma: parseInt($('#merma').val()), + ancho: dimension.ancho, + alto: dimension.alto, + papel_generico_id: $(''+ elementos.papel).select2('data')[0].id, + papel_generico: $(''+ elementos.papel).select2('data')[0].text.trim(), + gramaje: $(''+ elementos.gramaje).select2('data')[0].text.trim() , + cliente_id: $('#clienteId').find(":selected").val(), + : v + }; + + $.ajax({ + type: "POST", + url: "/presupuestoadmin/datatable", + data: datos, + success: function (data) { + + clearIntLineas(is_color); + + if(data.lineas.length >0){ + + fillIntPlana(data, is_color, is_hq); + selectIntLineas(); + $('#title_int_plana').html('' + ' (' + tableCompIntPlana.rows().count() + ')'); + $('#insertarPlanaBtn').removeClass('d-none') + if(actualizarLinea){ + var rows = $("#tableCompIntPlana").DataTable().rows( '.selected' ).data().toArray(); + for(row of rows){ + + if(row['tipo'] =='bn' && !is_color && !is_hq){ + if($('#lp_bn').css('display')!='none') + fill_lp_bn(row, true); + } + else if(row['tipo'] =='bnhq' && !is_color && is_hq){ + if($('#lp_bnhq').css('display')!='none') + fill_lp_bnhq(row, true); + } + else if(row['tipo'] =='color' && is_color && !is_hq){ + if($('#lp_color').css('display')!='none') + fill_lp_color(row, true); + } + else if(row['tipo'] =='colorhq' && is_color && is_hq){ + if($('#lp_colorhq').css('display')!='none') + fill_lp_colorhq(row, true); + } + } + } + } + else{ + $('#title_int_plana').html(''); + $('#insertarPlanaBtn').addClass('d-none') + $('#total_comp_plana').html('0.00'); + } + yeniden(data.); + return true; + }, + error: function(e){ + return false; + } + }) + return false; + } + + async function getLineasIntRot(is_hq, actualizarLinea=false){ + + const dimension = getDimensionLibro(); + + // Rotativa solo negro o color (no hq) + if ( is_hq==false){ + + if(checkInputsForRotativa()){ + + let datos = { + tipo_impresion_id: , + type: 'interior_rot', + paginas: parseInt($('#paginas').val()), + paginas_negro: parseInt($('#compPaginasNegro').val()), + paginas_color: parseInt($('#compPaginasColor').val()), + tirada: parseInt($('#tirada').val()), + merma: parseInt($('#merma').val()), + ancho: dimension.ancho, + alto: dimension.alto, + // el papel y el gramaje se coge del negro (siempre estará) + papel_generico_id: $('#compPapelNegro').select2('data')[0].id, + papel_generico: $('#compPapelNegro').select2('data')[0].text.trim(), + gramaje: $('#compGramajeNegro').select2('data')[0].text.trim() , + cliente_id: $('#clienteId').find(":selected").val(), + : v + }; + + $.ajax({ + type: "POST", + url: "/presupuestoadmin/datatable", + data: datos, + success: function (data) { + + clearIntRot(); + + if(data.lineas.length >0){ + + fillIntRot(data); + selectIntRotLineas(); + $('#title_int_rot').html('' + ' (' + tableCompIntRotativa.rows().count() + ')'); + $('#insertarRotativaBtn').removeClass('d-none') + if(actualizarLinea){ + var rows = $("#tableCompIntRotativa").DataTable().rows( '.selected' ).data().toArray(); + for(row of rows){ + if(row['paginasColor'] ==0){ + if($('#lp_rot_bn').css('display')!='none') + fill_lp_rot_bn(row, true); + } + else if(row['paginasColor'] >0){ + if($('#lp_rot_color').css('display')!='none') + fill_lp_rot_color(row, true); + } + } + } + } + else{ + $('#title_int_rot').html(''); + $('#insertarRotativaBtn').addClass('d-none') + $('#total_comp_rot').html('0.00') + + } + yeniden(data.); + return true; + }, + error: function(e){ + return false; + } + }) + } + } + return false; + } + + $('.comp_cubierta_items').on('change', function (){ + + checkComparadorCubierta() + }); + + + function checkComparadorCubierta(actualizarLinea = false){ + + if ($('#compCarasCubierta option:selected').val().length > 0 && + $('#compPapelCubierta').select2('data').length > 0 && + $('#compGramajeCubierta').select2('data').length > 0 ){ + + const dimension = getDimensionLibro(); + + let datos = { + tipo_impresion_id: , + type: 'cubierta', + paginas: parseInt($('#compCarasCubierta option:selected').val()), + tirada: parseInt($('#tirada').val()), + merma: parseInt($('#mermacubierta').val()), + color: 1, + ancho: dimension.ancho, + alto: dimension.alto, + lomo: getLomoLineasPresupuesto(), + solapas: $('#solapas').is(':checked')?1:0, + solapas_ancho: $('#solapas').is(':checked')?parseInt($('#solapas_ancho').val()):0, + papel_generico_id: $('#compPapelCubierta').select2('data')[0].id, + papel_generico: $('#compPapelCubierta').select2('data')[0].text.trim(), + gramaje: $('#compGramajeCubierta').select2('data')[0].text.trim() , + cliente_id: $('#clienteId').find(":selected").val(), + : v + }; + + $.ajax({ + type: "POST", + url: "/presupuestoadmin/datatable", + data: datos, + success: function (data) { + + clearCubierta(); + + if(data.lineas.length >0){ + fillCubierta(data); + selectCubiertaLineas(); + tableCompCubierta.order([0, 'asc']).draw() + $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); + $('#insertarCubiertaBtn').removeClass('d-none') + if(actualizarLinea){ + var rows = $("#tableCompCubierta").DataTable().rows( '.selected' ).data().toArray(); + for(row of rows){ + if (row.tipo=='cubierta') + fill_lp_cubierta(row, true); + } + } + } + else{ + $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); + if(tableCompCubierta.rows().count()==0){ + $('#insertarCubiertaBtn').addClass('d-none') + $('#total_comp_cubierta').html('0.00') + } + else{ + selectCubiertaLineas(); + } + + } + yeniden(data.); + return true; + }, + error: function(e){ + return false; + } + }) + } + + else{ + clearCubierta(); + } + } + + $('.comp_sobrecubierta_items').on('change', function (){ + + checkComparadorSobrecubierta() + }); + + + function checkComparadorSobrecubierta(actualizarLinea = false){ + + if ($('#compSobrecubierta option:selected').val() == 1 && + $('#compPapelSobrecubierta').select2('data').length > 0 && + $('#compGramajeSobrecubierta').select2('data').length > 0 ){ + + + const dimension = getDimensionLibro(); + + let datos = { + tipo_impresion_id: , + type: 'sobrecubierta', + paginas: 4, + tirada: parseInt($('#tirada').val()), + merma: parseInt($('#mermacubierta').val()), + color: 1, + ancho: dimension.ancho, + alto: dimension.alto, + lomo: getLomoLineasPresupuesto() + getLomoCubiertaLineasPresupuesto(), + solapas: $('#solapas_sobrecubierta').is(':checked')?1:0, + solapas_ancho: $('#solapas_sobrecubierta').is(':checked')?parseInt($('#solapas_ancho_sobrecubierta').val()):0, + papel_generico_id: $('#compPapelSobrecubierta').select2('data')[0].id, + papel_generico: $('#compPapelSobrecubierta').select2('data')[0].text.trim(), + gramaje: $('#compGramajeSobrecubierta').select2('data')[0].text.trim() , + cliente_id: $('#clienteId').find(":selected").val(), + : v + }; + + $.ajax({ + type: "POST", + url: "/presupuestoadmin/datatable", + data: datos, + success: function (data) { + + clearSobrecubierta(); + + if(data.lineas.length >0){ + + fillSobrecubierta(data); + selectCubiertaLineas(); + tableCompCubierta.order([ [0, 'asc'],[15, 'asc'] ]).draw() + $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); + $('#insertarCubiertaBtn').removeClass('d-none') + if(actualizarLinea){ + var rows = $("#tableCompCubierta").DataTable().rows( '.selected' ).data().toArray(); + for(row of rows){ + if (row.tipo=='sobrecubierta') + fill_lp_sobrecubierta(row, true); + } + } + } + else{ + $('#title_cubierta').html('' + (tableCompCubierta.rows().count()>0 ?(' (' + tableCompCubierta.rows().count() + ')'):'')); + if(tableCompCubierta.rows().count()==0){ + $('#insertarCubiertaBtn').addClass('d-none') + $('#total_comp_cubierta').html('0.00') + } + else{ + selectCubiertaLineas(); + } + + } + yeniden(data.); + return true; + }, + error: function(e){ + return false; + } + }) + } + + else{ + clearSobrecubierta(); + } + } + + + + + + $('#tipoImpresion').on("select2:close", function () { + + $('#paginas').change() + }) + + + +*/ export default Comparador; \ No newline at end of file diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js index cdc5d0ed..fb852a7c 100644 --- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js +++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js @@ -97,7 +97,7 @@ class DatosLibro { this.removeService('fajaColor'); } } - + changeFerro() { if (this.ferro.prop('checked')) { @@ -112,6 +112,7 @@ class DatosLibro { if (this.prototipo.prop('checked')) { this.addService('prototipo'); + this.ferro.prop('checked', true).trigger('change'); } else { this.removeService('prototipo'); @@ -396,4 +397,5 @@ class DatosLibro { } } + export default DatosLibro; \ No newline at end of file