diff --git a/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoService.java b/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoService.java index 53524de..5081b63 100644 --- a/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoService.java +++ b/src/main/java/com/imprimelibros/erp/presupuesto/service/PresupuestoService.java @@ -599,12 +599,17 @@ public class PresupuestoService { .doubleValue(); } + // precio calculado por matrices * num. cols -1 * precio por columna + if (presupuestoMaquetacion.getNumColumnas() > 1) { + precio = precio.add(precio.multiply( + BigDecimal.valueOf(presupuestoMaquetacion.getNumColumnas() - 1)) + .multiply(BigDecimal.valueOf(price.apply("columnas"))) ); + } + precio = precio .add(BigDecimal.valueOf(presupuestoMaquetacion.getNumTablas()) .multiply(BigDecimal.valueOf(price.apply("tabla")))); - precio = precio.add( - BigDecimal.valueOf(presupuestoMaquetacion.getNumColumnas()) - .multiply(BigDecimal.valueOf(price.apply("columnas")))); + precio = precio .add(BigDecimal.valueOf(presupuestoMaquetacion.getNumFotos()) .multiply(BigDecimal.valueOf(price.apply("foto")))); @@ -641,7 +646,9 @@ public class PresupuestoService { out.put("language", language); return out; - } catch (Exception e) { + } catch ( + + Exception e) { System.out.println("Error procesando presupuesto maquetacion: " + e.getMessage()); } @@ -1059,7 +1066,7 @@ public class PresupuestoService { else if (s.get("id").equals("ejemplar-prueba")) { serviciosIva4 = BigDecimal.valueOf( s.get("price") != null ? Double.parseDouble(String.valueOf(s.get("price"))) : 0.0); - } + } double unidades = Double.parseDouble(String.valueOf(s.getOrDefault("units", 0))); double precio = Double.parseDouble(String.valueOf( s.get("id").equals("marcapaginas")