diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionAssets.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionAssets.java index 388c589c5..a80b91369 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionAssets.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionAssets.java @@ -112,12 +112,15 @@ public class FormingPaymentInstructionAssets implements ISessionStage { return registryImdg.getCollectionObjectsByPredicate(rgsCodePrdct); } - private Collection selectASBRegistries() { + private Collection selectASBRegistries(Long sessionId) { ImdgPredicateBuilder rgsPb = registryImdg.predicateBuilder(); RegistryCodeSqlBuilder registryCodeSqlBuilder = RegistryCodeSqlBuilder.getInstance( AS_B ); - ImdgPredicate rgsCodePrdct = rgsPb.sql(registryCodeSqlBuilder.build()); + ImdgPredicate rgsCodePrdct = rgsPb.and( + rgsPb.sql(registryCodeSqlBuilder.build()), + rgsPb.equals("sessionId", sessionId) + ); return registryImdg.getCollectionObjectsByPredicate(rgsCodePrdct); } @@ -217,7 +220,7 @@ public class FormingPaymentInstructionAssets implements ISessionStage { paymentInstructions.add(paymentInstruction); } if (section == null || !section.equals(Section.MKR)) { - Collection ASBregistries = selectASBRegistries(); + Collection ASBregistries = selectASBRegistries(sessionId); log.debug("found ASB registries.size() = {}", ASBregistries.size()); for (Registry registry : ASBregistries) { diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionDepositReturn.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionDepositReturn.java index 9f7754a62..46da833e4 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionDepositReturn.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionDepositReturn.java @@ -34,6 +34,8 @@ import ru.spcex.platform.enumeration.RegistryStatus; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgId; import ru.spcex.platform.imdg.api.ImdgProvider; +import ru.spcex.platform.imdg.api.predicate.ImdgPredicate; +import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder; import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder; import ru.spcex.platform.utils.collection.Pair; import ru.spcex.platform.utils.enumeration.EnumMessage; @@ -103,8 +105,12 @@ public class FormingPaymentInstructionDepositReturn implements ISessionStage { RegistryCodeSqlBuilder registryCodeSqlBuilder = RegistryCodeSqlBuilder.getInstance(LM_T,CM_T, LS_T, CS_T); String registryCodeCondition = registryCodeSqlBuilder.build(); - - Collection obligations = registryImdg.getCollectionObjectsBySQL(registryCodeCondition) + ImdgPredicateBuilder pb = registryImdg.predicateBuilder(); + ImdgPredicate prdct = pb.and( + pb.sql(registryCodeCondition), + pb.equals("sessionId", sessionId) + ); + Collection obligations = registryImdg.getCollectionObjectsByPredicate(prdct) .stream() .filter(rgs -> rgs.getValueDate() != null) .filter(rgs -> rgs.getSettlementDate() != null) diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionReturnMkr.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionReturnMkr.java index 10f800287..74dbb794e 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionReturnMkr.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/session/stage/impl/FormingPaymentInstructionReturnMkr.java @@ -100,7 +100,12 @@ public class FormingPaymentInstructionReturnMkr implements ISessionStage { RegistryCodeSqlBuilder registryCodeSqlBuilder = RegistryCodeSqlBuilder.getInstance(LM_T, CM_T); String registryCodeCondition = registryCodeSqlBuilder.build(); - Collection rgsAll = registryImdg.getCollectionObjectsBySQL(registryCodeCondition) + ImdgPredicateBuilder pb = registryImdg.predicateBuilder(); + ImdgPredicate prdct = pb.and( + pb.sql(registryCodeCondition), + pb.equals("sessionId", sessionId) + ); + Collection rgsAll = registryImdg.getCollectionObjectsByPredicate(prdct) .stream() .filter(rgs -> rgs.getValueDate() != null) .filter(rgs -> rgs.getSettlementDate() != null)