diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterService.java index 703033ae7..30e56bd7a 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/LiabilitiesRegisterService.java @@ -104,15 +104,27 @@ public class LiabilitiesRegisterService extends QueueConsumer implements Initial registry.getSecurityId() ) ); + if (session == null) { + log.warn("Session is empty!"); + } else { + liabilitiesRegister.setValidFromDate(session.getClearingDate()); + liabilitiesRegister.setValidToDate(TimeUtil.toLocalDate(session.getUpdated())); + } + if (companySymbols == null) { + log.warn("CompanySymbols is empty!"); + } else { + liabilitiesRegister.setInn(companySymbols.getCompanySymbolValue()); + } + if (moneyMarketSecurity == null) { + log.warn("MoneyMarketSecurity is empty!"); + } else { + liabilitiesRegister.setCurrency(moneyMarketSecurity.getNominalCurrency()); + } liabilitiesRegister.setSessionId(registry.getSessionId()); - liabilitiesRegister.setValidFromDate(session.getClearingDate()); - liabilitiesRegister.setValidToDate(TimeUtil.toLocalDate(session.getUpdated())); liabilitiesRegister.setCompanyId(registry.getCompanyId()); - liabilitiesRegister.setInn(companySymbols.getCompanySymbolValue()); liabilitiesRegister.setRegistryCode(registry.getRegistryCode()); liabilitiesRegister.setAccount(registry.getAccount()); liabilitiesRegister.setRegistryStatus(registry.getRegistryStatus()); - liabilitiesRegister.setCurrency(moneyMarketSecurity.getNominalCurrency()); liabilitiesRegister.setSumLiabilities(registry.getBalance()); liabilitiesRegister.setSettlementDate(registry.getSettlementDate()); liabilitiesRegister.setCreated(Instant.now()); diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyBalanceRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyBalanceRegisterService.java index 7c99e87a3..2dc503758 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyBalanceRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyBalanceRegisterService.java @@ -84,6 +84,9 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia private void insertMoneyBalanceRegister(Registry registry) { log.trace("Started generating MoneyBalanceRegister entity..."); MoneyBalanceRegister moneyBalanceRegister = new MoneyBalanceRegister(); + Registry registryForRemainderSum = registryMap.getSingleObjectBySQL(getSqlForRemainderSum()); + Registry registryForBlockedSum = registryMap.getSingleObjectBySQL(getSqlForBlockedSum()); + Registry registryForUnblockedSum = registryMap.getSingleObjectBySQL(getSqlForUnblockedSum()); Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 2L)); CompanySymbols companySymbol = companySymbolsMap.getSingleObjectByFieldValues(Map.of("companyId", registry.getCompanyId())); String setHouseName = company != null ? company.getShortName() : null; @@ -104,7 +107,9 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia moneyBalanceRegister.setCompanyFullName(registry.getFullName()); moneyBalanceRegister.setAccount(account); moneyBalanceRegister.setInfoAccount(infoAccount); - moneyBalanceRegister.setRemainderSum(registry.getCloseBalance()); + moneyBalanceRegister.setRemainderSum(registryForRemainderSum.getBalance()); + moneyBalanceRegister.setBlockedSum(registryForBlockedSum.getBalance()); + moneyBalanceRegister.setUnblockedSum(registryForUnblockedSum.getBalance()); moneyBalanceRegister.setInn(inn); moneyBalanceRegister.setSessionId(registry.getSessionId()); moneyBalanceRegister.setCompanyId(registry.getCompanyId()); @@ -119,4 +124,19 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia return String.format("companyId = '%s' registryCode LIKE 'AM__'", companyId); } + private String getSqlForRemainderSum() { + log.trace("Started generating sql predicate for registries remainder sum..."); + return "registryCode LIKE 'AM_T'"; + } + + private String getSqlForBlockedSum() { + log.trace("Started generating sql predicate for registries blocked sum..."); + return "registryCode LIKE 'AM_T'"; + } + + private String getSqlForUnblockedSum() { + log.trace("Started generating sql predicate for registries unblocked sum..."); + return "registryCode LIKE 'AM_F'"; + } + }