This commit is contained in:
parent
d10b79f05e
commit
d1ae9e05c8
3 changed files with 16 additions and 4 deletions
|
|
@ -9,6 +9,7 @@ import ru.clearing.classes.statics.data.account.Account;
|
|||
import ru.clearing.classes.statics.data.account.AccountBalance;
|
||||
import ru.clearing.classes.statics.data.account.ClearingAccount;
|
||||
import ru.clearing.classes.statics.data.company.Company;
|
||||
import ru.clearing.classes.statics.data.misc.Currency;
|
||||
import ru.clearing.classes.statics.data.registry.Registry;
|
||||
import ru.clearing.classes.statics.data.registry.TradingClearingRegistry;
|
||||
import ru.clearing.classes.statics.data.sdf.SDf02;
|
||||
|
|
@ -63,7 +64,9 @@ public class Sdf57Executor extends AbstractExecutor<SDf57> {
|
|||
private final Imdg<ClearingAccount> clearingAccountImdg;
|
||||
private final Imdg<TradingClearingRegistry> tradingClearingRegistryImdg;
|
||||
private final Imdg<Security> securityImdg;
|
||||
private final Imdg<Currency> currencyImdg;
|
||||
private final IMessageResolver messageResolver;
|
||||
// private final Pair<>
|
||||
|
||||
public Sdf57Executor(@Qualifier("sdf57Validator") Function<SDf57, IValidator> sDf57Validator,
|
||||
LoggingService errorLogger,
|
||||
|
|
@ -75,6 +78,7 @@ public class Sdf57Executor extends AbstractExecutor<SDf57> {
|
|||
this.accountBalanceImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class);
|
||||
this.clearingAccountImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ClearingAccount, ClearingAccount.class);
|
||||
this.tradingClearingRegistryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
||||
this.currencyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Currency, Currency.class);
|
||||
this.sDf57Validator = sDf57Validator;
|
||||
this.errorLogger = errorLogger;
|
||||
this.imdgProvider = imdgProvider;
|
||||
|
|
@ -83,6 +87,8 @@ public class Sdf57Executor extends AbstractExecutor<SDf57> {
|
|||
this.securityImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Security, Security.class);
|
||||
}
|
||||
|
||||
//todo доделать контроль sdf01 и sdf57
|
||||
|
||||
@Override
|
||||
public String exportTableName() {
|
||||
return null;
|
||||
|
|
@ -178,7 +184,7 @@ public class Sdf57Executor extends AbstractExecutor<SDf57> {
|
|||
|
||||
//todo понять что происходит со инициатором/контрагентом, особенно если у нас только один Statement
|
||||
findReg(stmt, RegistryDesignation.A).ifPresentOrElse(update, () -> create.accept(RegistryDesignation.A));
|
||||
if (!StringUtils.isEmpty(sdf57.getSpecif())) {
|
||||
if (!StringUtils.isEmpty(sdf57.getSpecif()) && sdf57.getSpecif().contains("№")) {
|
||||
//todo доделать 11. Идентификация средств УК на клиринговом счете
|
||||
findReg(stmt, RegistryDesignation.D).ifPresentOrElse(update, () -> create.accept(RegistryDesignation.D));
|
||||
}
|
||||
|
|
@ -215,6 +221,11 @@ public class Sdf57Executor extends AbstractExecutor<SDf57> {
|
|||
statement.setStatementType(StatementType.incr.getKey());
|
||||
statement.setContract(getContractFromSpecif(sdf57.getSpecif()));
|
||||
statement.setAccountId(accountDeb.getId());
|
||||
|
||||
Currency currency = currencyImdg.getSingleObjectByFieldValues(Map.of("currencyCode", "RUB"));
|
||||
if (currency != null) {
|
||||
statement.setSecurityId(currency.getId());
|
||||
}
|
||||
statement.setAccount(accountDeb.getAccount());
|
||||
statement.setInOutDirection(inOutDirection.getKey());
|
||||
statement.setSettlementDate(payDate(sdf57.getPay_date()));
|
||||
|
|
|
|||
|
|
@ -95,8 +95,8 @@ public class PrimaryAuctionBnSession extends AbstractSession implements Initiali
|
|||
log.error("cannot continue session, current stage is {}", currStage.get());
|
||||
throw new StageException();
|
||||
}
|
||||
//stage 0
|
||||
runStage(TaskType.ContinueRevise, balanceRevise);
|
||||
// //stage 0
|
||||
// runStage(TaskType.ContinueRevise, balanceRevise);
|
||||
//stage 1
|
||||
StageResult<List<ExecutionCommon>> dealsPreparationResult;
|
||||
{
|
||||
|
|
|
|||
|
|
@ -59,7 +59,8 @@ public class BalanceRevise implements ISessionStage {
|
|||
return sendSdfs();
|
||||
}
|
||||
case ContinueRevise -> {
|
||||
cashFlow(); //((SdfClearingRequest) task.getData()).getGroupId() if needed
|
||||
//больше не используются, удалить после проверки
|
||||
cashFlow(); //((SdfClearingRequest) task.getData()).getGroupId() if needed //todo убрать это отсюда
|
||||
return revise();
|
||||
}
|
||||
default -> throw new IllegalStateException("unknown task " + task.getTaskType());
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue