добавил условие на sessionId: сессии TRDT, финальная/промежуточная МКР, возврат депозитов

This commit is contained in:
ialbert 2023-08-23 12:11:52 +03:00
parent 7164442752
commit 866849dc8f
3 changed files with 20 additions and 6 deletions

View file

@ -112,12 +112,15 @@ public class FormingPaymentInstructionAssets implements ISessionStage {
return registryImdg.getCollectionObjectsByPredicate(rgsCodePrdct);
}
private Collection<Registry> selectASBRegistries() {
private Collection<Registry> 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<Registry> ASBregistries = selectASBRegistries();
Collection<Registry> ASBregistries = selectASBRegistries(sessionId);
log.debug("found ASB registries.size() = {}", ASBregistries.size());
for (Registry registry : ASBregistries) {

View file

@ -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<Registry> obligations = registryImdg.getCollectionObjectsBySQL(registryCodeCondition)
ImdgPredicateBuilder pb = registryImdg.predicateBuilder();
ImdgPredicate prdct = pb.and(
pb.sql(registryCodeCondition),
pb.equals("sessionId", sessionId)
);
Collection<Registry> obligations = registryImdg.getCollectionObjectsByPredicate(prdct)
.stream()
.filter(rgs -> rgs.getValueDate() != null)
.filter(rgs -> rgs.getSettlementDate() != null)

View file

@ -100,7 +100,12 @@ public class FormingPaymentInstructionReturnMkr implements ISessionStage {
RegistryCodeSqlBuilder registryCodeSqlBuilder = RegistryCodeSqlBuilder.getInstance(LM_T, CM_T);
String registryCodeCondition = registryCodeSqlBuilder.build();
Collection<Registry> rgsAll = registryImdg.getCollectionObjectsBySQL(registryCodeCondition)
ImdgPredicateBuilder pb = registryImdg.predicateBuilder();
ImdgPredicate prdct = pb.and(
pb.sql(registryCodeCondition),
pb.equals("sessionId", sessionId)
);
Collection<Registry> rgsAll = registryImdg.getCollectionObjectsByPredicate(prdct)
.stream()
.filter(rgs -> rgs.getValueDate() != null)
.filter(rgs -> rgs.getSettlementDate() != null)