From 5d7772d45eed6b4499bd3cddeedb31f1d996d8cb Mon Sep 17 00:00:00 2001 From: AKurakin Date: Mon, 4 Sep 2023 12:33:07 +0300 Subject: [PATCH] clearing-service http://jira.mfd.msk:8088/browse/CLS-500 --- .../service/validation/RefundDateValidationRule.java | 7 ++++++- .../stage/impl/RequirementsAndObligationCreation.java | 3 +++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/validation/RefundDateValidationRule.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/validation/RefundDateValidationRule.java index a2ce53e70..9f749ba35 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/validation/RefundDateValidationRule.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/validation/RefundDateValidationRule.java @@ -47,12 +47,17 @@ public enum RefundDateValidationRule implements IValidationRule rgss = rgsImdg.getCollectionObjectsByPredicate(prdct).stream() .filter(rgs -> Objects.nonNull(rgs.getSettlementDate())) .filter(rgs -> Objects.nonNull(rgs.getValueDate())) - .filter(rgs -> rgs.getValueDate().isBefore(rgs.getSettlementDate())) + .filter(rgs -> rgs.getRefundDate().equals(rgs.getSettlementDate())) .collect(Collectors.toList()); if (rgss.size() < 1) { return of(ClearingError.RecordNotFound, "groupId=" + validatedObject.getGroupId()); } + for (Registry rgs : rgss) { + if (!validatedObject.getRefundDate().isAfter(rgs.getValueDate())) { + return of(ClearingError.WrongFieldValue, "refundDate"); + } + } context.storeObject(ValidationStored.RefundDateChangeRegistries, rgss); return empty(); } diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreation.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreation.java index 9df70b02a..bfbbde376 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreation.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/RequirementsAndObligationCreation.java @@ -31,6 +31,9 @@ import java.util.Optional; import java.util.concurrent.atomic.AtomicReference; import java.util.function.BiFunction; +/** + * LiabilitiesAndClaims + */ @Service @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE) public class RequirementsAndObligationCreation implements ISessionStage {