pause after step 5

This commit is contained in:
etreschenkov 2025-07-14 13:39:25 +03:00
parent 3eff12f684
commit 60d84bc281
10 changed files with 69 additions and 85 deletions

View file

@ -126,7 +126,6 @@ public class CurrencySessionStateMachineConfig extends EnumStateMachineConfigure
dealsPrepareAction.addExecutionCurrencyCondition(execFondPb.regex("settlementCode", "^T0.*$"));
dealsPrepareAction.addExecutionCurrencyCondition(execFondPb.in("market", marketCodes.get().toArray(new String[0])));
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -178,10 +177,6 @@ public class CurrencySessionStateMachineConfig extends EnumStateMachineConfigure
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionAssetsAction)
.and()
.withExternal()
.source(TaskType.PSEUDO_waitSdfAfterAgainRevise)
.target(TaskType.AgainRevise)
@ -189,7 +184,8 @@ public class CurrencySessionStateMachineConfig extends EnumStateMachineConfigure
.action(againRevise);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstruction(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceAgainRevise(transitions);
@ -225,7 +221,7 @@ public class CurrencySessionStateMachineConfig extends EnumStateMachineConfigure
.action(chain(obligationAdmissionContinueAction, inclusionToPoolAction));
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -236,8 +232,11 @@ public class CurrencySessionStateMachineConfig extends EnumStateMachineConfigure
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -137,7 +137,6 @@ public class IntermediateMkrSessionStateMachineConfig
)
);
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -191,10 +190,6 @@ public class IntermediateMkrSessionStateMachineConfig
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionAssetsAction)
.and()
.withExternal()
.source(TaskType.PSEUDO_waitSdfAfterAgainRevise)
.target(TaskType.AgainRevise)
@ -202,7 +197,8 @@ public class IntermediateMkrSessionStateMachineConfig
.action(againRevise);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstructions(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceAgainRevise(transitions);
@ -238,7 +234,7 @@ public class IntermediateMkrSessionStateMachineConfig
.action(chain(obligationAdmissionContinueAction, inclusionToPoolAction));
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -249,8 +245,11 @@ public class IntermediateMkrSessionStateMachineConfig
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -113,7 +113,6 @@ public class PaymSessionStateMachineConfig extends EnumStateMachineConfigurerAda
dealsPrepareAction.addExecutionCurrencyCondition(execFondPb.in("market", marketCodes.get().toArray(new String[0])));
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.formingPaymentInstructionAssetsAction.setDisableCompanyCondition(true);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -160,10 +159,6 @@ public class PaymSessionStateMachineConfig extends EnumStateMachineConfigurerAda
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionAssetsAction)
.and()
.withExternal()
.source(TaskType.FormingPaymentInstruction)
.target(TaskType.AgainRevise)
@ -176,7 +171,8 @@ public class PaymSessionStateMachineConfig extends EnumStateMachineConfigurerAda
.guard(reviseSuccessGuard);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceInspection(transitions);
}
@ -209,7 +205,7 @@ public class PaymSessionStateMachineConfig extends EnumStateMachineConfigurerAda
.action(formingPaymentInstructionAssetsAction);
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -220,8 +216,11 @@ public class PaymSessionStateMachineConfig extends EnumStateMachineConfigurerAda
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -133,7 +133,6 @@ public class PrimaryAuctionB0SessionStateMachineConfig
dealsPrepareAction.addExecutionFondCondition(execFondPb.equals("settlementCode", "B0"));
dealsPrepareAction.addExecutionFondCondition(execFondPb.in("market", marketCodes.get().toArray(new String[0])));
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -187,17 +186,14 @@ public class PrimaryAuctionB0SessionStateMachineConfig
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionSecuritiesAction)
.and()
.withExternal()
.source(TaskType.PSEUDO_waitSdfAfterAgainRevise)
.target(TaskType.AgainRevise)
.guard(new SdfGuard(SdfGuardExtractorAfterAgainRevise.instance))
.action(againRevise);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstruction(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceAgainRevise(transitions);
@ -234,7 +230,7 @@ public class PrimaryAuctionB0SessionStateMachineConfig
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -245,8 +241,11 @@ public class PrimaryAuctionB0SessionStateMachineConfig
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -128,7 +128,6 @@ public class PrimaryAuctionBnSessionStateMachineConfig
dealsPrepareAction.addExecutionFondCondition(execFondPb.regex("settlementCode", "^B\\d{2}$"));
dealsPrepareAction.addExecutionFondCondition(execFondPb.in("market", marketCodes.get().toArray(new String[0])));
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -178,14 +177,11 @@ public class PrimaryAuctionBnSessionStateMachineConfig
.and()
.withExternal()
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionSecuritiesAction);
.action(inspectionObligationsV2Action);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstruction(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceInspection(transitions);
@ -220,7 +216,7 @@ public class PrimaryAuctionBnSessionStateMachineConfig
.action(formingPaymentInstructionSecuritiesAction);
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -231,8 +227,11 @@ public class PrimaryAuctionBnSessionStateMachineConfig
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -134,7 +134,6 @@ public class PrimaryAuctionT0SessionStateMachineConfig
dealsPrepareAction.addExecutionFondCondition(execFondPb.regex("settlementCode", "^T0.*$"));
dealsPrepareAction.addExecutionFondCondition(execFondPb.in("market", marketCodes.get().toArray(new String[0])));
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -188,10 +187,6 @@ public class PrimaryAuctionT0SessionStateMachineConfig
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionSecuritiesAction)
.and()
.withExternal()
.source(TaskType.PSEUDO_waitSdfAfterAgainRevise)
.target(TaskType.AgainRevise)
@ -199,7 +194,8 @@ public class PrimaryAuctionT0SessionStateMachineConfig
.action(againRevise);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstruction(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceAgainRevise(transitions);
@ -235,7 +231,7 @@ public class PrimaryAuctionT0SessionStateMachineConfig
.action(formingPaymentInstructionSecuritiesAction);
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -246,8 +242,11 @@ public class PrimaryAuctionT0SessionStateMachineConfig
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -109,7 +109,6 @@ public class ReturnDepositSessionStateMachineConfig
rgsPb.less("valueDate", LocalDate.now())
)
);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -149,15 +148,12 @@ public class ReturnDepositSessionStateMachineConfig
.withExternal()
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsDepositReturnAction)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionDepositReturnAction);
.and();
sourceFormingPaymentInstruction(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceInspection(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterIOError(transitions);
}
private void sourceInspection(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
@ -208,7 +204,7 @@ public class ReturnDepositSessionStateMachineConfig
}
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()

View file

@ -134,7 +134,6 @@ public class SecondaryAuctionT0SessionStateMachineConfig
dealsPrepareAction.addExecutionFondCondition(execFondPb.regex("settlementCode", "^T0.*$"));
dealsPrepareAction.addExecutionFondCondition(execFondPb.in("market", marketCodes.get().toArray(new String[0])));
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
@Override
@ -188,10 +187,6 @@ public class SecondaryAuctionT0SessionStateMachineConfig
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionAssetsAction)
.and()
.withExternal()
.source(TaskType.PSEUDO_waitSdfAfterAgainRevise)
.target(TaskType.AgainRevise)
@ -199,7 +194,8 @@ public class SecondaryAuctionT0SessionStateMachineConfig
.action(againRevise);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstruction(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
sourceAgainRevise(transitions);
@ -235,7 +231,7 @@ public class SecondaryAuctionT0SessionStateMachineConfig
.action(formingPaymentInstructionAssetsAction);
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -246,8 +242,11 @@ public class SecondaryAuctionT0SessionStateMachineConfig
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -144,7 +144,6 @@ public class UnitedSessionStateMachineConfig
this.finishingSessionAction.setPr("1");
this.obligationAdmissionContinueAction.setDataEnum(DataEnum.obligationAdmissionStashedRgs);
this.saveRegistriesAfterInspectionAndContinueAction.setDataEnum(DataEnum.inspectionObligationStashedRgs);
}
}
@ -202,17 +201,14 @@ public class UnitedSessionStateMachineConfig
.source(TaskType.InclusionToPool).target(TaskType.InspectionObligations)
.action(inspectionObligationsV2Action)
.and()
.withExternal()
.source(TaskType.InspectionObligations).target(TaskType.FormingPaymentInstruction)
.action(formingPaymentInstructionAssetsAction)
.and()
.withExternal()
.source(TaskType.PSEUDO_waitSdfAfterAgainRevise)
.target(TaskType.AgainRevise)
.guard(new SdfGuard(SdfGuardExtractorAfterAgainRevise.instance))
.action(againRevise);
sourceObligationAdmission(transitions);
sourcePseudoWaitAfterError(transitions);
sourcePseudoAfterOAError(transitions);
sourcePseudoAfterIOError(transitions);
sourceFormingPaymentInstruction(transitions);
sourceAgainRevise(transitions);
sourcePseudoWaitSdfAfterPaymentInstructions(transitions);
@ -248,7 +244,7 @@ public class UnitedSessionStateMachineConfig
.action(formingPaymentInstructionAssetsAction);
}
private void sourcePseudoWaitAfterError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
private void sourcePseudoAfterOAError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after ObligationAdmission
.withExternal()
@ -259,8 +255,11 @@ public class UnitedSessionStateMachineConfig
.withExternal()
.source(TaskType.PSEUDO_waitAfterObligationAdmissionError).target(TaskType.ObligationsAdmission)
.action(chain(activeWsAction, discardOblAdmStash, obligationAdmissionAction))
.event(SsnEvent.REPEAT)
.and()
.event(SsnEvent.REPEAT);
}
private void sourcePseudoAfterIOError(StateMachineTransitionConfigurer<TaskType, SsnEvent> transitions) throws Exception {
transitions
//continue and repeat after InspectionObligations
.withExternal()
.source(TaskType.PSEUDO_waitAfterInspectionError).target(TaskType.FormingPaymentInstruction)

View file

@ -22,7 +22,7 @@ import ru.spcex.platform.imdg.api.ImdgProvider;
public class SaveRegistriesAfterInspectionAndContinueAction extends AbstractSessionActionForOkErrorHandling {
private final Logger log = LoggerFactory.getLogger(getClass());
private final Imdg<Registry> registryImdg;
private DataEnum dataEnum;
private final DataEnum dataEnum = DataEnum.inspectionObligationStashedRgs;
private final PlanBalanceCalc planBalanceCalc;
@Autowired
@ -32,10 +32,6 @@ public class SaveRegistriesAfterInspectionAndContinueAction extends AbstractSess
this.planBalanceCalc = planBalanceCalc;
}
public void setDataEnum(DataEnum dataEnum) {
this.dataEnum = dataEnum;
}
@Override
protected void actualExecute(StateContext<TaskType, SsnEvent> ctx) {
@SuppressWarnings("unchecked")