diff --git a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
index b5e98455..a2d6acb0 100644
--- a/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
+++ b/ci4/app/Controllers/Presupuestos/Presupuestoadmin.php
@@ -478,6 +478,10 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$data['datosLibro']['solapasSobrecubierta'] = $presupuesto->solapas_sobrecubierta;
$data['datosLibro']['solapasCubiertaAncho'] = $presupuesto->solapas_ancho;
$data['datosLibro']['solapasSobrecubiertaAncho'] = $presupuesto->solapas_ancho_sobrecubierta;
+ $data['datosLibro']['fajaColor'] = $presupuesto->faja_color;
+ $data['datosLibro']['fajaColorSolapasAncho'] = $presupuesto->solapas_ancho_faja_color;
+ $data['datosLibro']['fajaColorAlto'] = $presupuesto->alto_faja_color;
+
$modelAcabado = model("App\Models\Tarifas\Acabados\TarifaAcabadoModel");
$data['datosLibro']['acabadoCubierta']['id'] = $presupuesto->acabado_cubierta_id;
if ($presupuesto->acabado_cubierta_id == 0) {
@@ -497,8 +501,7 @@ class Presupuestoadmin extends \App\Controllers\BaseResourceController
$data['datosLibro']['marcapaginas'] = $presupuesto->marcapaginas;
$data['datosLibro']['retractilado'] = $presupuesto->retractilado;
$data['datosLibro']['retractilado5'] = $presupuesto->retractilado5;
- $data['datosLibro']['fajaColor'] = $presupuesto->faja_color;
-
+
$data['comparador']['tipo_impresion'] = $presupuesto->comp_tipo_impresion;
$data['comparador']['json_data'] = json_decode($presupuesto->comparador_json_data, true);
if ($data['comparador']['json_data'] != null) {
diff --git a/ci4/app/Entities/Presupuestos/PresupuestoEntity.php b/ci4/app/Entities/Presupuestos/PresupuestoEntity.php
index 7d736a94..92eca96c 100755
--- a/ci4/app/Entities/Presupuestos/PresupuestoEntity.php
+++ b/ci4/app/Entities/Presupuestos/PresupuestoEntity.php
@@ -31,7 +31,6 @@ class PresupuestoEntity extends \CodeIgniter\Entity\Entity
"retractilado" => false,
"retractilado5" => false,
"guardas" => false,
- "faja_color" => false,
"recoger_en_taller" => false,
"ferro" => false,
"ferro_digital" => false,
@@ -53,6 +52,9 @@ class PresupuestoEntity extends \CodeIgniter\Entity\Entity
"solapas_ancho" => 0.0,
"solapas_sobrecubierta" => false,
"solapas_ancho_sobrecubierta" => 0.0,
+ "faja_color" => false,
+ "solapas_ancho_faja_color" => 0.0,
+ "alto_faja_color" => 0.0,
"cosido" => false,
"sobrecubiertas" => false,
"sobrecubiertas_ancho" => 0.0,
@@ -121,7 +123,6 @@ class PresupuestoEntity extends \CodeIgniter\Entity\Entity
"retractilado" => "boolean",
"retractilado5" => "boolean",
"guardas" => "boolean",
- "faja_color" => "boolean",
"recoger_en_taller" => "boolean",
"ferro" => "boolean",
"ferro_digital" => "boolean",
@@ -137,6 +138,9 @@ class PresupuestoEntity extends \CodeIgniter\Entity\Entity
"solapas_ancho" => "float",
"solapas_sobrecubierta" => "boolean",
"solapas_ancho_sobrecubierta" => "float",
+ "faja_color" => "boolean",
+ "solapas_ancho_faja_color" => "float",
+ "alto_faja_color" => "float",
"cosido" => "boolean",
"sobrecubiertas" => "boolean",
"sobrecubiertas_ancho" => "float",
diff --git a/ci4/app/Models/Presupuestos/PresupuestoModel.php b/ci4/app/Models/Presupuestos/PresupuestoModel.php
index 4a80cd50..f515e833 100755
--- a/ci4/app/Models/Presupuestos/PresupuestoModel.php
+++ b/ci4/app/Models/Presupuestos/PresupuestoModel.php
@@ -54,7 +54,6 @@ class PresupuestoModel extends \App\Models\BaseModel
"retractilado",
"retractilado5",
"guardas",
- "faja_color",
"recoger_en_taller",
"ferro",
"ferro_digital",
@@ -76,6 +75,9 @@ class PresupuestoModel extends \App\Models\BaseModel
"solapas_ancho",
"solapas_sobrecubierta",
"solapas_ancho_sobrecubierta",
+ "solapas_ancho_faja_color",
+ "faja_color",
+ "alto_faja_color",
"cosido",
"sobrecubiertas",
"sobrecubiertas_ancho",
diff --git a/ci4/app/Services/PresupuestoService.php b/ci4/app/Services/PresupuestoService.php
index 255b2cad..b508d9f2 100755
--- a/ci4/app/Services/PresupuestoService.php
+++ b/ci4/app/Services/PresupuestoService.php
@@ -945,7 +945,7 @@ class PresupuestoService extends BaseService
$alto_total += (7 + 2 * self::SANGRE_FORMAS);
}
// Tapa dura (espiral y wire-0)
- if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7) {
+ else if ($tipo_impresion_id == 5 || $tipo_impresion_id == 7) {
// Sólo se le añade los 20mm de sangre por cada lado
$alto_total += (2 * self::SANGRE_FORMAS_CUBIERTA);
}
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 c8172bbe..8a479ee5 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosLibroItems.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_datosLibroItems.php
@@ -182,7 +182,7 @@
= lang('Presupuestos.altoFaja') ?>*
+ step="1" class="form-control" min="50" value="50">
Entre 50 y 120 mm
@@ -194,7 +194,7 @@
= lang('Presupuestos.tamanioSolapasFaja') ?>*
+ maxLength="8" step="1" min="60" class="form-control" value="60">
Entre 60 y 120 mm
diff --git a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php
index cda116b4..22da692e 100644
--- a/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php
+++ b/ci4/app/Views/themes/vuexy/form/presupuestos/admin/_lineasPresupuestoItems.php
@@ -60,6 +60,7 @@
+
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
index 35ec8dab..57f1d357 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/presupuestoAdminEdit.js
@@ -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');
}
}
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js
index e34d08fe..183556d9 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/datosLibro.js
@@ -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);
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js
index 167d85b9..09fb7842 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/lineasPresupuesto.js
@@ -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));
diff --git a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
index b76dc98e..b62fcbd8 100644
--- a/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
+++ b/httpdocs/assets/js/safekat/pages/presupuestoAdmin/sections/resumen.js
@@ -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;