mirror of
https://git.imnavajas.es/jjimenez/safekat.git
synced 2025-07-25 22:52:08 +00:00
Merge branch 'main' into 'mod/presupuesto_admin'
Main See merge request jjimenez/safekat!453
This commit is contained in:
@ -330,17 +330,19 @@ class DatosGenerales {
|
||||
|
||||
divTipoLibro.find('.fv-plugins-message-container').remove();
|
||||
if ($('.tipo-libro.selected').length > 0) {
|
||||
if ($('#cosido').hasClass('selected')) {
|
||||
if ($('#cosido').hasClass('selected') || $('#grapado').hasClass('selected')) {
|
||||
const value = parseInt($("#paginas").val());
|
||||
if (value % 4 != 0) {
|
||||
divTipoLibro.append(`
|
||||
<div class="fv-plugins-message-container invalid-feedback">
|
||||
<div data-field="div_tipo_libro" data-validator="callback" style="margin-top: 50px;">
|
||||
${window.translations["validation"].paginas_cosido}
|
||||
${window.translations["validation"].paginas_multiplo_4}
|
||||
</div>
|
||||
</div>
|
||||
`);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
return true;
|
||||
@ -353,8 +355,9 @@ class DatosGenerales {
|
||||
</div>
|
||||
</div>
|
||||
`);
|
||||
return false;
|
||||
}
|
||||
return false;
|
||||
|
||||
},
|
||||
}
|
||||
}
|
||||
@ -583,6 +586,10 @@ class DatosGenerales {
|
||||
this.tiposLibro.removeClass('selected');
|
||||
this.tiposLibro.find('.image-presupuesto').removeClass('selected');
|
||||
this.domItem.find('#' + datos.tipo).addClass('selected');
|
||||
|
||||
if(datos.tipo == 'cosido'){
|
||||
this.divPaginasCuaderillo.removeClass('d-none');
|
||||
}
|
||||
}
|
||||
|
||||
this.prototipo.prop('checked', datos.prototipo);
|
||||
@ -726,6 +733,8 @@ class DatosGenerales {
|
||||
}
|
||||
}
|
||||
|
||||
this.checkPaginasMultiplo4();
|
||||
|
||||
// Para recalcular el presupuesto
|
||||
$('#divGramajeInterior').empty();
|
||||
$('#divGramajeInteriorColor').empty();
|
||||
@ -789,6 +798,29 @@ class DatosGenerales {
|
||||
this.divPaginasColorConsecutivas.removeClass('d-none');
|
||||
this.divPosPaginasColor.removeClass('d-none');
|
||||
}
|
||||
|
||||
this.checkPaginasMultiplo4();
|
||||
}
|
||||
|
||||
checkPaginasMultiplo4(){
|
||||
|
||||
const divTipoLibro = $('#divTipoLibro'); // Selecciona el div
|
||||
divTipoLibro.find('.fv-plugins-message-container').remove();
|
||||
|
||||
if ($('#cosido').hasClass('selected') || $('#grapado').hasClass('selected')) {
|
||||
const value = parseInt($("#paginas").val());
|
||||
if (value % 4 != 0) {
|
||||
divTipoLibro.append(`
|
||||
<div class="fv-plugins-message-container invalid-feedback">
|
||||
<div data-field="div_tipo_libro" data-validator="callback" style="margin-top: 50px;">
|
||||
${window.translations["validation"].paginas_multiplo_4}
|
||||
</div>
|
||||
</div>
|
||||
`);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -30,6 +30,8 @@ class Direcciones {
|
||||
|
||||
this.direcciones = [];
|
||||
|
||||
this.tiradaSeleccionada = null;
|
||||
|
||||
this.direcciones.calcularPresupuesto = false;
|
||||
|
||||
this.initValidation();
|
||||
@ -42,14 +44,14 @@ class Direcciones {
|
||||
$("#clienteId").on('change', this.handleChangeCliente.bind(this));
|
||||
|
||||
this.recogidaTaller.on('change', () => {
|
||||
|
||||
|
||||
if (this.recogidaTaller.is(':checked')) {
|
||||
|
||||
this.divDirecciones.empty();
|
||||
this.direcciones = [];
|
||||
$('.div-direcciones').addClass('d-none');
|
||||
}
|
||||
else{
|
||||
else {
|
||||
$('.div-direcciones').removeClass('d-none');
|
||||
}
|
||||
});
|
||||
@ -88,6 +90,7 @@ class Direcciones {
|
||||
|
||||
if (datos.entrega_taller == 1) {
|
||||
this.recogidaTaller.prop('checked', true);
|
||||
this.recogidaTaller.trigger('change');
|
||||
}
|
||||
else {
|
||||
|
||||
@ -103,13 +106,7 @@ class Direcciones {
|
||||
let id = datos[i].id;
|
||||
let unidades = datos[i].unidades;
|
||||
let entregaPalets = datos[i].palets;
|
||||
let divId = "dirEnvio-1";
|
||||
let direccionesActuales = this.divDirecciones.find('.direccion-cliente');
|
||||
if (direccionesActuales.length > 0) {
|
||||
// the the lass item
|
||||
let last = direccionesActuales[direccionesActuales.length - 1];
|
||||
divId = "dirEnvio-" + (parseInt(last.id.split('-')[1]) + 1);
|
||||
}
|
||||
|
||||
|
||||
if (id == null || id <= 0 || id == undefined)
|
||||
return;
|
||||
@ -118,6 +115,13 @@ class Direcciones {
|
||||
|
||||
let peticion = new Ajax('/misdirecciones/getDireccionPresupuesto/' + id, {}, {},
|
||||
(response) => {
|
||||
let divId = "dirEnvio-1";
|
||||
let direccionesActuales = this.divDirecciones.find('.direccion-cliente');
|
||||
if (direccionesActuales.length > 0) {
|
||||
// the the lass item
|
||||
let last = direccionesActuales[direccionesActuales.length - 1];
|
||||
divId = "dirEnvio-" + (parseInt(last.id.split('-')[1]) + 1);
|
||||
}
|
||||
let tarjeta = new tarjetaDireccion(this.divDirecciones, divId, response.data[0]);
|
||||
tarjeta.setUnidades(unidades);
|
||||
tarjeta.setEntregaPalets(entregaPalets);
|
||||
@ -214,7 +218,7 @@ class Direcciones {
|
||||
let customOption = tarjeta.card.find('.check-tirada-envio');
|
||||
|
||||
customOption.on('click', function () {
|
||||
self.#handleTiradaEnvio(customOption);
|
||||
self.#handleTiradaEnvio(customOption, self);
|
||||
});
|
||||
}
|
||||
|
||||
@ -255,7 +259,7 @@ class Direcciones {
|
||||
dialog.init();
|
||||
}
|
||||
|
||||
#handleTiradaEnvio(customOption) {
|
||||
#handleTiradaEnvio(customOption, self) {
|
||||
|
||||
const el = customOption[0];
|
||||
|
||||
@ -268,6 +272,7 @@ class Direcciones {
|
||||
})
|
||||
}
|
||||
el.closest('.custom-option').classList.add('checked')
|
||||
self.tiradaSeleccionada = parseInt(el.getAttribute('tirada'));
|
||||
} else {
|
||||
el.closest('.custom-option').classList.remove('checked')
|
||||
}
|
||||
|
||||
@ -211,11 +211,19 @@ class PresupuestoCliente {
|
||||
let datos_to_check = this.#prepareData();
|
||||
|
||||
if (Object.values(datos_to_check).every(this.#isValidDataForm)) {
|
||||
|
||||
try {
|
||||
if (!this.datosGenerales.checkPaginasMultiplo4()) {
|
||||
popErrorAlert("Compruebe que todos los campos son correctos.");
|
||||
return;
|
||||
}
|
||||
|
||||
setTimeout(function () {
|
||||
$('#loader').modal('show');
|
||||
}, 0);
|
||||
|
||||
|
||||
|
||||
// Si se está ejecutando la petición, abortar la petición anterior
|
||||
this.ajax_calcular.abort();
|
||||
|
||||
@ -453,6 +461,12 @@ class PresupuestoCliente {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.datosGenerales.checkPaginasMultiplo4()) {
|
||||
popErrorAlert("Compruebe que todos los campos son correctos.");
|
||||
$('#loader').modal('hide');
|
||||
return;
|
||||
}
|
||||
|
||||
this.#getDatos(true);
|
||||
|
||||
if (confirmar) {
|
||||
@ -536,10 +550,11 @@ class PresupuestoCliente {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
this.lc.val(parseFloat(response.info.lomo_cubierta).toFixed(2));
|
||||
this.lsc.val(parseFloat(response.info.lomo_sobrecubierta).toFixed(2));
|
||||
setTimeout(() => {
|
||||
$(`#containerTiradasEnvios .tirada-envio input[tirada="${response.tiradas[0]}"]`).trigger('click');
|
||||
$(`#containerTiradasEnvios .tirada-envio input[tirada="${this.direcciones.tiradaSeleccionada}"]`).trigger('click');
|
||||
}, 0);
|
||||
}
|
||||
$('#loader').modal('hide');
|
||||
|
||||
@ -301,10 +301,8 @@ class Resumen {
|
||||
return parseInt($(this).find('.tarjeta-tiradas-precios-tirada').attr('data')) == unidades;
|
||||
});
|
||||
|
||||
|
||||
let precio_u_text = tarjetaPrecio.find('.tarjeta-tiradas-precios-precio-unidad').text();
|
||||
precio_u_text = precio_u_text.replace('€/u', '');
|
||||
precio_u_text = this.#changeDecimalFormat(precio_u_text);
|
||||
precio_u_text = precio_u_text.replace('€/ud', '');
|
||||
|
||||
const base = tarjetaPrecio.find('.tarjeta-tiradas-precios-precio').attr('data');
|
||||
let base_text = this.#changeDecimalFormat(base);
|
||||
|
||||
Reference in New Issue
Block a user