From e4c1692ef05403b20a28e7c81608ac923aaee770 Mon Sep 17 00:00:00 2001 From: jjimenez Date: Tue, 24 Feb 2026 14:50:27 +0100 Subject: [PATCH] =?UTF-8?q?a=C3=B1adido=20lomo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/presupuesto/dto/Presupuesto.java | 11 +++++++++++ .../service/PresupuestoFormDataMapper.java | 2 ++ .../0027-add-lomo-to-presupuesto.yml | 18 ++++++++++++++++++ src/main/resources/db/changelog/master.yml | 2 ++ .../imprimelibros/presupuestador/wizard.js | 6 +++++- 5 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 src/main/resources/db/changelog/changesets/0027-add-lomo-to-presupuesto.yml diff --git a/src/main/java/com/imprimelibros/erp/presupuesto/dto/Presupuesto.java b/src/main/java/com/imprimelibros/erp/presupuesto/dto/Presupuesto.java index b8408cf..d236332 100644 --- a/src/main/java/com/imprimelibros/erp/presupuesto/dto/Presupuesto.java +++ b/src/main/java/com/imprimelibros/erp/presupuesto/dto/Presupuesto.java @@ -281,6 +281,9 @@ public class Presupuesto extends AbstractAuditedEntity implements Cloneable { @Column(name = "papel_interior_id") private Integer papelInteriorId; + @Column(name = "lomo") + private Double lomo; + @NotNull(message = "{presupuesto.errores.gramaje-interior}", groups = PresupuestoValidationGroups.Interior.class) @Column(name = "gramaje_interior") private Integer gramajeInterior; @@ -720,6 +723,14 @@ public class Presupuesto extends AbstractAuditedEntity implements Cloneable { this.papelInteriorId = papelInteriorId; } + public Double getLomo() { + return lomo; + } + + public void setLomo(Double lomo) { + this.lomo = lomo; + } + public Integer getGramajeInterior() { return gramajeInterior; } diff --git a/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoFormDataMapper.java b/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoFormDataMapper.java index 529980b..a2abfc9 100644 --- a/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoFormDataMapper.java +++ b/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoFormDataMapper.java @@ -20,6 +20,7 @@ public class PresupuestoFormDataMapper { public Cubierta cubierta = new Cubierta(); public Servicios servicios = new Servicios(); public Integer selectedTirada; + public Double lomo; // ===== Datos Generales ===== public static class DatosGenerales { @@ -193,6 +194,7 @@ public class PresupuestoFormDataMapper { // ===== Selected tirada vm.selectedTirada = p.getSelectedTirada(); + vm.lomo = p.getLomo(); // ===== Servicios desde JSONs vm.servicios.servicios = parse(p.getServiciosJson(), diff --git a/src/main/resources/db/changelog/changesets/0027-add-lomo-to-presupuesto.yml b/src/main/resources/db/changelog/changesets/0027-add-lomo-to-presupuesto.yml new file mode 100644 index 0000000..903dbca --- /dev/null +++ b/src/main/resources/db/changelog/changesets/0027-add-lomo-to-presupuesto.yml @@ -0,0 +1,18 @@ +databaseChangeLog: + - changeSet: + id: 0027-add-lomo-to-presupuesto + author: jjo + changes: + - addColumn: + tableName: presupuesto + columns: + - column: + name: lomo + type: DECIMAL(12, 2) + defaultValueNumeric: 0 + afterColumn: papel_interior_id + + rollback: + - dropColumn: + tableName: presupuesto + columnName: lomo diff --git a/src/main/resources/db/changelog/master.yml b/src/main/resources/db/changelog/master.yml index 975bb53..0d20e29 100644 --- a/src/main/resources/db/changelog/master.yml +++ b/src/main/resources/db/changelog/master.yml @@ -51,3 +51,5 @@ databaseChangeLog: file: db/changelog/changesets/0025-create-facturas-direcciones.yml - include: file: db/changelog/changesets/0026-drop-entrega-tipo-from-presupuesto.yml + - include: + file: db/changelog/changesets/0027-add-lomo-to-presupuesto.yml diff --git a/src/main/resources/static/assets/js/pages/imprimelibros/presupuestador/wizard.js b/src/main/resources/static/assets/js/pages/imprimelibros/presupuestador/wizard.js index 7aac975..2584bd7 100644 --- a/src/main/resources/static/assets/js/pages/imprimelibros/presupuestador/wizard.js +++ b/src/main/resources/static/assets/js/pages/imprimelibros/presupuestador/wizard.js @@ -107,6 +107,7 @@ export default class PresupuestoWizard { } }, selectedTirada: 10, + lomo: 0 } // pestaƱa datos generales @@ -443,7 +444,8 @@ export default class PresupuestoWizard { ...this.#getDatosGeneralesData(), ...this.#getInteriorData(), ...this.#getCubiertaData(), - selectedTirada: this.formData.selectedTirada + selectedTirada: this.formData.selectedTirada, + lomo: this.formData.lomo }; const sobrecubierta = data.sobrecubierta; @@ -965,6 +967,7 @@ export default class PresupuestoWizard { } else { const maxSolapas = data.solapas ?? 120; const lomo = data.lomo ?? 0; + $('.solapas-presupuesto').attr('max', maxSolapas); $('.max-solapa-text').text(function (_, textoActual) { return textoActual.replace(/\d+/, maxSolapas); @@ -1018,6 +1021,7 @@ export default class PresupuestoWizard { const dataCubierta = this.#getCubiertaData(); this.#updateCubiertaData(dataCubierta); + this.formData.lomo = lomo; this.#cacheFormData(); }