diff --git a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf08Executor.java b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf08Executor.java index 9e6482d39..ab0f3fd73 100644 --- a/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf08Executor.java +++ b/clearing-parent/clearing-service/src/main/java/ru/spcex/clearing/service/executors/Sdf08Executor.java @@ -183,11 +183,28 @@ public class Sdf08Executor extends AbstractExecutor { return Optional.empty(); } + /** + * + * @param sdf01Id + * @param account DepoCode + * @param companyId + * @return AccountSdfRequestPart + */ private AccountSdfRequestPart createAccountRequestPart(Long sdf01Id, String account, Long companyId) { AccountSdfRequestPart req = new AccountSdfRequestPart(); req.setAccount(account); req.setCompanyId(companyId); - req.setAccountType(AccountType.Clrn.getKey()); + String accountType = null; + if (account != null) { + int p = account.indexOf(":"); + if (p > 3) { // выбрать 3-ю букву, отсчитывая от последнего символа + accountType = account.substring(p - 3, p - 2); + } + } + if (accountType == null) { + log.warn("Unparseable depoCode of account: \"{}\"", account); + } + req.setAccountType(accountType); req.setSdfId(sdf01Id); return req; }