diff --git a/src/main/java/alfio/manager/AdditionalServiceManager.java b/src/main/java/alfio/manager/AdditionalServiceManager.java index 3776c046b..f6a49265d 100644 --- a/src/main/java/alfio/manager/AdditionalServiceManager.java +++ b/src/main/java/alfio/manager/AdditionalServiceManager.java @@ -88,7 +88,8 @@ public int update(int additionalServiceId, additionalService.getExpiration().toZonedDateTime(event.getZoneId()), additionalService.getVat(), additionalService.getVatType(), - Optional.ofNullable(additionalService.getPrice()).map(p -> MonetaryUtil.unitToCents(p, event.getCurrency())).orElse(0)); + Optional.ofNullable(additionalService.getPrice()).map(p -> MonetaryUtil.unitToCents(p, event.getCurrency())).orElse(0), + additionalService.getSupplementPolicy().name()); preGenerateItems(additionalServiceId, event, additionalService); return result; } diff --git a/src/main/java/alfio/repository/AdditionalServiceRepository.java b/src/main/java/alfio/repository/AdditionalServiceRepository.java index 4e1973f34..63f161958 100644 --- a/src/main/java/alfio/repository/AdditionalServiceRepository.java +++ b/src/main/java/alfio/repository/AdditionalServiceRepository.java @@ -69,11 +69,11 @@ AffectedRowCountAndKey insert(@Bind("eventId") int eventId, @Bind("srcP @Bind("supplementPolicy") AdditionalService.SupplementPolicy supplementPolicy); @Query("update additional_service set fix_price = :fixPrice, ordinal = :ordinal, available_qty = :availableQty, max_qty_per_order = :maxQtyPerOrder," + - " inception_ts = :inceptionTs, expiration_ts = :expirationTs, vat = :vat, vat_type = :vatType, src_price_cts = :srcPriceCts where id = :id") + " inception_ts = :inceptionTs, expiration_ts = :expirationTs, vat = :vat, vat_type = :vatType, src_price_cts = :srcPriceCts, supplement_policy = :policy where id = :id") int update(@Bind("id") int id, @Bind("fixPrice") boolean fixPrice, @Bind("ordinal") int ordinal, @Bind("availableQty") int availableQuantity, @Bind("maxQtyPerOrder") int maxQtyPerOrder, @Bind("inceptionTs") ZonedDateTime inception, @Bind("expirationTs") ZonedDateTime expiration, @Bind("vat") BigDecimal vat, - @Bind("vatType") AdditionalService.VatType vatType, @Bind("srcPriceCts") int srcPriceCts); + @Bind("vatType") AdditionalService.VatType vatType, @Bind("srcPriceCts") int srcPriceCts, @Bind("policy") String policy); @Query("select * from additional_service_with_currency where event_id_fk = :eventId and supplement_policy = :supplementPolicy order by ordinal") List findAllInEventWithPolicy(@Bind("eventId") int eventId, @Bind("supplementPolicy") AdditionalService.SupplementPolicy policy);