From f93ecda648b595b71ebee72544bb08b5874d557b Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 20 Apr 2025 15:58:43 +0200 Subject: [PATCH] Creado concepto de ISK --- ci4/app/Controllers/Test.php | 96 ++++++---- .../Entities/Catalogo/CatalogoLibroEntity.php | 23 ++- .../Entities/Catalogo/IdentificadorIsk.php | 10 ++ .../Models/Catalogo/CatalogoLibroModel.php | 1 + .../Models/Catalogo/IdentificadorIskModel.php | 79 +++++++++ .../catalogo/_configuracionLibroFormItems.php | 148 ++++------------ .../catalogo/_datosGeneralesFormItems.php | 8 +- .../js/safekat/pages/catalogo/catalogo.js | 167 +++--------------- 8 files changed, 242 insertions(+), 290 deletions(-) create mode 100644 ci4/app/Entities/Catalogo/IdentificadorIsk.php create mode 100644 ci4/app/Models/Catalogo/IdentificadorIskModel.php diff --git a/ci4/app/Controllers/Test.php b/ci4/app/Controllers/Test.php index 7e141456..372d2da8 100755 --- a/ci4/app/Controllers/Test.php +++ b/ci4/app/Controllers/Test.php @@ -11,7 +11,8 @@ use App\Models\Configuracion\MaquinaModel; use App\Models\Presupuestos\ImportadorModel; use App\Models\Presupuestos\PresupuestoModel; use App\Models\Usuarios\GroupModel; -use App\Models\Usuarios\PermisosModel; +use App\Models\Catalogo\CatalogoLibroModel; +use App\Models\Catalogo\IdentificadorIskModel; use App\Services\PresupuestoService; use CodeIgniter\Shield\Entities\User; @@ -22,7 +23,8 @@ class Test extends BaseController { } - public function echo(){ + public function echo() + { echo "echo"; @@ -30,25 +32,39 @@ class Test extends BaseController public function index() { - $emailService = service('emailService'); - return $emailService->send("Hola mundo", "Hola mundo", "imnavajas@coit.es"); - + $modelCL = new CatalogoLibroModel(); + $modelISK = new IdentificadorIskModel(); + + // Obtener todos los registros sin isk + $registros = $modelCL->where('isk', null)->findAll(); + + $i = 0; + foreach ($registros as $registro) { + $isk = $modelISK->newIsk(); + + $modelCL->update($registro->id, ['isk' => $isk]); + + echo "[" . $i++ . "]Asignado ISK {$isk} a ID {$registro->id}
"; + } + + } - - private function clonar_tarifa_encuadernacion($teOrigen, $teDestino){ + + private function clonar_tarifa_encuadernacion($teOrigen, $teDestino) + { $tet_model = model('App\Models\Tarifas\TarifaEncuadernacionTiradaModel'); $tel_model = model('App\Models\Tarifas\TarifaEncuadernacionLineaModel'); - $tarifasTiradas = $tet_model->asObject()->where('tarifa_encuadernacion_id',$teOrigen)->findAll(); + $tarifasTiradas = $tet_model->asObject()->where('tarifa_encuadernacion_id', $teOrigen)->findAll(); - foreach ($tarifasTiradas as $tarifasTirada){ + foreach ($tarifasTiradas as $tarifasTirada) { echo "--->" . $tarifasTirada->id . "
"; - $tarifasLineas = $tel_model->asObject()->where('tirada_encuadernacion_id',$tarifasTirada->id)->findAll(); + $tarifasLineas = $tel_model->asObject()->where('tirada_encuadernacion_id', $tarifasTirada->id)->findAll(); // Prepare the data unset($tarifasTirada->id); @@ -61,7 +77,7 @@ class Test extends BaseController $tet_model->insert($tarifasTirada); $inserted_id = $tet_model->insertID(); - foreach ($tarifasLineas as $tarifasLinea){ + foreach ($tarifasLineas as $tarifasLinea) { echo "------>" . $tarifasLinea->id . "
"; @@ -82,10 +98,20 @@ class Test extends BaseController - private function test_get_tirada_alt($tirada, $merma, $tipo_impresion_id, - $json_data, $cliente_id, $ancho, $alto, - $solapas_cubierta, $solapas_ancho_cubierta, $solapas_sobrecubierta, $solapas_ancho_sobrecubierta, $lomo) - { + private function test_get_tirada_alt( + $tirada, + $merma, + $tipo_impresion_id, + $json_data, + $cliente_id, + $ancho, + $alto, + $solapas_cubierta, + $solapas_ancho_cubierta, + $solapas_sobrecubierta, + $solapas_ancho_sobrecubierta, + $lomo + ) { $values = []; if ($json_data) { @@ -96,7 +122,7 @@ class Test extends BaseController echo '------------------------------------
'; var_dump($linea); // Se obtienen los valores de cada linea para el calculo del precio - $datosPedido = (object)array( + $datosPedido = (object) array( 'paginas' => intval($linea['paginas']) ?? 0, 'tirada' => intval($tirada) ?? 0, 'merma' => intval($merma) ?? 0, @@ -174,7 +200,7 @@ class Test extends BaseController $datosTipolog = $linea['gotaNegro'] ?? null; if (!is_null($datosTipolog)) { $datosTipolog = []; - $data = (object)array( + $data = (object) array( 'negro' => intval($linea['cobNegro']) ?? 0, 'cyan' => intval($linea['cobCyan']) ?? 0, 'magenta' => intval($linea['cobMagenta']) ?? 0, @@ -193,7 +219,7 @@ class Test extends BaseController $data['papel'] = $papel; $data['opciones_papel'] = $opciones_papel; $data['maquina'] = $maquina; - $data['papel_generico'] = (array)$papel_generico; + $data['papel_generico'] = (array) $papel_generico; $data['isColor'] = $isColor; $data['a_favor_fibra'] = $linea['aFavorFibra'] ?? null; $data['datosTipolog'] = $datosTipolog; @@ -222,7 +248,7 @@ class Test extends BaseController // Previo a ejecutar, vaciar la tabla clientes_precios (ojo si hay customizaciones) - $db = \Config\Database::connect(); + $db = \Config\Database::connect(); $builder = $db->table('cliente_precios'); $plantillaDefectoId = 5; @@ -394,14 +420,14 @@ class Test extends BaseController { $paginas = 240; - $papel_impresion = (object)array( + $papel_impresion = (object) array( 'id' => 198, 'gramaje' => 90, 'precio_tonelada' => 1600 ); - $maquina = (object)array( + $maquina = (object) array( //'id' => 48, 'alto' => 800, 'ancho' => 520, @@ -430,7 +456,7 @@ class Test extends BaseController { $uso = 'interior'; $tipo = 'negro'; - $datosPedido = (object)array( + $datosPedido = (object) array( 'paginas' => 200, 'tirada' => 500, 'merma' => 10, @@ -482,7 +508,7 @@ class Test extends BaseController echo '
';
         $uso = 'cubierta';
         $tipo = 'color';
-        $datosPedido = (object)array(
+        $datosPedido = (object) array(
             'paginas' => 200,
             'tirada' => 500,
             'merma' => 10,
@@ -542,7 +568,7 @@ class Test extends BaseController
 
 
 
-        $datosPedido = (object)array(
+        $datosPedido = (object) array(
             'paginas' => 240,
             'tirada' => 100,
             'merma' => 10,
@@ -552,10 +578,10 @@ class Test extends BaseController
             'isCosido' => true,
         );
 
-        $parametrosRotativa = (object)array(
+        $parametrosRotativa = (object) array(
             'a_favor_fibra' => 0,
-            'bnPages' =>  240,
-            'colorPages' =>  0,
+            'bnPages' => 240,
+            'colorPages' => 0,
             'rotativa_gota_negro' => 0,
             'rotativa_gota_color' => 0,
         );
@@ -587,12 +613,12 @@ class Test extends BaseController
             var_dump($datosTipologias);
             echo '
'; - $parametrosRotativa->rotativa_gota_negro = $datosTipologias[0]->gota_negro; - $parametrosRotativa->rotativa_gota_color = $datosTipologias[0]->gota_color; - $parametrosRotativa->rotativa_negro = $datosTipologias[0]->negro; - $parametrosRotativa->rotativa_cyan = $datosTipologias[0]->cyan; - $parametrosRotativa->rotativa_magenta = $datosTipologias[0]->magenta; - $parametrosRotativa->rotativa_amarillo = $datosTipologias[0]->amarillo; + $parametrosRotativa->rotativa_gota_negro = $datosTipologias[0]->gota_negro; + $parametrosRotativa->rotativa_gota_color = $datosTipologias[0]->gota_color; + $parametrosRotativa->rotativa_negro = $datosTipologias[0]->negro; + $parametrosRotativa->rotativa_cyan = $datosTipologias[0]->cyan; + $parametrosRotativa->rotativa_magenta = $datosTipologias[0]->magenta; + $parametrosRotativa->rotativa_amarillo = $datosTipologias[0]->amarillo; echo '-------------------------------'; $maquinas = $maquina_model->getMaquinaImpresionForPresupuesto( @@ -624,7 +650,7 @@ class Test extends BaseController $uso = 'cubierta'; $tipo = 'color'; - $datosPedido = (object)array( + $datosPedido = (object) array( 'paginas' => 240, 'tirada' => 100, 'merma' => 10, @@ -714,7 +740,7 @@ class Test extends BaseController $uso = 'sobrecubierta'; $tipo = 'colorhq'; - $datosPedido = (object)array( + $datosPedido = (object) array( 'paginas' => 240, 'tirada' => 100, 'merma' => 10, diff --git a/ci4/app/Entities/Catalogo/CatalogoLibroEntity.php b/ci4/app/Entities/Catalogo/CatalogoLibroEntity.php index 0f363e67..25a166cb 100644 --- a/ci4/app/Entities/Catalogo/CatalogoLibroEntity.php +++ b/ci4/app/Entities/Catalogo/CatalogoLibroEntity.php @@ -4,7 +4,7 @@ namespace App\Entities\Catalogo; use CodeIgniter\Entity\Entity; use App\Models\Configuracion\PapelGenericoModel; - +use App\Models\Tarifas\Acabados\ServicioAcabadoModel; class CatalogoLibroEntity extends Entity { protected $attributes = [ @@ -32,6 +32,7 @@ class CatalogoLibroEntity extends Entity 'num_ilustr_color' => 0, 'num_ilustr_bn' => 0, 'coleccion' => '', + 'isk' => null, 'isbn' => null, 'ean' => null, 'editorial' => '', @@ -143,4 +144,24 @@ class CatalogoLibroEntity extends Entity $papel = model(PapelGenericoModel::class)->asObject()->find($this->sobrecubierta_papel_id); return $papel?->nombre ?? null; } + + public function getCubiertaAcabadoName() + { + if (!$this->cubierta_acabado_id) { + return null; + } + + $servicioAcabado = model(ServicioAcabadoModel::class)->asObject()->find($this->cubierta_acabado_id); + return $servicioAcabado?->nombre ?? null; + } + + public function getSobrecubiertaAcabadoName() + { + if (!$this->sobrecubierta_acabado_id) { + return null; + } + + $servicioAcabado = model(ServicioAcabadoModel::class)->asObject()->find($this->sobrecubierta_acabado_id); + return $servicioAcabado?->nombre ?? null; + } } diff --git a/ci4/app/Entities/Catalogo/IdentificadorIsk.php b/ci4/app/Entities/Catalogo/IdentificadorIsk.php new file mode 100644 index 00000000..525c3922 --- /dev/null +++ b/ci4/app/Entities/Catalogo/IdentificadorIsk.php @@ -0,0 +1,10 @@ +generarIskUnico($contexto); + $this->insert(['isk' => $isk]); + + return $isk; + } + + /** + * Genera un ISK único validado contra la base de datos. + */ + private function generarIskUnico(string $contexto): string + { + do { + $isk = $this->generarIsk($contexto); + } while ($this->where('isk', $isk)->countAllResults() > 0); + + return $isk; + } + + /** + * Formato legible de ISK, ejemplo: isk_libro_20250419_ab12c + */ + private function generarIsk(string $contexto): string + { + $fecha = date('Ymd'); + $random = substr(str_shuffle('abcdefghijklmnopqrstuvwxyz0123456789'), 0, 5); + return "isk_{$contexto}_{$fecha}_{$random}"; + } + + /** + * Hook para generar el ISK automáticamente al insertar. + */ + protected function agregarIsk(array $data): array + { + if (!isset($data['data']['isk']) || empty($data['data']['isk'])) { + $data['data']['isk'] = $this->generarIskUnico('registro'); + } + + return $data; + } + + // Bloqueo total de eliminaciones + public function delete($id = null, bool $purge = false) + { + throw new RuntimeException('La eliminación de registros está deshabilitada.'); + } + + public function deleteWhere($where) + { + throw new RuntimeException('La eliminación de registros está deshabilitada.'); + } + + public function deleteBatch($where) + { + throw new RuntimeException('La eliminación de registros está deshabilitada.'); + } +} diff --git a/ci4/app/Views/themes/vuexy/form/catalogo/_configuracionLibroFormItems.php b/ci4/app/Views/themes/vuexy/form/catalogo/_configuracionLibroFormItems.php index 06303dad..1b150622 100644 --- a/ci4/app/Views/themes/vuexy/form/catalogo/_configuracionLibroFormItems.php +++ b/ci4/app/Views/themes/vuexy/form/catalogo/_configuracionLibroFormItems.php @@ -242,15 +242,11 @@
@@ -273,8 +269,19 @@ -
-
+
+ +
+
+ +

@@ -290,12 +297,12 @@

- + - @@ -319,8 +326,19 @@
-
-
+
+ +
+
+ +

@@ -338,105 +356,7 @@ - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Nº PáginasPapelGramajeSolapaPlastificado
- - - - - -
- - - - - -
- - - - - - - - - -
- - - - - - - - - -
-
diff --git a/ci4/app/Views/themes/vuexy/form/catalogo/_datosGeneralesFormItems.php b/ci4/app/Views/themes/vuexy/form/catalogo/_datosGeneralesFormItems.php index eca94e9f..2957f789 100644 --- a/ci4/app/Views/themes/vuexy/form/catalogo/_datosGeneralesFormItems.php +++ b/ci4/app/Views/themes/vuexy/form/catalogo/_datosGeneralesFormItems.php @@ -71,6 +71,12 @@ value="sello) ?>" maxlength="255"> +
+ + +
+
-
+
diff --git a/httpdocs/assets/js/safekat/pages/catalogo/catalogo.js b/httpdocs/assets/js/safekat/pages/catalogo/catalogo.js index b6b4406b..27619de4 100644 --- a/httpdocs/assets/js/safekat/pages/catalogo/catalogo.js +++ b/httpdocs/assets/js/safekat/pages/catalogo/catalogo.js @@ -10,9 +10,10 @@ class Catalogo { this.cliente = new ClassSelect($("#clienteId"), '/catalogo/libros/clientlist', "Seleccione un cliente"); this.tipo_impresion = $("#tipoImpresion"); + this.caras_cubierta = $("#compCarasCubierta"); this.encuadernacion = new ClassSelect($("#encuadernacion"), '/importador/getencuadernacion', "Seleccione una encuadernación"); - + this.compPapelNegro = new ClassSelect($("#compPapelNegro"), '/presupuestoadmin/papelgenerico', "Seleccione un papel", false, { @@ -91,10 +92,10 @@ class Catalogo { lomo: 0, tipo: 'colorhq', }); - this.compSobrecubierta = new ClassSelect($("#compPapelSobrecubierta"), '/presupuestoadmin/papelgenerico', "Seleccione un papel", false, + this.compPapelSobrecubierta = new ClassSelect($("#compPapelSobrecubierta"), '/presupuestoadmin/papelgenerico', "Seleccione un papel", false, { tipo_impresion: this.encuadernacion.getVal(), - tirada: () => $('#tirada').val(), + tirada: () => this.tirada_no_pod, ancho: () => this.getDimensionLibro().ancho, alto: () => this.getDimensionLibro().alto, sopalas: () => $('#compSolapasSobrecubierta').val(), @@ -105,8 +106,8 @@ class Catalogo { this.compGramajeSobrecubierta = new ClassSelect($('#compGramajeSobrecubierta'), '/presupuestoadmin/papelgramaje', 'Seleccione un gramaje', false, { tipo_impresion: () => this.encuadernacion.getVal(), - papel_generico: () => this.compPapelCubierta.getVal(), - tirada: () => $('#tirada').val(), + papel_generico: () => this.compPapelSobrecubierta.getVal(), + tirada: () => this.tirada_no_pod, ancho: () => this.getDimensionLibro().ancho, alto: () => this.getDimensionLibro().alto, sopalas: () => $('#compSolapasSobrecubierta').val(), @@ -114,7 +115,7 @@ class Catalogo { tipo: 'colorhq', }); - this.acabadoCubierta = new ClassSelect($("#compAcabadoCubiertaSelected"), + this.acabadoCubierta = new ClassSelect($("#compAcabadoCubierta"), '/serviciosacabados/getacabados', '', false, @@ -122,7 +123,7 @@ class Catalogo { "cubierta": 1 } ); - this.acabadosSobrecubierta = new ClassSelect($("#compAcabadoSobrecubiertaSelected"), + this.acabadosSobrecubierta = new ClassSelect($("#compAcabadoSobrecubierta"), '/serviciosacabados/getacabados', '', false, @@ -131,7 +132,8 @@ class Catalogo { } ); - this.openBtn = $('#openOld'); + this.sobrecubiertaItems = $('.comp_sobrecubierta_items'); + this.compPaginasSobrecubierta = $('#compSobrecubierta'); } @@ -146,6 +148,9 @@ class Catalogo { this.cliente.init(); this.tipo_impresion.select2(); + this.caras_cubierta.select2(); + this.compPaginasSobrecubierta .select2(); + this.encuadernacion.init(); this.compPapelNegro.init(); @@ -154,12 +159,15 @@ class Catalogo { this.compGramajeColor.init(); this.compPapelCubierta.init(); this.compGramajeCubierta.init(); - this.compSobrecubierta.init(); + this.compPapelSobrecubierta.init(); this.compGramajeSobrecubierta.init(); this.acabadoCubierta.init(); this.acabadosSobrecubierta.init(); + + // Al cargar la página + this.toggleSobrecubiertaFields(); this.compPapelNegro.item.on('select2:select', function () { self.compGramajeNegro.empty(); @@ -173,6 +181,9 @@ class Catalogo { // Inicializacino de eventos this.tipo_impresion.on("change", this.updateOpcionesComparador.bind(this)); + // Al cambiar el selector de paginas de sobrecubierta + this.compPaginasSobrecubierta.on('change', this.toggleSobrecubiertaFields.bind(this)); + this.updateOpcionesComparador(); $(document).on('change', '.warning-change', function () { @@ -181,7 +192,7 @@ class Catalogo { select2Container.addClass('bg-warning'); }); } - + updateOpcionesComparador() { @@ -241,144 +252,22 @@ class Catalogo { } - getDimensionLibro() { let ancho = $('#ancho').val(); let alto = $('#alto').val();; return { ancho, alto }; } - - fillInitialData(data) { - - $('#paginas').val(data.datosGenerales.paginas); - $('#tirada').val(data.datosGenerales.tirada); - if (data.datosGenerales.papel_formato_personalizado) { - $('#papelFormatoPersonalizado').prop('checked', true); - $('#tamanio').addClass('d-none'); - $('#formatoPersonalizado').removeClass('d-none'); - $('#papelFormatoAncho').val(data.datosGenerales.papel_formato_ancho); - $('#papelFormatoAlto').val(data.datosGenerales.papel_formato_alto); - } - else { - $('#tamanio').removeClass('d-none'); - $('#formatoPersonalizado').addClass('d-none'); - $('#papelFormatoPersonalizado').prop('checked', false); - $('#tamanio').append(''); - $('#tamanio').val(data.datosGenerales.papel_formato_id).trigger('change'); - } - - if (data.encuadernacion) { - $('#encuadernacion_old').val(data.encuadernacion.encuadernacionOld); - // check if data.encuadernacion.encuadernacion exists and is not empty - if (data.encuadernacion.encuadernacion) { - this.encuadernacion.setOption(data.encuadernacion.encuadernacion.id, data.encuadernacion.encuadernacion.encuadernacion); - } - } - - if (data.lineas) { - if (data.lineas.isHq) { - $('#isHq').val(data.lineas.isHq); - } - else { - $('#isHq').val(0); - } - - if (data.lineas.bn && data.lineas.bn.paginas) { - $('#compPaginasNegro').val(data.lineas.bn.paginas); - $('#compPapelNegroOrigen').val(data.lineas.bn.papel_nombre); - this.compGramajeNegro.setOption(parseFloat(data.lineas.bn.gramaje).toFixed(0), parseFloat(data.lineas.bn.gramaje).toFixed(0)); - this.compPapelNegro.item.prop('disabled', false); - this.compPapelNegro.setOption(data.lineas.bn.new_papel_id, data.lineas.bn.new_papel_nombre); - } - else { - $('#compPaginasNegro').val(0); - $('#compPapelNegroOrigen').val(""); - this.compGramajeNegro.empty(); - this.compPapelNegro.empty(); - this.compPapelNegro.item.prop('disabled', true); - this.compGramajeNegro.item.prop('disabled', true); - } - - if (data.lineas.color && data.lineas.color.paginas) { - $('#compPaginasColor').val(data.lineas.color.paginas); - $('#compPapelColorOrigen').val(data.lineas.color.papel_nombre); - this.compGramajeColor.setOption(parseFloat(data.lineas.color.gramaje).toFixed(0), parseFloat(data.lineas.color.gramaje).toFixed(0)); - this.compPapelColor.item.prop('disabled', false); - this.compPapelColor.setOption(data.lineas.color.new_papel_id, data.lineas.color.new_papel_nombre); - } - else { - $('#compPaginasColor').val(0); - $('#compPapelColorOrigen').val(""); - this.compGramajeColor.empty(); - this.compPapelColor.empty(); - this.compPapelColor.item.prop('disabled', true); - } - - if (data.lineas.cubierta && data.lineas.cubierta.paginas) { - $('#compPaginasCubierta').val(data.lineas.cubierta.paginas); - $('#compPapelCubiertaOrigen').val(data.lineas.cubierta.papel_nombre); - this.compGramajeCubierta.setOption(parseFloat(data.lineas.cubierta.gramaje).toFixed(0), parseFloat(data.lineas.cubierta.gramaje).toFixed(0)); - $('#compSolapasCubierta').val(parseFloat(data.lineas.cubierta.solapas).toFixed(0)); - this.compPapelCubierta.item.prop('disabled', false); - this.compPapelCubierta.setOption(data.lineas.cubierta.new_papel_id, data.lineas.cubierta.new_papel_nombre); - } - else { - $('#compPaginasCubierta').val(0); - $('#compPapelCubiertaOrigen').val(""); - this.compGramajeCubierta.empty(); - $('#compSolapasCubierta').val(""); - this.compPapelCubierta.empty(); - this.compPapelCubierta.item.prop('disabled', true); - } - - if (data.lineas.sobrecubierta && data.lineas.sobrecubierta.paginas) { - $('#compSobrecubierta').val(1); - $('#compPapelSobrecubiertaOrigen').val(data.lineas.sobrecubierta.papel_nombre); - this.compGramajeSobrecubierta.setOption(parseFloat(data.lineas.sobrecubierta.gramaje).toFixed(0), parseFloat(data.lineas.sobrecubierta.gramaje).toFixed(0)); - $('#compSolapasSobrecubierta').val(parseFloat(data.lineas.sobrecubierta.solapas).toFixed(0)); - this.compSobrecubierta.item.prop('disabled', false); - this.compSobrecubierta.setOption(data.lineas.sobrecubierta.new_papel_id, data.lineas.sobrecubierta.new_papel_nombre); - } - else { - $('#compSobrecubierta').val(0); - $('#compPapelSobrecubiertaOrigen').val(""); - this.compGramajeSobrecubierta.empty(); - $('#compSolapasSobrecubierta').val(""); - this.compSobrecubierta.empty(); - this.compSobrecubierta.item.prop('disabled', true); - } - - if (data.acabados) { - if (data.acabados.cubierta && data.acabados.cubierta.acabadoOld) { - $('#compAcabadoCubiertaOrigen').val(data.acabados.cubierta.acabadoOld); - this.acabadoCubierta.setOption(data.acabados.cubierta.acabado.id, data.acabados.cubierta.acabado.name); - this.acabadoCubierta.item.prop('disabled', false); - } - else { - $('#compAcabadoCubiertaOrigen').val(""); - this.acabadoCubierta.empty(); - this.acabadoCubierta.item.prop('disabled', true); - } - - if (data.acabados.sobrecubierta && data.acabados.sobrecubierta.acabadoOld) { - $('#compAcabadoSobrecubiertaOrigen').val(data.acabados.sobrecubierta.acabadoOld); - this.acabadosSobrecubierta.setOption(data.acabados.sobrecubierta.acabado.id, data.acabados.sobrecubierta.acabado.name); - this.acabadosSobrecubierta.item.prop('disabled', false); - } - else { - $('#compAcabadoSobrecubiertaOrigen').val(""); - this.acabadosSobrecubierta.empty(); - this.acabadosSobrecubierta.item.prop('disabled', true); - } - } - - - } - this.makeImport.prop('disabled', false); + toggleSobrecubiertaFields() { + if (this.compPaginasSobrecubierta.val() === '1') { + this.sobrecubiertaItems.prop('disabled', false).trigger('change.select2'); + } else { + this.sobrecubiertaItems.prop('disabled', true).trigger('change.select2'); } } +} + document.addEventListener('DOMContentLoaded', function () { let catalogo = new Catalogo();