PAYM session bugfix

This commit is contained in:
ialbert 2024-10-01 19:50:30 +03:00
parent 6534ab34ce
commit 38ff413e84

View file

@ -11,7 +11,6 @@ import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import ru.clearing.classes.statics.data.execution.ExecutionCommon; import ru.clearing.classes.statics.data.execution.ExecutionCommon;
import ru.clearing.classes.statics.data.execution.ExecutionCurrency; import ru.clearing.classes.statics.data.execution.ExecutionCurrency;
import ru.clearing.classes.statics.data.execution.ExecutionFond;
import ru.clearing.classes.statics.data.misc.Session; import ru.clearing.classes.statics.data.misc.Session;
import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.imdg.IMDGDistributedNames;
import ru.spcex.clearing.platform.messaging.domain.BaseRequest; import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
@ -20,13 +19,11 @@ import ru.spcex.clearing.session.stage.impl.DealsPrepare;
import ru.spcex.clearing.session.stage.impl.EndStageNotification; import ru.spcex.clearing.session.stage.impl.EndStageNotification;
import ru.spcex.clearing.session.stage.impl.FinishingSession; import ru.spcex.clearing.session.stage.impl.FinishingSession;
import ru.spcex.clearing.session.stage.impl.FormingPaymentInstructionAssets; import ru.spcex.clearing.session.stage.impl.FormingPaymentInstructionAssets;
import ru.spcex.clearing.session.stage.impl.FormingRegistersOnOS;
import ru.spcex.clearing.session.stage.impl.InclusionObligations; import ru.spcex.clearing.session.stage.impl.InclusionObligations;
import ru.spcex.clearing.session.stage.impl.InspectionObligationsV2; import ru.spcex.clearing.session.stage.impl.InspectionObligationsV2;
import ru.spcex.clearing.session.stage.impl.ObligationAdmission; import ru.spcex.clearing.session.stage.impl.ObligationAdmission;
import ru.spcex.clearing.session.stage.impl.PaymentInfo; import ru.spcex.clearing.session.stage.impl.PaymentInfo;
import ru.spcex.clearing.session.stage.impl.RequirementsAndObligationCreation; import ru.spcex.clearing.session.stage.impl.RequirementsAndObligationCreation;
import ru.spcex.clearing.session.stage.impl.UnlockResources;
import ru.spcex.clearing.session.stage.monitor.SessionMonitor; import ru.spcex.clearing.session.stage.monitor.SessionMonitor;
import ru.spcex.clearing.session.stage.monitor.SessionMonitorFactory; import ru.spcex.clearing.session.stage.monitor.SessionMonitorFactory;
import ru.spcex.clearing.session.stage.task.DealsPreparePayload; import ru.spcex.clearing.session.stage.task.DealsPreparePayload;
@ -56,15 +53,12 @@ public class PaymSession extends AbstractSession implements InitializingBean {
private final InspectionObligationsV2 inspectionObligations; private final InspectionObligationsV2 inspectionObligations;
private final FormingPaymentInstructionAssets formingPaymentInstructionAssets; private final FormingPaymentInstructionAssets formingPaymentInstructionAssets;
private final UnlockResources unlockResources;
private final FinishingSession finishingSession; private final FinishingSession finishingSession;
private final EndStageNotification endStageNotification; private final EndStageNotification endStageNotification;
private final Imdg<ExecutionFond> executionFondImdg;
private final Imdg<ExecutionCurrency> executionCurrencyImdg; private final Imdg<ExecutionCurrency> executionCurrencyImdg;
private final Supplier<List<String>> marketCodes; private final Supplier<List<String>> marketCodes;
private SessionMonitor afterPaymentsReviseMonitor; private SessionMonitor afterPaymentsReviseMonitor;
private SessionMonitor afterReviseErrorMonitor;
public PaymSession( public PaymSession(
@ -73,9 +67,8 @@ public class PaymSession extends AbstractSession implements InitializingBean {
RequirementsAndObligationCreation requirementsAndObligationCreation, RequirementsAndObligationCreation requirementsAndObligationCreation,
ObligationAdmission obligationsAdmission, ObligationAdmission obligationsAdmission,
InclusionObligations inclusionObligations, InclusionObligations inclusionObligations,
FormingRegistersOnOS formingRegistersOnOS, BalanceRevise balanceRevise, BalanceRevise balanceRevise,
FormingPaymentInstructionAssets formingPaymentInstructionAssets, FormingPaymentInstructionAssets formingPaymentInstructionAssets,
UnlockResources unlockResources,
FinishingSession finishingSession, FinishingSession finishingSession,
EndStageNotification endStageNotification, EndStageNotification endStageNotification,
IMessageResolver messageResolver, IMessageResolver messageResolver,
@ -88,10 +81,8 @@ public class PaymSession extends AbstractSession implements InitializingBean {
this.inclusionObligations = inclusionObligations; this.inclusionObligations = inclusionObligations;
this.balanceRevise = balanceRevise; this.balanceRevise = balanceRevise;
this.formingPaymentInstructionAssets = formingPaymentInstructionAssets; this.formingPaymentInstructionAssets = formingPaymentInstructionAssets;
this.unlockResources = unlockResources;
this.finishingSession = finishingSession; this.finishingSession = finishingSession;
this.endStageNotification = endStageNotification; this.endStageNotification = endStageNotification;
this.executionFondImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ExecutionFond, ExecutionFond.class);
this.executionCurrencyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ExecutionCurrency, ExecutionCurrency.class); this.executionCurrencyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ExecutionCurrency, ExecutionCurrency.class);
this.inspectionObligations = inspectionObligations; this.inspectionObligations = inspectionObligations;
this.marketCodes = marketCodes; this.marketCodes = marketCodes;
@ -178,8 +169,8 @@ public class PaymSession extends AbstractSession implements InitializingBean {
log.info("session is running, stage {}, monitors: {}", log.info("session is running, stage {}, monitors: {}",
currStage.get(), currStage.get(),
logMonitors(afterPaymentsReviseMonitor)); logMonitors(afterPaymentsReviseMonitor));
if (afterReviseErrorMonitor != null && isMonitorPassed(afterReviseErrorMonitor, req.getRequestPayload())) { if (afterPaymentsReviseMonitor != null && isMonitorPassed(afterPaymentsReviseMonitor, req.getRequestPayload())) {
afterReviseErrorMonitor = null; afterPaymentsReviseMonitor = null;
finishPart(); finishPart();
return; return;
} }