diff --git a/ci4/app/Language/es/Presupuestos.php b/ci4/app/Language/es/Presupuestos.php
index 3404b63a..2a55273b 100755
--- a/ci4/app/Language/es/Presupuestos.php
+++ b/ci4/app/Language/es/Presupuestos.php
@@ -385,6 +385,7 @@ return [
'noInterior' => 'No se hay resultados para el interior',
'noCubiertaSobrecubierta' => 'No se hay resultados para cubierta/sobrecubierta',
'errorPresupuesto' => 'Se ha producido un error al calcular el presupuesto. Póngase en contacto con el administrador',
+ 'error_sobrecubierta_sin_solapas' => 'Debe seleccionar "sobrecubierta" en los datos del libro para introducir el ancho de solapa'
],
];
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosLibroItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosLibroItems.php
index f7c401b4..c442c76c 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosLibroItems.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosLibroItems.php
@@ -116,10 +116,9 @@
@@ -301,10 +300,10 @@
- >
- >
self.gramajeSobrecubierta.empty());
this.sobrecubierta.on('change', () => {
- if (this.sobrecubierta.val() == 1) {
+ if (this.sobrecubierta.select2('data')[0].id == 1) {
+ if($('#solapas_sobrecubierta').prop('checked') == false){
+ this.sobrecubierta.val(0);
+ popErrorAlert(window.language.Presupuestos.errores.error_sobrecubierta_sin_solapas, 'divAlarmasComparador')
+ }
$('#solapas_sobrecubierta').prop('checked', true);
$('#div_solapas_ancho_sobrecubierta').removeClass('d-none');
$('#solapas_ancho_sobrecubierta').val(60);
@@ -316,7 +320,6 @@ class Comparador {
if (this.tipo_impresion_id == 1 || this.tipo_impresion_id == 3 || this.tipo_impresion_id == 5 || this.tipo_impresion_id == 7) {
$('.comp_guardas_items').on('change', this.obtenerComparadorGuardas.bind(this));
}
-
}
#changePaginasComparador(element) {
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js
index ed492ffa..a9f56ea5 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js
@@ -89,6 +89,9 @@ class DatosLibro {
this.solapasSobrecubierta.on('change', this.changeSolapasSobrecubierta.bind(this));
this.tamanioPersonalizado.on('change', this.changeTipoTamanio.bind(this));
+ this.anchoSolapasCubierta.on('change', this.changeAnchoSolapasCubierta.bind(this));
+ this.anchoSolapasSobrecubierta.on('change', this.changeAnchoSolapasSobrecubierta.bind(this));
+
this.paginas.on('change', this.changePaginas.bind(this));
this.tirada.on('change', this.changeTirada.bind(this));
}
@@ -211,25 +214,30 @@ class DatosLibro {
setTimeout(() => {
if (this.solapasCubierta.prop('checked')) {
$('#div_solapas_ancho').removeClass('d-none');
- $(document).trigger('add-servicio-lineas', 'solapas');
+ $(document).trigger('add-servicio-lineas', 'solapas_cubierta');
}
else {
$('#div_solapas_ancho').addClass('d-none');
- this.anchoSolapasCubierta.val(60);
- $(document).trigger('remove-servicio-lineas', 'solapas');
+ $(document).trigger('remove-servicio-lineas', 'solapas_cubierta');
+ $(document).trigger('remove-servicio-lineas', 'solapas_grandes_cubierta');
}
}, 100);
// para que se actualice el comparador
$('paginas').trigger('change');
+ }
- $(document).trigger('update-presupuesto', {
- update_lineas : false,
- update_servicios : true,
- update_envios: false,
- update_resumen: false,
- update_tiradas_alternativas: false
- });
+ changeAnchoSolapasCubierta(){
+
+ if(this.checkSolapasGrandes('cubierta')){
+ $(document).trigger('add-servicio-lineas', 'solapas_grandes_cubierta');
+ }
+ else{
+ $(document).trigger('remove-servicio-lineas', 'solapas_grandes_cubierta');
+ }
+
+ // para que se actualice el comparador
+ $('paginas').trigger('change');
}
@@ -237,21 +245,53 @@ class DatosLibro {
if (this.solapasSobrecubierta.prop('checked')) {
this.divSolapasSobrecubierta.removeClass('d-none');
- $(document).trigger('remove-servicio-lineas', 'solapas');
+ $(document).trigger('add-servicio-lineas', 'solapas_sobrecubierta');
}
else {
this.divSolapasSobrecubierta.addClass('d-none');
- this.anchoSolapasSobrecubierta.val(60);
- $(document).trigger('add-servicio-lineas', 'solapas');
+ $(document).trigger('remove-servicio-lineas', 'solapas_sobrecubierta');
+ $(document).trigger('remove-servicio-lineas', 'solapas_grandes_sobrecubierta');
+ if ($('#compSobrecubierta').length) {
+ $('#compSobrecubierta').val(0).trigger('change');
+ }
}
- $(document).trigger('update-presupuesto', {
- update_lineas : false,
- update_servicios : true,
- update_envios: false,
- update_resumen: false,
- update_tiradas_alternativas: false
- });
+ }
+
+ changeAnchoSolapasSobrecubierta(){
+
+ if(this.checkSolapasGrandes('cubierta')){
+ $(document).trigger('add-servicio-lineas', 'solapas_grandes_sobrecubierta');
+ }
+ else{
+ $(document).trigger('remove-servicio-lineas', 'solapas_grandes_sobrecubierta');
+ }
+
+ // para que se actualice el comparador
+ $('paginas').trigger('change');
+
+ }
+
+ checkSolapasGrandes(elemento) {
+
+ const ancho_libro = 2 * this.getDimensionLibro().ancho;
+ let ancho_solapas = 0.0;
+ let lomo = 0.0;
+ if(elemento == 'cubierta'){
+ ancho_solapas = 2 * parseFloat($('solapas_ancho').val());
+ lomo = parseFloat($('lomo_cubierta').val());
+ }
+ else if (elemento == 'sobrecubierta'){
+ ancho_solapas = 2 * parseFloat($('solapas_ancho_sobrecubierta').val());
+ lomo = parseFloat($('lomo_sobrecubierta').val());
+ }
+ else
+ return false;
+
+ if (ancho_libro + ancho_solapas + lomo > 630)
+ return true;
+ else
+ return false
}
changePaginas() {
@@ -393,7 +433,7 @@ class DatosLibro {
if (datos.solapasCubierta) {
this.solapasCubierta.prop('checked', true);
this.anchoSolapasCubierta.val(datos.solapasCubiertaAncho);
- this.divSolapasSobrecubierta.removeClass('d-none');
+ this.divSolapasCubierta.removeClass('d-none');
}
else {
this.solapasCubierta.prop('checked', false);
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/servicios.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/servicios.js
index e4b84818..bdb46ae2 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/servicios.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/servicios.js
@@ -110,9 +110,6 @@ class Servicios {
else if (servicio == 'acabadoSobrecubierta') {
this.serviciosAcabado.updateAcabadosExteriores(0, 1);
}
- else if (servicio == 'solapas') {
- this.ServiciosManipulado.addSolapas();
- }
else if (servicio == 'ferro'){
const id = $('#ferro').attr('service-id');
this.serviciosExtra.getPresupuestoExtra(id);
@@ -139,56 +136,115 @@ class Servicios {
};
this.ServiciosManipulado.getPresupuestoManipulado(id);
}
+ else if (servicio == 'solapas_cubierta'){
+ const id = $('#serv_solapas_cubierta').attr('service-id');
+ this.ServiciosManipulado.getPresupuestoManipulado(id);
+ }
+ else if (servicio == 'solapas_sobrecubierta'){
+ const id = $('#serv_solapas_sobrecubierta').attr('service-id');
+ this.ServiciosManipulado.getPresupuestoManipulado(id);
+ }
+ else if (servicio == 'solapas_grandes_cubierta'){
+ const id = $('#solapas_grandes_cubierta').attr('service-id');
+ this.ServiciosManipulado.getPresupuestoManipulado(id);
+ }
+ else if (servicio == 'solapas_grandes_sobrecubierta'){
+ const id = $('#solapas_grandes_sobrecubierta').attr('service-id');
+ this.ServiciosManipulado.getPresupuestoManipulado(id);
+ }
}
removeServicio(event, servicio) {
- if (servicio == 'solapas') {
- this.ServiciosManipulado.removeSolapas();
- }
- else if (servicio == 'ferro'){
+
+ if (servicio == 'ferro'){
const id = $('#ferro').attr('service-id');
this.serviciosExtra.table.rows().every(function () {
- var data = this.data();
+ let data = this.data();
if (data.tarifa_id == id) {
- this.remove().draw();
+ this.remove();
}
});
+ this.serviciosExtra.table.draw();
}
else if (servicio == 'prototipo'){
const id = $('#prototipo').attr('service-id');
this.serviciosExtra.table.rows().every(function () {
var data = this.data();
if (data.tarifa_id == id) {
- this.remove().draw();
+ this.remove();
}
});
+ this.serviciosExtra.table.draw();
}
else if (servicio == 'retractilado'){
const id = $('#retractilado').attr('service-id');
this.serviciosAcabado.table.rows().every(function () {
- var data = this.data();
+ let data = this.data();
if (data.tarifa_id == id) {
- this.remove().draw();
+ this.remove();
}
});
+ this.serviciosAcabado.table.draw();
}
else if (servicio == 'retractilado5'){
const id = $('#retractilado5').attr('service-id');
this.serviciosAcabado.table.rows().every(function () {
- var data = this.data();
+ let data = this.data();
if (data.tarifa_id == id) {
this.remove().draw();
}
});
+ this.serviciosAcabado.table.draw();
}
else if(servicio == 'plegado_guardas'){
const id = $('#plegado_guardas').attr('service-id');
this.ServiciosManipulado.table.rows().every(function () {
var data = this.data();
- if (data.tarifa_id == id) {
- this.remove().draw();
+ if (data && data.tarifa_id == id) {
+ this.remove();
}
});
+ this.ServiciosManipulado.table.draw();
+ }
+ else if (servicio == 'solapas_cubierta'){
+ const id = $('#serv_solapas_cubierta').attr('service-id');
+ this.ServiciosManipulado.table.rows().every(function () {
+ let data = this.data();
+ if (data && parseInt(data.tarifa_id) == id) {
+ this.remove();
+ }
+ });
+ this.ServiciosManipulado.table.draw();
+ }
+ else if (servicio == 'solapas_sobrecubierta'){
+ const id = $('#serv_solapas_sobrecubierta').attr('service-id');
+ this.ServiciosManipulado.table.rows().every(function () {
+ let data = this.data();
+ if (data && data.tarifa_id == id) {
+ this.remove();
+ }
+ });
+ this.ServiciosManipulado.table.draw();
+ }
+ else if (servicio == 'solapas_grandes_cubierta'){
+ const id = $('#solapas_grandes_cubierta').attr('service-id');
+ this.ServiciosManipulado.table.rows().every(function () {
+ let data = this.data();
+ if (data && data.tarifa_id == id) {
+ this.remove();
+ }
+ });
+ this.ServiciosManipulado.table.draw();
+ }
+ else if (servicio == 'solapas_grandes_sobrecubierta'){
+ const id = $('#solapas_grandes_sobrecubierta').attr('service-id');
+ this.ServiciosManipulado.table.rows().every(function () {
+ var data = this.data();
+ if (data && data.tarifa_id == id) {
+ this.remove();
+ }
+ });
+ this.ServiciosManipulado.table.draw();
}
}
@@ -1318,53 +1374,7 @@ class ServiciosManipulado {
showBreadCrumbSaveButton(true);
}
- addSolapas() {
-
- const self = this;
- new Ajax('/serviciosmanipulados/serviciosolapas', {}, {},
- function (response) {
- if (response.service) {
-
- const tarifa_id = response.service;
- var rows = self.table.rows().data().toArray();
- var found = rows.some(row => row.tarifa_id === tarifa_id);
-
- if (!found)
- self.getPresupuestoManipulado(tarifa_id);
-
- }
- },
- function (error) {
- console.error(error);
- }
- ).get();
- }
-
- removeSolapas() {
-
- const self = this;
-
- new Ajax('/serviciosmanipulados/serviciosolapas', {}, {},
- function (response) {
- if (response.service) {
-
- const tarifa_id = response.service;
- var rows = self.table.rows().data().toArray();
- for (let i = 0; i < rows.length; i++) {
- if (rows[i]['tarifa_id'] == tarifa_id) {
- self.table.row(i).remove().draw();
- break;
- }
- }
-
- }
- },
- function (error) {
- console.error(error);
- }
- ).get();
- }
-
+
updateServicios() {
const self = this;
@@ -1380,7 +1390,6 @@ class ServiciosManipulado {
if (tarifa_ids.length > 0) {
const data = {
datos: tarifa_ids,
- solapas: $('#solapas').is(':checked') ? 1 : 0,
tirada: tirada
};
new Ajax('/serviciosmanipulados/update/' + id, data, {},