diff --git a/ci4/app/Config/Routes.php b/ci4/app/Config/Routes.php index c4c439e8..c97c56e8 100644 --- a/ci4/app/Config/Routes.php +++ b/ci4/app/Config/Routes.php @@ -599,6 +599,7 @@ $routes->group('serviciosacabados', ['namespace' => 'App\Controllers\Presupuesto $routes->post('datatable', 'Presupuestoacabados::datatable', ['as' => 'dataTableOfPresupuestoAcabados']); $routes->post('menuitems', 'Presupuestoacabados::menuItems', ['as' => 'menuItemsOfPresupuestoAcabados']); $routes->post('edit/(:num)', 'Presupuestoacabados::edit/$1', ['as' => 'updatePresupuestoacabados']); + $routes->get('getacabados', 'Presupuestoacabados::getAcabados'); }); $routes->group('serviciosencuadernaciones', ['namespace' => 'App\Controllers\Presupuestos'], function ($routes) { diff --git a/ci4/app/Controllers/Presupuestos/Presupuestoacabados.php b/ci4/app/Controllers/Presupuestos/Presupuestoacabados.php index 48fa392c..18dc5743 100755 --- a/ci4/app/Controllers/Presupuestos/Presupuestoacabados.php +++ b/ci4/app/Controllers/Presupuestos/Presupuestoacabados.php @@ -1,4 +1,5 @@ -request->getJSON(); - if(count($postData->datos)>0){ + if (count($postData->datos) > 0) { $this->model->deleteServiciosNotInArray($requestedId, $postData->datos); - } - else{ + } else { $this->model->deleteAllServicios($requestedId); } - if(count($postData->datos)>0){ + if (count($postData->datos) > 0) { $this->model->updateTarifas($requestedId, $postData->datos); } @@ -58,14 +58,14 @@ class Presupuestoacabados extends \App\Controllers\BaseResourceController $data = [ $csrfTokenName => $newTokenHash ]; - + return $this->respond($data); } public function update($requestedId = null) { - if ($requestedId == null) : + if ($requestedId == null): return; endif; @@ -75,20 +75,20 @@ class Presupuestoacabados extends \App\Controllers\BaseResourceController $POD = $postData->POD ?? 0; $result = []; - if(count($tarifas)>0){ - foreach ($tarifas as $tarifa){ + if (count($tarifas) > 0) { + foreach ($tarifas as $tarifa) { $values = $this->model->getPrecioTarifa($tarifa, $tirada, $POD); array_push($result, $values); } } - + $newTokenHash = csrf_hash(); $csrfTokenName = csrf_token(); $data = [ 'lines' => $result, $csrfTokenName => $newTokenHash ]; - + return $this->respond($data); } @@ -101,7 +101,7 @@ class Presupuestoacabados extends \App\Controllers\BaseResourceController $tirada = $reqData['tirada'] ?? 0; $proveedor_id = $reqData['proveedor_id'] ?? -1; $POD = $reqData['POD'] ?? 0; - + $newTokenHash = csrf_hash(); $csrfTokenName = csrf_token(); @@ -119,17 +119,59 @@ class Presupuestoacabados extends \App\Controllers\BaseResourceController } } + public function getAcabados() + { + if ($this->request->isAJAX()) { + + $cubierta = $this->request->getGet("cubierta") ?? 0; + $sobrecubierta = $this->request->getGet("sobrecubierta") ?? 0; + + $model = model('App\Models\Tarifas\Acabados\TarifaAcabadoModel'); + $query = $model->builder()->select( + [ + "id", + "nombre as name" + ] + ) + ->where("lg_tarifa_acabado.is_deleted", 0) + ->where("lg_tarifa_acabado.mostrar_en_presupuesto", 1); + + if($cubierta == 1){ + $query->where("lg_tarifa_acabado.acabado_cubierta", 1); + } + else if ($sobrecubierta == 1){ + $query->where("lg_tarifa_acabado.acabado_sobrecubierta", 1); + } + if ($this->request->getGet("q")) { + $query->groupStart() + ->orLike("lg_tarifa_acabado.nombre", $this->request->getGet("q")) + ->groupEnd(); + } + + $items = $query->get()->getResultObject(); + // add a custom item at the beginning + $customItem = new \stdClass; + $customItem->id = 0; + $customItem->name = "Ninguno"; + array_unshift($items, $customItem); + + return $this->response->setJSON($items); + + } else { + return $this->failUnauthorized('Invalid request', 403); + } + } public function menuItems() { if ($this->request->isAJAX()) { $reqData = $this->request->getPost(); - try{ + try { $tarifa_id = $reqData['tarifa_id'] ?? -1; $tirada = $reqData['tirada'] ?? 0; - + $newTokenHash = csrf_hash(); $csrfTokenName = csrf_token(); @@ -140,17 +182,15 @@ class Presupuestoacabados extends \App\Controllers\BaseResourceController $csrfTokenName => $newTokenHash ]; - } - catch(Exception $e){ + } catch (Exception $e) { $data = [ 'error' => $e, $csrfTokenName => $newTokenHash ]; - } - finally{ + } finally { return $this->respond($data); } - + } else { return $this->failUnauthorized('Invalid request', 403); } diff --git a/ci4/app/Controllers/Presupuestos/Presupuestocliente.php b/ci4/app/Controllers/Presupuestos/Presupuestocliente.php index ca33d1d6..b3edb446 100755 --- a/ci4/app/Controllers/Presupuestos/Presupuestocliente.php +++ b/ci4/app/Controllers/Presupuestos/Presupuestocliente.php @@ -329,7 +329,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController 'gramajeCubierta' => intval($cubierta['gramajeCubierta']), 'carasCubierta' => intval($cubierta['carasImpresion'] ?? 0), 'solapasCubierta' => intval($cubierta['solapas'] ?? 0) == 1 ? intval($cubierta['tamanioSolapas']) : 0, - 'acabadosCubierta' => $cubierta['acabados'] ?? 0, + 'acabado' => $cubierta['acabado'] ?? 0, 'lomoRedondo' => $lomoRedondo, ]; @@ -339,7 +339,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController 'papel' => $modelPapelGenerico->getIdFromCode($sobrecubierta['papel']), 'gramaje' => intval($sobrecubierta['gramaje']), 'solapas' => intval($sobrecubierta['solapas'] ?? 0), - 'acabados' => $sobrecubierta['plastificado'] ?? 0, + 'acabado' => $sobrecubierta['acabado'] ?? 0, ]; } else $sobrecubierta = false; @@ -797,7 +797,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController 'gramajeCubierta' => intval($cubierta['gramajeCubierta']), 'carasCubierta' => intval($cubierta['carasImpresion'] ?? 0), 'solapasCubierta' => intval($cubierta['solapas'] ?? 0) == 1 ? intval($cubierta['tamanioSolapas']) : 0, - 'acabadosCubierta' => $cubierta['acabados'] ?? 0, + 'acabado' => $cubierta['acabado'] ?? 0, 'lomoRedondo' => $cubierta['lomoRedondo'] ?? 0, 'cabezada' => $cubierta['cabezada'] ?? 'WHI', ]; @@ -808,7 +808,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController 'papel' => $modelPapelGenerico->getIdFromCode($sobrecubierta['papel']), 'gramaje' => intval($sobrecubierta['gramaje']), 'solapas' => intval($sobrecubierta['solapas'] ?? 0), - 'acabados' => $sobrecubierta['plastificado'] ?? 0, + 'acabado' => $sobrecubierta['acabado'] ?? 0, ]; } else $sobrecubierta = false; @@ -935,29 +935,7 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController if ($id != 0) { $borrar_antes = true; } - $sobrecubierta_acabado_id = []; - if ($datos_presupuesto['sobrecubierta']) { - $sobrecubierta_acabado_id = $this->obtenerTarifasAcabado(['plastificado' => $datos_presupuesto['sobrecubierta']['acabados']]); - if (count($sobrecubierta_acabado_id) > 0) { - // la sobrecubierta sólo tiene plastificado - $datos_presupuesto['sobrecubierta']['acabados'] = $sobrecubierta_acabado_id['plastificado']; - } - } - $cubierta_acabado_id = $this->obtenerTarifasAcabado($datos_presupuesto['cubierta']['acabadosCubierta']); - if (count($cubierta_acabado_id) > 0) { - if (array_key_exists('plastificado', $cubierta_acabado_id)) { - $datos_presupuesto['cubierta']['acabadosCubierta']['plastificado'] = $cubierta_acabado_id['plastificado']; - } - if (array_key_exists('barniz', $cubierta_acabado_id)) { - $datos_presupuesto['cubierta']['acabadosCubierta']['barniz'] = $cubierta_acabado_id['barniz']; - } - if (array_key_exists('estampado', $cubierta_acabado_id)) { - $datos_presupuesto['cubierta']['acabadosCubierta']['estampado'] = $cubierta_acabado_id['estampado']; - } - } else { - $datos_presupuesto['cubierta']['acabadosCubierta']['id'] = 0; - } - + $datos_presupuesto['prototipo'] = $prototipo; $datos_presupuesto['ferro'] = $ferro; $datos_presupuesto['ferro_digital'] = $ferroDigital; @@ -995,9 +973,9 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController $this->guardarLineaPresupuesto($id, $resultado_presupuesto['info']['guardas']); // Servicios - foreach ($sobrecubierta_acabado_id as $acabado) { + if(intval($sobrecubierta['acabado']) > 0) { $model = model('App\Models\Presupuestos\PresupuestoAcabadosModel'); - $servicio = $model->getPrecioTarifa($acabado, intval($selected_tirada), -1, $POD); + $servicio = $model->getPrecioTarifa(intval($sobrecubierta['acabado']), intval($selected_tirada), -1, $POD); if (count($servicio) > 0) { if ($servicio[0]->total > 0) { @@ -1005,16 +983,16 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController } } } - foreach ($cubierta_acabado_id as $acabado) { + if (intval($cubierta['acabado'])>0) { $model = model('App\Models\Presupuestos\PresupuestoAcabadosModel'); - $servicio = $model->getPrecioTarifa($acabado, intval($selected_tirada), -1, $POD); + $servicio = $model->getPrecioTarifa(intval($cubierta['acabado']), intval($selected_tirada), -1, $POD); if (count($servicio) > 0) { if ($servicio[0]->total > 0) { $this->guardarServicio($id, $servicio[0], 'acabado', true, false); } } - + } foreach ($resultado_presupuesto['info']['serviciosDefecto'] as $servicio) { $this->guardarServicio($id, $servicio, 'encuadernacion'); @@ -1117,26 +1095,22 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController $data['cubierta']['solapas_ancho'] = $presupuesto->solapas_ancho; $data['cubierta']['cabezada'] = $presupuesto->cabezada; $modelAcabado = model("App\Models\Tarifas\Acabados\TarifaAcabadoModel"); - $data['cubierta']['plastificado'] = $modelAcabado->getCodeFromId($presupuesto->acabado_cubierta_id); - if ($data['cubierta']['plastificado'] == '') { - $data['cubierta']['plastificado'] = 'NONE'; - } - $data['cubierta']['barniz'] = $modelAcabado->getCodeFromId($presupuesto->barniz_cubierta_id); - if ($data['cubierta']['barniz'] == '') { - $data['cubierta']['barniz'] = 'NONE'; - } - $data['cubierta']['estampado'] = $modelAcabado->getCodeFromId($presupuesto->estampado_cubierta_id); - if ($data['cubierta']['estampado'] == '') { - $data['cubierta']['estampado'] = 'NONE'; + $data['cubierta']['acabado']['id'] = $presupuesto->acabado_cubierta_id; + if ($presupuesto->acabado_cubierta_id == 0) { + $data['cubierta']['acabado']['text'] = "Ninguno"; + } else { + $data['cubierta']['acabado']['text'] = $modelAcabado->find($presupuesto->acabado_cubierta_id)->nombre; } $data['cubierta']['retractilado'] = $presupuesto->retractilado ? 1 : 0; $data['sobrecubierta'] = array_key_exists('sobrecubierta', $datos_papel) ? $datos_papel['sobrecubierta'] : []; $data['sobrecubierta']['solapas'] = $presupuesto->solapas_sobrecubierta ? 1 : 0; $data['sobrecubierta']['solapas_ancho'] = $presupuesto->solapas_ancho_sobrecubierta; - $data['sobrecubierta']['plastificado'] = $modelAcabado->getCodeFromId($presupuesto->acabado_sobrecubierta_id); - if ($data['sobrecubierta']['plastificado'] == '') { - $data['sobrecubierta']['plastificado'] = 'NONE'; + $data['sobrecubierta']['acabado']['id'] = $presupuesto->acabado_sobrecubierta_id; + if ($presupuesto->acabado_sobrecubierta_id == 0) { + $data['sobrecubierta']['acabado']['text'] = "Ninguno"; + } else { + $data['sobrecubierta']['acabado']['text'] = $modelAcabado->find($presupuesto->acabado_sobrecubierta_id)->nombre; } $data['guardas'] = array_key_exists('guardas', $datos_papel) ? $datos_papel['guardas'] : []; @@ -1488,7 +1462,6 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController $gramajeCubierta = $datos_entrada['cubierta']['gramajeCubierta']; $carasCubierta = $datos_entrada['cubierta']['carasCubierta']; $solapasCubierta = $datos_entrada['cubierta']['solapasCubierta']; - $acabadosCubierta = $datos_entrada['cubierta']['acabadosCubierta'] ?? []; $lomoRedondo = $datos_entrada['cubierta']['lomoRedondo']; // Sobrecubierta @@ -1726,20 +1699,18 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController ]; return $return_data; } - // Acabados Cubierta - $tarifaAcabadoCubierta = $this->obtenerTarifasAcabado($acabadosCubierta); - $acabadoCubierta = []; - foreach ($tarifaAcabadoCubierta as $tarifa) { - if ($tarifa == 0) - continue; + // Acabado Cubierta + if (intval($datos_entrada['cubierta']['acabado']) != 0) { + + $model = model('App\Models\Presupuestos\PresupuestoAcabadosModel'); - $acabadoCubierta = $model->getPrecioTarifa($tarifa, $datosPedido->tirada, -1, $POD); + $acabadoCubierta = $model->getPrecioTarifa(intval($datos_entrada['cubierta']['acabado']), $datosPedido->tirada, -1, $POD); if (count($acabadoCubierta) > 0) { if ($acabadoCubierta[0]->total <= 0) { - $input_data['tarifas_acabado_cubierta'] = $tarifaAcabadoCubierta; + $input_data['tarifas_acabado_cubierta'] = intval($datos_entrada['cubierta']['acabado']); $errorModel = new ErrorPresupuesto(); $errorModel->insertError( $datos_entrada['id'], @@ -1813,21 +1784,17 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController } $lomo_sobrecubierta = $lomo + floatval($linea_sobrecubierta['mano']); - $tarifaAcabadoSobrecubierta = $this->obtenerTarifasAcabado(['plastificado' => $sobreCubierta['acabados']]); - $acabadoSobrecubierta = []; - foreach ($tarifaAcabadoSobrecubierta as $tarifa) { + // Acabado sobrecubierta + if (intval($datos_entrada['sobrecubierta']['acabado']) != 0) { - // NONE - if ($tarifa == 0) - continue; $model = model('App\Models\Presupuestos\PresupuestoAcabadosModel'); - $acabadoSobrecubierta = $model->getPrecioTarifa($tarifa, $datosPedido->tirada, -1, $POD); + $acabadoSobrecubierta = $model->getPrecioTarifa(intval($datos_entrada['sobrecubierta']['acabado']), $datosPedido->tirada, -1, $POD); if (count($acabadoSobrecubierta) > 0) { if ($acabadoSobrecubierta[0]->total <= 0) { - $input_data['tarifas_acabado_sobrecubierta'] = $tarifaAcabadoSobrecubierta; + $input_data['tarifas_acabado_sobrecubierta'] = intval($datos_entrada['sobrecubierta']['acabado']); $errorModel = new ErrorPresupuesto(); $errorModel->insertError( $datos_entrada['id'], @@ -2278,22 +2245,6 @@ class Presupuestocliente extends \App\Controllers\BaseResourceController return $data; } - protected function getAcabadosCubierta() - { - $model = model('App\Models\Tarifas\Acabados\TarifaAcabadoModel'); - $data = $model->getServiciosAcabadoCubierta(); - array_unshift($data, (object) ['id' => '', 'label' => lang('Basic.global.None')]); - return $data; - } - - protected function getAcabadosSobrecubierta() - { - $model = model('App\Models\Tarifas\Acabados\TarifaAcabadoModel'); - $data = $model->getServiciosAcabadoSobrecubierta(); - array_unshift($data, (object) ['id' => '', 'label' => lang('Basic.global.None')]); - return $data; - } - protected function getClienteListItems($selId = null) { $data = ['' => lang('Basic.global.pleaseSelectA', [mb_strtolower(lang('Clientes.cliente'))])]; diff --git a/ci4/app/Database/Migrations/2024-12-14-121014_RemoveEstampadoBarnizado.php b/ci4/app/Database/Migrations/2024-12-14-121014_RemoveEstampadoBarnizado.php new file mode 100644 index 00000000..37f96362 --- /dev/null +++ b/ci4/app/Database/Migrations/2024-12-14-121014_RemoveEstampadoBarnizado.php @@ -0,0 +1,36 @@ +forge->dropColumn('presupuestos', 'barniz_cubierta_id'); + $this->forge->dropColumn('presupuestos', 'estampado_cubierta_id'); + } + + public function down() + { + $fields = [ + 'barniz_cubierta_id' => [ + 'type' => 'INT', + 'constraint' => 10, + 'unsigned' => true, + 'null' => false, + 'default' => 0, + ], + 'estampado_cubierta_id' => [ + 'type' => 'INT', + 'constraint' => 10, + 'unsigned' => true, + 'null' => false, + 'default' => 0, + ], + ]; + + $this->forge->addColumn('presupuestos', $fields); + } +} diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php index 1fb887c2..fee02953 100755 --- a/ci4/app/Language/es/Presupuestos.php +++ b/ci4/app/Language/es/Presupuestos.php @@ -67,6 +67,7 @@ return [ 'papelFormatoPersonalizado' => 'Tamaño personalizado', 'papelFormatoAncho' => 'Ancho', 'papelFormatoAlto' => 'Alto', + 'acabado' => 'Acabado', 'acabadosExteriores' => 'Acabados exteriores', 'acabadoCubierta' => 'Acabado Cubierta', 'acabadoSobrecubierta' => 'Acabado Sobrecubierta', diff --git a/ci4/app/Models/Presupuestos/PresupuestoModel.php b/ci4/app/Models/Presupuestos/PresupuestoModel.php index 974c29fa..94d5952f 100755 --- a/ci4/app/Models/Presupuestos/PresupuestoModel.php +++ b/ci4/app/Models/Presupuestos/PresupuestoModel.php @@ -443,10 +443,8 @@ class PresupuestoModel extends \App\Models\BaseModel 'comparador_json_data' => $this->generateJson($data), - 'acabado_cubierta_id' => $data['cubierta']['acabadosCubierta']['plastificado'], - 'barniz_cubierta_id' => $data['cubierta']['acabadosCubierta']['barniz'], - 'estampado_cubierta_id' => $data['cubierta']['acabadosCubierta']['estampado'], - 'acabado_sobrecubierta_id' => !$data['sobrecubierta'] ? 0 : $data['sobrecubierta']['acabados'], + 'acabado_cubierta_id' => $data['cubierta']['acabado'], + 'acabado_sobrecubierta_id' => !$data['sobrecubierta'] ? 0 : $data['sobrecubierta']['acabado'], 'comp_tipo_impresion' => $data['isHq'] ? ($data['isColor'] ? 'colorhq' : 'negrohq') : ($data['isColor'] ? 'color' : 'negro'), diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/cliente/items/_disenioCubierta.php b/ci4/app/Views/themes/vuexy/form/presupuestos/cliente/items/_disenioCubierta.php index 5b242bca..705495f1 100644 --- a/ci4/app/Views/themes/vuexy/form/presupuestos/cliente/items/_disenioCubierta.php +++ b/ci4/app/Views/themes/vuexy/form/presupuestos/cliente/items/_disenioCubierta.php @@ -171,46 +171,12 @@
-
- - -
- -
- - -
- -
-
- -
- -
+
" @@ -230,11 +196,11 @@

Extras

-
+
-
+ -
+
@@ -266,20 +232,14 @@
-
+
-
- -
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoCliente/disenioCubierta.js b/httpdocs/assets/js/safekat/pages/presupuestoCliente/disenioCubierta.js index d0240a60..5b80c2eb 100644 --- a/httpdocs/assets/js/safekat/pages/presupuestoCliente/disenioCubierta.js +++ b/httpdocs/assets/js/safekat/pages/presupuestoCliente/disenioCubierta.js @@ -62,15 +62,13 @@ class DisenioCubierta { this.divPapelCubierta = this.domItem.find("#divPapelCubierta"); this.divGramajeCubierta = this.domItem.find("#divGramajeCubierta"); - this.cubiertaPlastificado = this.domItem.find("#plastificado"); - this.cubiertaBarniz = this.domItem.find("#barniz"); - this.cubiertaEstampado = this.domItem.find("#estampado"); + this.acabadoCubierta = this.domItem.find("#acabadoCubierta"); this.cubiertaRetractilado = this.domItem.find("#retractilado"); this.configuracionSobrecubierta = this.domItem.find(".config-sobrecubierta"); this.sobrecubierta = this.domItem.find("#addSobrecubierta"); this.papelSobrecubierta = this.domItem.find("#papelSobrecubierta"); - this.plastificadoSobrecubierta = this.domItem.find("#plastificadoSobrecubierta"); + this.acabadoSobrecubierta = this.domItem.find("#acabadoSobrecubierta"); this.configuracionFaja = this.domItem.find(".config-faja"); this.faja = this.domItem.find("#addFaja"); @@ -94,6 +92,26 @@ class DisenioCubierta { this.rl_tamanio_sobrecubierta = $('#rl_tamanio_sobrecubierta'); this.rl_acabado_sobrecubierta = $("#rl_acabado_sobrecubierta"); + this.acabadoCubierta = new ClassSelect($("#acabadoCubierta"), + '/serviciosacabados/getacabados', + '', + false, + { + [this.csrf_token]: this.csrf_hash, + "cubierta": 1 + } + ); + + this.acabadoSobrecubierta = new ClassSelect($("#acabadoSobrecubierta"), + '/serviciosacabados/getacabados', + '', + false, + { + [this.csrf_token]: this.csrf_hash, + "sobrecubierta": 1 + } + ); + this.initValidation(); // Creamos un nuevo observador que detecta cambios en los atributos @@ -124,6 +142,9 @@ class DisenioCubierta { const self = this; this.papelEspecial.init(); + this.acabadoCubierta.init(); + this.acabadoSobrecubierta.init(); + $('#papelEspecialCubiertaSel').on("change", this.#handlePapelCubiertaEspecial.bind(this)); // Eventos @@ -195,9 +216,8 @@ class DisenioCubierta { $(`#divGramajeCubierta .gramaje-cubierta input[data-value="${datosCubierta.gramaje}"]`).trigger('click'); }, 0); - this.cubiertaPlastificado.val(datosCubierta.plastificado).trigger('change'); - this.cubiertaBarniz.val(datosCubierta.barniz).trigger('change'); - this.cubiertaEstampado.val(datosCubierta.estampado).trigger('change'); + this.acabadoCubierta.setOption(datosCubierta.acabado.id, datosCubierta.acabado.text); + if (datosCubierta.retractilado) { setTimeout(() => { this.cubiertaRetractilado.trigger('click'); @@ -208,7 +228,7 @@ class DisenioCubierta { this.sobrecubierta.trigger('click'); this.papelSobrecubierta.val(datosSobrecubierta.papel.code + "_" + datosSobrecubierta.gramaje).trigger('change'); this.solapasSobrecubierta.val(datosSobrecubierta.solapas_ancho); - this.plastificadoSobrecubierta.val(datosSobrecubierta.plastificado).trigger('change'); + this.acabadoSobrecubierta.setOption(datosSobrecubierta.acabado.id, datosSobrecubierta.acabado.text); } } @@ -390,7 +410,7 @@ class DisenioCubierta { if (papel != null && gramaje != null) { this.rl_papel_cubierta.text(papel + " " + gramaje + " gr"); - this.rl_acabado_cubierta.text(this.domItem.find("#plastificado").children("option:selected").text()); + this.rl_acabado_cubierta.text("Acabado: " + this.acabadoCubierta.getText()); this.rl_papel_cubierta.removeClass('d-none'); this.rl_acabado_cubierta.removeClass('d-none'); @@ -433,10 +453,7 @@ class DisenioCubierta { const sobrecubierta = this.getSobrecubierta(true); this.rl_papel_sobrecubierta.text(sobrecubierta.papel + " " + sobrecubierta.gramaje + " gr") this.rl_tamanio_sobrecubierta.text("Solapas: " + sobrecubierta.solapas + " mm") - let acabado_text = sobrecubierta.plastificado; - if (acabado_text.includes("Sin plastificar")) - acabado_text = "Sin plastificar"; - this.rl_acabado_sobrecubierta.text(acabado_text); + this.rl_acabado_sobrecubierta.text("Acabado: " + this.acabadoSobrecubierta.getText()); } } else { @@ -516,21 +533,14 @@ class DisenioCubierta { getAcabados(forResumen = false) { try { - let acabados = {}; + let acabado; if (forResumen) { - acabados = 'Plastificado ' + this.domItem.find("#plastificado").children("option:selected").text(); - if (this.domItem.find("#barniz").children("option:selected").val() != 'NONE') - acabados += ", Barniz UVI " + this.domItem.find("#barniz").children("option:selected").text(); - if (this.domItem.find("#estampado").children("option:selected").val() != 'NONE') - acabados += ", Estampado " + this.domItem.find("#estampado").children("option:selected").text(); - return acabados; + acabado = 'Acabado: ' + this.acabadoCubierta.getText(); } else { - acabados.plastificado = this.domItem.find("#plastificado ").children("option:selected").val(); - acabados.barniz = this.domItem.find("#barniz").children("option:selected").val(); - acabados.estampado = this.domItem.find("#estampado").children("option:selected").val(); + acabado = this.acabadoCubierta.getVal(); } - return acabados; + return acabado; } catch (e) { return null; } @@ -595,7 +605,7 @@ class DisenioCubierta { sobrecubierta.papel = papel.split(' ')[0] + ' ' + papel.split(' ')[1]; sobrecubierta.gramaje = papel.split(' ')[2]; sobrecubierta.solapas = this.domItem.find("#solapasSobrecubierta").val(); - sobrecubierta.plastificado = 'Plastificado ' + this.domItem.find("#plastificadoSobrecubierta").children("option:selected").text(); + sobrecubierta.acabado = 'Acabado: ' + this.acabadoSobrecubierta.getText(); return sobrecubierta; } else { @@ -604,7 +614,7 @@ class DisenioCubierta { sobrecubierta.papel = papel.split('_')[0]; sobrecubierta.gramaje = papel.split('_')[1]; sobrecubierta.solapas = this.domItem.find("#solapasSobrecubierta").val(); - sobrecubierta.plastificado = this.domItem.find("#plastificadoSobrecubierta").children("option:selected").val(); + sobrecubierta.acabado = this.acabadoSobrecubierta.getVal(); return sobrecubierta; } } diff --git a/httpdocs/assets/js/safekat/pages/presupuestoCliente/presupuestoCliente.js b/httpdocs/assets/js/safekat/pages/presupuestoCliente/presupuestoCliente.js index 32505ce0..662e0fe0 100644 --- a/httpdocs/assets/js/safekat/pages/presupuestoCliente/presupuestoCliente.js +++ b/httpdocs/assets/js/safekat/pages/presupuestoCliente/presupuestoCliente.js @@ -71,6 +71,7 @@ class PresupuestoCliente { this.disenioInterior.init(); this.disenioCubierta.init(); this.direcciones.init(); + if (window.location.href.includes("edit")) { this.resumen.init(window.location.href.split("/").pop()); } @@ -588,17 +589,11 @@ class PresupuestoCliente { if (datos_to_check.posPaginasColor == "" || datos_to_check.posPaginasColor == null) { delete datos_to_check.posPaginasColor; } - if (datos_to_check.cubierta.acabados.barniz == undefined) { - delete datos_to_check.cubierta.acabados.barniz; + if (datos_to_check.cubierta.acabado == 0) { + delete datos_to_check.cubierta.acabado; } - if (datos_to_check.cubierta.acabados.plastificado == undefined) { - delete datos_to_check.cubierta.acabados.plastificado; - } - if (datos_to_check.cubierta.acabados.estampado == undefined) { - delete datos_to_check.cubierta.acabados.estampado; - } - if (datos_to_check.sobrecubierta.plastificado == undefined) { - delete datos_to_check.sobrecubierta.plastificado; + if (datos_to_check.sobrecubierta.acabado == 0) { + delete datos_to_check.sobrecubierta.acabado; } return datos_to_check; @@ -650,7 +645,7 @@ class PresupuestoCliente { papelCubierta: this.disenioCubierta.getPapel(), gramajeCubierta: this.disenioCubierta.getGramaje(), cabezada: this.disenioCubierta.getCabezada(), - acabados: this.disenioCubierta.getAcabados(), + acabado: this.disenioCubierta.getAcabados(), carasImpresion: this.disenioCubierta.carasCubierta.val(), };