guardado faja datos libro

This commit is contained in:
2025-02-01 10:43:49 +01:00
parent 31f7f92448
commit a75ef4eae6
10 changed files with 96 additions and 39 deletions

View File

@ -34,6 +34,7 @@ class PresupuestoAdminEdit {
{
checkPaginasPresupuesto: this.checkPaginasPresupuesto,
getDimensionLibro: this.getDimensionLibro,
calcularSolapas: this.calcularSolapas.bind(this)
});
this.comparador = new Comparador(this.domItem.find('#accordionDatosPresupuestoClienteTip'),
{
@ -198,15 +199,15 @@ class PresupuestoAdminEdit {
...datos, ...{
paginas: this.datosLibro.paginas.val(),
tirada: this.datosLibro.tirada.val(),
papel_formato_id: this.datosLibro.tamanio.item.hasClass('d-none') ? 0 : this.datosLibro.tamanio.getVal(),
papel_formato_personalizado: this.datosLibro.tamanio.item.hasClass('d-none') ? 1 : 0,
papel_formato_id: this.datosLibro.tamanioPersonalizado.prop('checked') ? 0 : this.datosLibro.tamanio.getVal(),
papel_formato_personalizado: this.datosLibro.tamanioPersonalizado.prop('checked') ? 1 : 0,
merma: this.datosLibro.merma.val(),
merma_cubierta: this.datosLibro.mermaCubierta.val()
}
}
if (datos.papel_formato_personalizado) {
if (this.datosLibro.tamanioPersonalizado.prop('checked')) {
datos.papel_formato_ancho = this.datosLibro.anchoPersonalizado.val(),
datos.papel_formato_alto = this.datosLibro.altoPersonalizado.val()
datos.papel_formato_alto = this.datosLibro.altoPersonalizado.val()
}
datos.selectedTirada = this.datosLibro.tirada.val();
datos.acabado_cubierta_id = this.datosLibro.acabadoCubierta.getVal();
@ -244,6 +245,10 @@ class PresupuestoAdminEdit {
datos.solapas_sobrecubierta = this.datosLibro.solapasSobrecubierta.is(':checked') ? 1 : 0;
datos.solapas_ancho_sobrecubierta = this.datosLibro.anchoSolapasSobrecubierta.val();
datos.faja_color = this.datosLibro.faja.prop('checked') ? 1: 0;
datos.solapas_ancho_faja_color = this.datosLibro.fajaSolapasAncho.val();
datos.alto_faja_color = this.datosLibro.fajaAlto.val();
datos.entrega_taller = this.envios.recogerTaller.is(':checked') ? 1 : 0;
if (parseInt(this.cosido.val())) {
@ -377,6 +382,11 @@ class PresupuestoAdminEdit {
}, 0);
this.calcularSolapas();
if ($('#faja_alto').length > 0 && $('#faja_alto').attr('max') != this.getDimensionLibro().alto) {
$('#faja_alto').attr('max', this.getDimensionLibro().alto);
$('#faja_alto').trigger('change');
$('#faja_alto').closest('.mb-1').find('.form-text').text('Entre 50 y ' + this.getDimensionLibro().alto + ' mm');
}
// Funciones para detectar cambios en el formulario
this.#checkChangesPresupuesto();
@ -470,10 +480,10 @@ class PresupuestoAdminEdit {
$('#solapas_ancho_sobrecubierta').trigger('change');
$('#solapas_ancho_sobrecubierta').closest('.mb-1').find('.form-text').text('Entre 60 y ' + maxSolapas + ' mm');
}
if ($('#solapas_ancho_faja').length > 0 && $('#solapas_ancho_faja').attr('max') != maxSolapas) {
$('#solapas_ancho_faja').attr('max', maxSolapas);
$('#solapas_ancho_faja').trigger('change');
$('#solapas_ancho_faja').closest('.mb-1').find('.form-text').text('Entre 60 y ' + maxSolapas + ' mm');
if ($('#faja_solapas_ancho').length > 0 && $('#faja_solapas_ancho').attr('max') != maxSolapas) {
$('#faja_solapas_ancho').attr('max', maxSolapas);
$('#faja_solapas_ancho').trigger('change');
$('#faja_solapas_ancho').closest('.mb-1').find('.form-text').text('Entre 60 y ' + maxSolapas + ' mm');
}
}

View File

@ -9,6 +9,7 @@ class DatosLibro {
this.checkPaginasPresupuesto = functions.checkPaginasPresupuesto;
this.getDimensionLibro = functions.getDimensionLibro;
this.calcularSolapas = functions.calcularSolapas;
this.csrf_token = getToken();
this.csrf_hash = $('#mainContainer').find('input[name="' + this.csrf_token + '"]').val();
@ -101,8 +102,10 @@ class DatosLibro {
this.paginas.on('change', this.changePaginas.bind(this));
this.tirada.on('change', this.changeTirada.bind(this));
this.anchoSolapasCubierta.on('focusout', this.checkSolapaAncho.bind(this));
this.anchoSolapasSobrecubierta.on('focusout', this.checkSolapaAncho.bind(this));
this.anchoSolapasCubierta.on('focusout', this.checkMinMaxInput.bind(this));
this.anchoSolapasSobrecubierta.on('focusout', this.checkMinMaxInput.bind(this));
this.fajaSolapasAncho.on('focusout', this.checkMinMaxInput.bind(this));
this.fajaAlto.on('focusout', this.checkMinMaxInput.bind(this));
this.faja.on('change', this.changeFaja.bind(this));
}
@ -120,7 +123,7 @@ class DatosLibro {
}
}
checkSolapaAncho(event) {
checkMinMaxInput(event) {
const el = event.target;
if (el.value != "") {
@ -200,6 +203,13 @@ class DatosLibro {
this.checkPaginasPresupuesto();
this.calcularSolapas();
if ($('#faja_alto').length > 0 && $('#faja_alto').attr('max') != this.getDimensionLibro().alto) {
$('#faja_alto').attr('max', this.getDimensionLibro().alto);
$('#faja_alto').trigger('change');
$('#faja_alto').closest('.mb-1').find('.form-text').text('Entre 50 y ' + this.getDimensionLibro().alto + ' mm');
}
$(document).trigger('update-presupuesto', {
update_lineas: true,
update_servicios: true,
@ -500,6 +510,13 @@ class DatosLibro {
$('#div_solapas_ancho_sobrecubierta').addClass('d-none');
}
this.faja.prop('checked', datos.fajaColor);
if(datos.fajaColor){
this.div_faja.removeClass('d-none');
this.fajaAlto.val(datos.fajaColorAlto).trigger('change');
this.fajaSolapasAncho.val(datos.fajaColorSolapasAncho).trigger('change');
}
this.acabadoCubierta.setOption(datos.acabadoCubierta.id, datos.acabadoCubierta.text);

View File

@ -862,6 +862,25 @@ class LineasPresupuesto {
this.#addEventosLineas('lp_sobrecubierta', false);
break
case 'lp_faja':
var hayLinea = false
for (let number = 0; number < dataRows.length; number++) {
if (dataRows[number].row_id == 'lp_faja') {
hayLinea = true;
continue;
}
}
if (hayLinea) {
popErrorAlert(window.language.Presupuestos.errores.lineaDuplicada, 'divAlarmasLineasPresupuesto');
break;
}
var data = this.#processRowData({ tipo_maquina: 'toner' }, 'lp_faja', 'lp-faja');
this.table.row.add(data).draw();
this.#addEventosLineas('lp_faja', false);
break
case 'lp_guardas':
var hayLinea = false
for (let number = 0; number < dataRows.length; number++) {
@ -1408,15 +1427,15 @@ class LineasPresupuesto {
if (linea == 'lp_faja') {
if (Object.keys(input_data).length == 0) {
let altoSelected = parseInt($('#' + linea + '_altoFaja').val());
if(altoSelected == 0 || isNaN(altoSelected) || altoSelected == '' || altoSelected < 50){
if (altoSelected == 0 || isNaN(altoSelected) || altoSelected == '' || altoSelected < 50) {
altoSelected = 50;
}
else if(altoSelected > dimension.alto){
else if (altoSelected > dimension.alto) {
altoSelected = dimension.alto;
}
dimension.alto = altoSelected;
}
else{
else {
dimension.alto = parseInt($('#faja_alto').val());
}
}
@ -1644,7 +1663,7 @@ class LineasPresupuesto {
}
let datosLinea = currentRow.data();
if(linea == 'lp_faja') {
if (linea == 'lp_faja') {
datosLinea.alto_faja = row.alto_faja;
}
@ -1701,6 +1720,7 @@ class LineasPresupuesto {
case 'lp_guardas':
case 'lp_cubierta':
case 'lp_sobrecubierta':
case 'lp_faja':
tipo = 'colorhq';
break
default:
@ -1813,7 +1833,7 @@ class LineasPresupuesto {
$('#' + tipoLinea + '_aFavorFibra').on("change", () => { this.change_aFavorFibra(tipoLinea); });
}
if(tipoLinea == 'lp_faja') {
if (tipoLinea == 'lp_faja') {
$('#' + tipoLinea + '_altoFaja').on("change", function (event) {
self.obtenerLinea(tipoLinea, false, false, {}, event); // Pasamos explícitamente 'tipoLinea'
}.bind(this));

View File

@ -311,29 +311,29 @@ class Resumen {
getData(){
let data = {
'total_coste_papel': $('#totalCostePapel').attr('val').replace('€', ''),
'total_margen_papel': $('#margenPapel').attr('val').replace('€', ''),
'total_coste_papel': $('#totalCostePapel').text().replace('€', ''),
'total_margen_papel': $('#margenPapel').text().replace('€', ''),
'total_margenPercent_papel': $('#porcentajeMargenPapel').text().replace('%', ''),
'total_coste_impresion': $('#totalCosteImpresion').attr('val').replace('€', ''),
'total_margen_impresion': $('#margenImpresion').attr('val').replace('€', ''),
'total_coste_impresion': $('#totalCosteImpresion').text().replace('€', ''),
'total_margen_impresion': $('#margenImpresion').text().replace('€', ''),
'total_margenPercent_impresion': $('#porcentajeMargenImpresion').text().replace('%', ''),
'total_coste_servicios': $('#totalServicios').attr('val').replace('€', ''),
'total_margen_servicios': $('#margenServicios').attr('val').replace('€', ''),
'total_coste_servicios': $('#totalServicios').text().replace('€', ''),
'total_margen_servicios': $('#margenServicios').text().replace('€', ''),
'total_margenPercent_servicios': $('#porcentajeMargenServicios').text().replace('%', ''),
'total_coste_envios': $('#totalEnvios').attr('val').replace('€', ''),
'total_margen_envios': $('#margenEnvios').attr('val').replace('€', ''),
'total_coste_envios': $('#totalEnvios').text().replace('€', ''),
'total_margen_envios': $('#margenEnvios').text().replace('€', ''),
'total_costes': $('#totalCostes').attr('val').replace('€', ''),
'total_margenes': $('#totalMargenes').attr('val').replace('€', ''),
'total_costes': $('#totalCostes').text().replace('€', ''),
'total_margenes': $('#totalMargenes').text().replace('€', ''),
'total_antes_descuento': $('#totalAntesDescuento').attr('val').replace('€', ''),
'total_descuento': $('#descuentoTotal').attr('val').replace('€', ''),
'total_antes_descuento': $('#totalAntesDescuento').text().replace('€', ''),
'total_descuento': $('#descuentoTotal').text().replace('€', ''),
'total_descuentoPercent': $('#total_descuentoPercent').val().replace('€', ''),
'total_presupuesto': $('#totalDespuesDecuento').attr('val').replace('€', ''),
'total_precio_unidad': $('#precioUnidadPresupuesto').attr('val').replace('€', ''),
'total_presupuesto': $('#totalDespuesDecuento').text().replace('€', ''),
'total_precio_unidad': $('#precioUnidadPresupuesto').text().replace('€', ''),
'total_factor': $('#factor').text().replace(/,/g, '.'),
'total_factor_ponderado': $('#factor_ponderado').text().replace(/,/g, '.'),
@ -341,7 +341,7 @@ class Resumen {
if($('#confirmar_presupuesto').prop('checked')){
data.confirmar = '1';
data.total_aceptado = $('#totalDespuesDecuento').attr('val').replace('€', '');
data.total_aceptado = $('#totalDespuesDecuento').text().replace('€', '');
}
return data;