From 1e0345664d3f9243ae98ba8d8db070a827cb1213 Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1s=C3=A1ry=20D=C3=A1niel?= Date: Thu, 29 Feb 2024 22:18:06 +0100 Subject: [PATCH] Invoice payment validation modified --- .../editor/validator/InvoiceFormValidator.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/sly-crm-ui/src/main/java/hu/user/lis/ui/editor/validator/InvoiceFormValidator.java b/sly-crm-ui/src/main/java/hu/user/lis/ui/editor/validator/InvoiceFormValidator.java index 03c9af6..ea409cd 100644 --- a/sly-crm-ui/src/main/java/hu/user/lis/ui/editor/validator/InvoiceFormValidator.java +++ b/sly-crm-ui/src/main/java/hu/user/lis/ui/editor/validator/InvoiceFormValidator.java @@ -14,6 +14,7 @@ public class InvoiceFormValidator extends FormValidator { validator(entity, this::validateHumanId, "A 'Sorszám' kitöltése kötelező."), validator(entity.getCurrency(), this::validateNotNull, "A 'Pénznem' kitöltése kötelező."), validator(entity, this::validatePaymentAmounts, "A 'Nettó összeg' értéke nem lehet nagyobb a 'Bruttó összeg' értékénél."), + validator(entity, this::validateNegativePaymentAmounts, "A storno 'Bruttó összeg' értéke nem lehet nagyobb a 'Nettó összeg' értékénél."), // validator(entity.getNetAmount(), this::validateDouble, "A 'Nettó összeg' kitöltése kötelező."), // validator(entity.getGrossAmount(), this::validateDouble, "A 'Bruttó összeg' kitöltése kötelező."), // validator(entity.getVatAmount(), this::validateDouble, "Az 'ÁFA' kitöltése kötelező."), @@ -26,12 +27,24 @@ public class InvoiceFormValidator extends FormValidator { }; } + private boolean validateNegativePaymentAmounts(Object data) { + if (data instanceof Invoice) { + Invoice entity = (Invoice) data; + if (entity.getNetAmount() < 0) { + return entity.getGrossAmount() <= entity.getNetAmount(); + } + } + return true; + } + private boolean validatePaymentAmounts(Object data) { if (data instanceof Invoice) { Invoice entity = (Invoice) data; - return entity.getNetAmount() <= entity.getGrossAmount(); + if (entity.getNetAmount() > 0) { + return entity.getNetAmount() <= entity.getGrossAmount(); + } } - return false; + return true; } private boolean validateCreateAndPaymentDates(Object data) { -- 2.54.0