From 67b435889e73703e4055710cca34692f90c6ad46 Mon Sep 17 00:00:00 2001 From: aalehin Date: Tue, 23 May 2023 15:47:23 +0300 Subject: [PATCH] http://jira.mfd.msk:8088/browse/CLS-280 --- Refactored + added logs --- clearing-parent/registry-service/pom.xml | 4 + .../AdmittedLiabilitiesRegisterService.java | 52 ++++--- .../CoveredLiabilitiesRegisterService.java | 38 +++-- .../service/DepoBalanceRegisterService.java | 29 ++-- ...DepoPaymentInstructionRegisterService.java | 23 ++- .../ExcludeLiabilitiesRegisterService.java | 50 +++---- .../service/LiabilitiesRegisterService.java | 103 +++++++++---- .../service/MoneyBalanceRegisterService.java | 53 ++++--- ...oneyPaymentInstructionRegisterService.java | 41 ++++-- ...AdmittedLiabilitiesRegisterNewRequest.java | 138 ------------------ .../CoveredLiabilitiesRegisterNewRequest.java | 138 ------------------ 11 files changed, 243 insertions(+), 426 deletions(-) diff --git a/clearing-parent/registry-service/pom.xml b/clearing-parent/registry-service/pom.xml index 4b76a440c..2df1f4a6b 100644 --- a/clearing-parent/registry-service/pom.xml +++ b/clearing-parent/registry-service/pom.xml @@ -42,6 +42,10 @@ spring-boot-starter-test test + + ru.spcex.clearing + dictionary + diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/AdmittedLiabilitiesRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/AdmittedLiabilitiesRegisterService.java index da3f30e0d..54ff7550a 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/AdmittedLiabilitiesRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/AdmittedLiabilitiesRegisterService.java @@ -12,7 +12,8 @@ import ru.clearing.classes.statics.data.registry.Registry; import ru.clearing.classes.statics.data.security.Security; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; +import ru.spcex.clearing.platform.messaging.domain.Consts; +import ru.spcex.clearing.platform.messaging.domain.cud.registry.AdmittedLiabilitiesRegisterNewRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.platform.enumeration.RegistryCapacity; import ru.spcex.platform.enumeration.RegistryCode; @@ -21,9 +22,9 @@ import ru.spcex.platform.enumeration.RegistryInstrumentType; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; -import java.util.*; - -import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT; +import java.time.Instant; +import java.util.Collection; +import java.util.Map; public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); @@ -46,36 +47,35 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements @Override public void afterPropertiesSet() { - callback(LauncherCommandRequest.class) + callback(AdmittedLiabilitiesRegisterNewRequest.class) .setConsumer(this::admittedLiabilitiesRegisterNew) - .forDestination(createRegistry_GRRT.topic(), callbacks::put);//TODO FIX UP WHAT KIND OF TOPIC + .forDestination(Consts.REGISTRY_ADMITTED_LIABILITIES_REGISTER_NEW, callbacks::put); init(); } - public void admittedLiabilitiesRegisterNew(BaseRequest userRequest) { - log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC + public void admittedLiabilitiesRegisterNew(BaseRequest userRequest) { + log.debug("AdmittedLiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_ADMITTED_LIABILITIES_REGISTER_NEW); String sqlConditionForRegistry = getSqlForRegistries(); - List registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry).stream().toList(); - HashMap sessionIdByCompanyId = new HashMap<>(); - Collection collection = admittedLiabilitiesRegisterMap.getAllValues(); //there should be checked all values cause we can have a lot of registries - collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId())); - registries.forEach(x -> { - Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId()); - if (existingCompanySessionId == null) { - insertAdmittedLiabilitiesRegister(x); + Collection registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry); + registries.forEach((registry -> { + Collection admittedLiabilitiesRegistersBySessionIdAndCompanyId = admittedLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId())); + if (admittedLiabilitiesRegistersBySessionIdAndCompanyId == null || admittedLiabilitiesRegistersBySessionIdAndCompanyId.isEmpty()) { + insertAdmittedLiabilitiesRegister(registry); } - }); - log.debug("successfully processed"); + } + )); + log.debug("Successfully processed.."); } private void insertAdmittedLiabilitiesRegister(Registry registry) { + log.trace("Started generating AdmittedLiabilitiesRegister entity..."); AdmittedLiabilitiesRegister admittedLiabilitiesRegister = new AdmittedLiabilitiesRegister(); - Optional company = companyMap.getCollectionObjectsByFieldValues(Map.of("id", 1L)).stream().findFirst(); - Optional security = securityMap.getCollectionObjectsByFieldValues(Map.of("id", registry.getSecurityId())).stream().findFirst(); - String securitySymbol = security.map(Security::getSecuritySymbol).orElse(null); - String securityFullName = security.map(Security::getShortName).orElse(null); - String companyFullName = company.map(Company::getFullName).orElse(null); + Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 1L)); + Security security = securityMap.getSingleObjectByFieldValues(Map.of("id", registry.getSecurityId())); + String securitySymbol = security != null ? security.getSecuritySymbol() : null; + String securityFullName = security != null ? security.getShortName() : null; + String companyFullName = security != null ? company.getFullName() : null; admittedLiabilitiesRegister.setCompanyFullName(companyFullName); admittedLiabilitiesRegister.setSessionId(registry.getSessionId()); admittedLiabilitiesRegister.setSecuritySymbol(securitySymbol); @@ -85,9 +85,13 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements admittedLiabilitiesRegister.setAccount(registry.getAccount()); admittedLiabilitiesRegister.setAmount(registry.getBalance()); admittedLiabilitiesRegister.setClearingDate(registry.getClearingDate()); + admittedLiabilitiesRegister.setCreated(Instant.now()); + admittedLiabilitiesRegister.setUpdated(Instant.now()); admittedLiabilitiesRegisterMap.insert(admittedLiabilitiesRegister); + log.debug("inserted successfully AdmittedLiabilitiesRegister entity with id: {}", admittedLiabilitiesRegister.getId()); } - private String getSqlForRegistries(){ + + private String getSqlForRegistries() { return String.format("registryDesignation = '%s' and " + "registryInstrumentType in ('%s','%s') and " + "registryCapacity = '%s' and " + diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/CoveredLiabilitiesRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/CoveredLiabilitiesRegisterService.java index 645aab6cb..316bb460f 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/CoveredLiabilitiesRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/CoveredLiabilitiesRegisterService.java @@ -12,19 +12,17 @@ import ru.clearing.classes.statics.data.registry.Registry; import ru.clearing.classes.statics.data.security.Security; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; +import ru.spcex.clearing.platform.messaging.domain.Consts; +import ru.spcex.clearing.platform.messaging.domain.cud.registry.CoveredLiabilitiesRegisterNewRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.platform.enumeration.*; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; +import java.time.Instant; import java.util.Collection; -import java.util.HashMap; -import java.util.List; import java.util.Map; -import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT; - public class CoveredLiabilitiesRegisterService extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); @@ -46,28 +44,25 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements @Override public void afterPropertiesSet() { - callback(LauncherCommandRequest.class) + callback(CoveredLiabilitiesRegisterNewRequest.class) .setConsumer(this::coveredLiabilitiesRegisterNew) - .forDestination(createRegistry_GRRT.topic(), callbacks::put);//TODO FIX UP WHAT KIND OF TOPIC + .forDestination(Consts.REGISTRY_COVERED_LIABILITIES_REGISTER_NEW, callbacks::put); init(); } - public void coveredLiabilitiesRegisterNew(BaseRequest userRequest) { - log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC - HashMap sessionIdByCompanyId = new HashMap<>(); + public void coveredLiabilitiesRegisterNew(BaseRequest userRequest) { + log.debug("CoveredLiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_COVERED_LIABILITIES_REGISTER_NEW); String sqlConditionForRegistry = getSqlForRegistries(); - - List registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry).stream().toList(); + Collection registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry); //checking for duplicates - Collection collection = coveredLiabilitiesRegisterMap.getAllValues(); - collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId())); - registries.forEach(x -> { - Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId()); - if (existingCompanySessionId == null) { - insertCoveredLiabilitiesRegister(x); + registries.forEach((registry -> { + Collection coveredLiabilitiesRegisterBySessionIdAndCompanyId = coveredLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId())); + if (coveredLiabilitiesRegisterBySessionIdAndCompanyId == null || coveredLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) { + insertCoveredLiabilitiesRegister(registry); } - }); + } + )); log.debug("successfully processed"); } @@ -88,6 +83,8 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements coveredLiabilitiesRegister.setAccount(registry.getAccount()); coveredLiabilitiesRegister.setAmount(registry.getBalance()); coveredLiabilitiesRegister.setClearingDate(registry.getClearingDate()); + coveredLiabilitiesRegister.setCreated(Instant.now()); + coveredLiabilitiesRegister.setUpdated(Instant.now()); coveredLiabilitiesRegisterMap.insert(coveredLiabilitiesRegister); log.debug("CoveredLiabilitiesRegister inserted successfully with id: {}", coveredLiabilitiesRegister.getId()); } @@ -97,8 +94,7 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements "registryInstrumentType in ('%s','%s') and " + "registryCapacity = '%s' and " + "registryCode = '%s' and" + - "registryStatus in ('%s', '%s')" - , + "registryStatus in ('%s', '%s')", RegistryDesignation.O.getKey(), RegistryInstrumentType.S.getKey(), RegistryInstrumentType.M.getKey(), diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoBalanceRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoBalanceRegisterService.java index 9cb3e868f..5e5bf15c2 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoBalanceRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoBalanceRegisterService.java @@ -13,14 +13,13 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; -import ru.spcex.platform.enumeration.*; +import ru.spcex.platform.enumeration.AccountType; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; import java.time.Instant; import java.util.Collection; -import java.util.HashMap; -import java.util.List; +import java.util.Map; import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT; @@ -50,19 +49,16 @@ public class DepoBalanceRegisterService extends QueueConsumer implements Initial public void depoBalanceRegisterNew(BaseRequest userRequest) { log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); - HashMap sessionIdByCompanyId = new HashMap<>(); - String sqlForRegistries = getSqlForRegistries(); - List registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries).stream().toList(); + Collection registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries); log.trace("Started searching depoBalanceRegister in register by companyId, sessionId..."); - Collection collection = depoBalanceRegisterMap.getAllValues(); - collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId())); - registries.forEach(x -> { - Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId()); - if (existingCompanySessionId == null) { - insertDepoBalanceRegister(x); + registries.forEach((registry -> { + Collection depoBalanceRegisterBySessionIdAndCompanyId = depoBalanceRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId())); + if (depoBalanceRegisterBySessionIdAndCompanyId == null || depoBalanceRegisterBySessionIdAndCompanyId.isEmpty()) { + insertDepoBalanceRegister(registry); } - }); + } + )); log.debug("Successfully processed"); } @@ -76,12 +72,15 @@ public class DepoBalanceRegisterService extends QueueConsumer implements Initial depoBalanceRegister.setDepoCode(registry.getAccountType()); depoBalanceRegister.setQuantity(registry.getCloseBalance()); depoBalanceRegister.setSecuritySymbol(registry.getSecuritySymbol()); + depoBalanceRegister.setCreated(Instant.now()); + depoBalanceRegister.setUpdated(Instant.now()); depoBalanceRegisterMap.insert(depoBalanceRegister); log.debug("inserted successfully DepoBalanceRegister entity with id: {}", depoBalanceRegister.getId()); } - private String getSqlForRegistries(){ + + private String getSqlForRegistries() { log.trace("Started generating sql predicate for registries..."); - return String.format("accountType = '%s'", + return String.format("accountType = '%s'", AccountType.Depo.getKey()); } } \ No newline at end of file diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoPaymentInstructionRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoPaymentInstructionRegisterService.java index 92c22d4b3..19126db48 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoPaymentInstructionRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/DepoPaymentInstructionRegisterService.java @@ -10,6 +10,7 @@ import ru.clearing.classes.statics.data.misc.Session; import ru.clearing.classes.statics.data.payment.PaymentInstruction; import ru.clearing.classes.statics.data.register.DepoPaymentInstructionRegister; import ru.clearing.classes.statics.data.registry.TradingClearingRegistry; +import ru.clearing.platform.dictionary.InOutDirectionDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; @@ -19,7 +20,6 @@ import ru.spcex.platform.imdg.api.ImdgProvider; import java.time.Instant; import java.util.Collection; -import java.util.HashMap; import java.util.Map; import static ru.spcex.platform.enumeration.Task.createRegistry_GORR; @@ -32,7 +32,7 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme private final Imdg paymentInstructionMap; private final Imdg sessionMap; private final Imdg tradingClearingRegistryMap; - + private final Imdg InOutDirectionDictionaryMap; @Autowired public DepoPaymentInstructionRegisterService(Consumer kafkaQueue, Producer kafkaProducer, @@ -42,6 +42,7 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme this.paymentInstructionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_PaymentInstruction, PaymentInstruction.class); this.sessionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Session, Session.class); this.tradingClearingRegistryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class); + this.InOutDirectionDictionaryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_InOutDirectionDictionary, InOutDirectionDictionary.class); } @Override @@ -55,7 +56,6 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme public void depoPaymentInstructionRegisterNew(BaseRequest userRequest) { log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic()); - HashMap sessionIdByPaymentInstructions = new HashMap<>(); Collection actualSessions = sessionMap.getCollectionObjectsByFieldValues(Map.of("section", "FOND")); for (Session session : actualSessions) { @@ -68,8 +68,6 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme ); if (depoPaymentInstructionRegister == null){ insertDepoPaymentInstructionRegister(paymentInstruction); - } else { - //todo update?? } } } @@ -80,18 +78,19 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme private void insertDepoPaymentInstructionRegister(PaymentInstruction paymentInstruction) { log.trace("Started generating DepoPaymentInstructionRegister entity..."); DepoPaymentInstructionRegister depoPaymentInstructionRegister = new DepoPaymentInstructionRegister(); - //TODO CLARIFY HOW WE SHOULD FIND TRADING CLEARING REGISTRY IF IN PAYMENT INSTRUCTION THERE IS NO COMPANY ID - //TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getSingleObjectByFieldValues(Map.of("companyId", paymentInstruction.getCompanyId())); + TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getSingleObjectByFieldValues(Map.of("companyId", paymentInstruction.getSenderId())); + InOutDirectionDictionary inOutDirectionDictionary = InOutDirectionDictionaryMap.getSingleObjectByFieldValues(Map.of("code", paymentInstruction.getCreditLeg_direction())); depoPaymentInstructionRegister.setCreated(Instant.now()); depoPaymentInstructionRegister.setUpdated(Instant.now()); depoPaymentInstructionRegister.setCompanyId(paymentInstruction.getSenderId()); - //todo fix up depoPaymentInstructionRegister.setTradingClearingRegistryType(); - //todo fix up depoPaymentInstructionRegister.setTradingClearingRegistry(); - depoPaymentInstructionRegister.setCbCode("RNCB-BE-01"); //TODO CLARIFY THERE SHOULD BE VALUE =RNCB-BE-01 OR RNCB-BE-01 + depoPaymentInstructionRegister.setTradingClearingRegistryType(tradingClearingRegistry.getTradingClearingRegistryType() ); + depoPaymentInstructionRegister.setTradingClearingRegistry(tradingClearingRegistry.getCode()); + depoPaymentInstructionRegister.setCbCode("RNCB-BE-01"); depoPaymentInstructionRegister.setQuantity(paymentInstruction.getCreditLeg_amount()); - //depoPaymentInstructionRegister.setDirection(paymentInstruction.getCreditLeg_direction()); //TODO CLARIFY HOW WE SHOULD MAP LONG IN STRING IS THERE SOME ERRORS + depoPaymentInstructionRegister.setDirection(inOutDirectionDictionary.getId()); depoPaymentInstructionRegister.setSessionId(paymentInstruction.getSessionId()); - + depoPaymentInstructionRegister.setCreated(Instant.now()); + depoPaymentInstructionRegister.setUpdated(Instant.now()); depoPaymentInstructionRegisterMap.insert(depoPaymentInstructionRegister); log.debug("inserted successfully DepoBalanceRegister entity with id: {}", depoPaymentInstructionRegister.getId()); } diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/ExcludeLiabilitiesRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/ExcludeLiabilitiesRegisterService.java index b5fd168d0..675130949 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/ExcludeLiabilitiesRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/ExcludeLiabilitiesRegisterService.java @@ -2,29 +2,28 @@ package ru.spcex.clearing.registry.service; import org.apache.kafka.clients.consumer.Consumer; import org.apache.kafka.clients.producer.Producer; -import org.apache.logging.log4j.util.StringMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; -import ru.clearing.classes.statics.data.company.CompanySymbols; import ru.clearing.classes.statics.data.misc.Session; import ru.clearing.classes.statics.data.register.ExcludeLiabilitiesRegister; import ru.clearing.classes.statics.data.registry.Registry; import ru.clearing.classes.statics.data.security.MoneyMarketSecurity; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; +import ru.spcex.clearing.platform.messaging.domain.Consts; +import ru.spcex.clearing.platform.messaging.domain.cud.registry.ExcludeLiabilitiesRegisterNewRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.platform.enumeration.*; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; +import ru.spcex.platform.utils.time.TimeUtil; +import java.time.Instant; import java.time.LocalDate; -import java.time.ZoneId; -import java.util.*; - -import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT; +import java.util.Collection; +import java.util.Map; public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); @@ -49,51 +48,52 @@ public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements @Override public void afterPropertiesSet() { - callback(LauncherCommandRequest.class) + callback(ExcludeLiabilitiesRegisterNewRequest.class) .setConsumer(this::excludeLiabilitiesRegisterNew) - .forDestination(createRegistry_GRRT.topic(), callbacks::put);//TODO FIX UP WHAT KIND OF TOPIC + .forDestination(Consts.REGISTRY_EXCLUDE_LIABILITIES_REGISTER_NEW, callbacks::put); init(); } - public void excludeLiabilitiesRegisterNew(BaseRequest userRequest) { - log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC - HashMap sessionIdByCompanyId = new HashMap<>(); + public void excludeLiabilitiesRegisterNew(BaseRequest userRequest) { + log.debug("ExcludeLiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_EXCLUDE_LIABILITIES_REGISTER_NEW); String sqlForRegistries = getSqlForRegistries(); - List registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries).stream().toList(); - Collection collection = excludeLiabilitiesRegisterMap.getAllValues(); - collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId())); - registries.forEach(x -> { - Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId()); - if (existingCompanySessionId == null) { - insertExcludeLiabilitiesRegister(x); + Collection registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries); + registries.forEach((registry -> { + Collection excludeLiabilitiesRegisterBySessionIdAndCompanyId = excludeLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId())); + if (excludeLiabilitiesRegisterBySessionIdAndCompanyId == null || excludeLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) { + insertExcludeLiabilitiesRegister(registry); } - }); + } + )); log.debug("successfully processed"); } private void insertExcludeLiabilitiesRegister(Registry registry) { + log.trace("Started generating ExcludeLiabilitiesRegister entity..."); ExcludeLiabilitiesRegister excludeLiabilitiesRegister = new ExcludeLiabilitiesRegister(); //hz communicating Session sessionBySessionId = sessionMap.getSingleObjectByFieldValues(Map.of("clearingDate", registry.getSessionId())); - LocalDate validToDate = LocalDate.ofInstant(sessionBySessionId.getUpdated(), ZoneId.systemDefault()); - Map> innPredicates = Map.of("companySymbol", "INN","companyId", registry.getCompanyId()); + LocalDate validToDate = TimeUtil.toLocalDate(sessionBySessionId.getUpdated()); + Map> innPredicates = Map.of("companySymbol", "INN", "companyId", registry.getCompanyId()); ru.clearing.classes.statics.data.company.CompanySymbols companySymbol = companySymbolMap.getSingleObjectByFieldValues(innPredicates); MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getSingleObjectByFieldValues(Map.of("securityId", registry.getSecurityId())); excludeLiabilitiesRegister.setSessionId(registry.getSessionId()); excludeLiabilitiesRegister.setValidFromDate(sessionBySessionId.getClearingDate()); - excludeLiabilitiesRegister.setValidToDate(validToDate); //TODO CLARIFY IS IN THIS FIELD SHOULD LOCAL DATE OR NO? + excludeLiabilitiesRegister.setValidToDate(validToDate); excludeLiabilitiesRegister.setCompanyId(registry.getCompanyId()); - excludeLiabilitiesRegister.setCompanyFullName(""); //TODO CLARIFY HOW IT SHOULD BE FILLED excludeLiabilitiesRegister.setInn(companySymbol.getCompanySymbolValue()); excludeLiabilitiesRegister.setRegistryCode(registry.getRegistryCode()); excludeLiabilitiesRegister.setAccount(registry.getAccount()); excludeLiabilitiesRegister.setRegistryStatus(registry.getRegistryStatus()); - excludeLiabilitiesRegister.setCurrency(moneyMarketSecurity.getNominalCurrency()); // TODO IS moneyMarketSecurity.currency NOMINAL CURRENCY + excludeLiabilitiesRegister.setCurrency(moneyMarketSecurity.getNominalCurrency()); excludeLiabilitiesRegister.setSumLiabilities(registry.getBalance()); excludeLiabilitiesRegister.setSettlementDate(registry.getSettlementDate()); + excludeLiabilitiesRegister.setCreated(Instant.now()); + excludeLiabilitiesRegister.setUpdated(Instant.now()); excludeLiabilitiesRegisterMap.insert(excludeLiabilitiesRegister); + log.debug("inserted successfully ExcludeLiabilitiesRegister entity with id: {}", excludeLiabilitiesRegister.getId()); } private String getSqlForRegistries() { 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 1b4c48321..046d0137b 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 @@ -6,26 +6,36 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.annotation.Autowired; +import ru.clearing.classes.statics.data.company.CompanySymbols; +import ru.clearing.classes.statics.data.misc.Session; import ru.clearing.classes.statics.data.register.LiabilitiesRegister; import ru.clearing.classes.statics.data.registry.Registry; +import ru.clearing.classes.statics.data.security.MoneyMarketSecurity; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; -import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; +import ru.spcex.clearing.platform.messaging.domain.Consts; +import ru.spcex.clearing.platform.messaging.domain.cud.registry.LiabilitiesRegisterNewRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; +import ru.spcex.platform.enumeration.RegistryCapacity; +import ru.spcex.platform.enumeration.RegistryCode; +import ru.spcex.platform.enumeration.RegistryDesignation; +import ru.spcex.platform.enumeration.RegistryInstrumentType; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; +import ru.spcex.platform.utils.time.TimeUtil; +import java.time.Instant; import java.util.Collection; -import java.util.HashMap; -import java.util.List; - -import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT; +import java.util.Map; public class LiabilitiesRegisterService extends QueueConsumer implements InitializingBean { private final Logger log = LoggerFactory.getLogger(getClass()); private final Imdg liabilitiesRegisterMap; private final Imdg registryMap; + private final Imdg sessionMap; + private final Imdg companySymbolsMap; + private final Imdg moneyMarketSecurityMap; @Autowired public LiabilitiesRegisterService(Consumer kafkaQueue, @@ -34,42 +44,83 @@ public class LiabilitiesRegisterService extends QueueConsumer implements Initial super(kafkaQueue, kafkaProducer); this.liabilitiesRegisterMap = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesRegister, LiabilitiesRegister.class); this.registryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.class); + this.sessionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Session, Session.class); + this.companySymbolsMap = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class); + this.moneyMarketSecurityMap = imdgProvider.getImdg(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class); } @Override public void afterPropertiesSet() { - callback(LauncherCommandRequest.class) + callback(LiabilitiesRegisterNewRequest.class) .setConsumer(this::liabilitiesRegisterNew) - .forDestination(createRegistry_GRRT.topic(), callbacks::put);//TODO FIX UP WHAT KIND OF TOPIC + .forDestination(Consts.REGISTRY_LIABILITIES_REGISTER_NEW, callbacks::put); init(); } - public void liabilitiesRegisterNew(BaseRequest userRequest) { - log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC - HashMap sessionIdByCompanyId = new HashMap<>(); - List registries = registryMap.getAllValues().stream().filter((x) -> { - return x.getRegistryDesignation().equalsIgnoreCase("L") && - x.getRegistryCapacity().equalsIgnoreCase("P") && - x.getRegistryCode().equalsIgnoreCase("T") && - (x.getRegistryInstrumentType().equalsIgnoreCase("S") - || x.getRegistryInstrumentType().equalsIgnoreCase("M")); - } - ).toList(); - Collection collection = liabilitiesRegisterMap.getAllValues(); - collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId())); - registries.forEach(x -> { - Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId()); - if (existingCompanySessionId == null) { - insertLiabilitiesRegister(x); + public void liabilitiesRegisterNew(BaseRequest userRequest) { + log.debug("LiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_LIABILITIES_REGISTER_NEW); + String sqlConditionForRegistry = getSqlForRegistries(); + Collection registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry); + //checking for duplicates + registries.forEach((registry -> { + Collection liabilitiesRegisterBySessionIdAndCompanyId = liabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId())); + if (liabilitiesRegisterBySessionIdAndCompanyId == null || liabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) { + insertLiabilitiesRegister(registry); } - }); + } + )); log.debug("successfully processed"); } private void insertLiabilitiesRegister(Registry registry) { + log.trace("Started generating LiabilitiesRegister entity..."); LiabilitiesRegister liabilitiesRegister = new LiabilitiesRegister(); - //TODO FIX UP + Session session = sessionMap.getSingleObjectByFieldValues( + Map.of( + "id", + registry.getCompanyId() + ) + ); + CompanySymbols companySymbols = companySymbolsMap.getSingleObjectByFieldValues( + Map.of("companyId", + registry.getCompanyId(), + "companySymbol", + "INN" + ) + ); + MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getSingleObjectByFieldValues( + Map.of( + "securityId", + registry.getSecurityId() + ) + ); + 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()); + liabilitiesRegister.setUpdated(Instant.now()); liabilitiesRegisterMap.insert(liabilitiesRegister); + log.debug("inserted successfully LiabilitiesRegister entity with id: {}", liabilitiesRegister.getId()); + } + + private String getSqlForRegistries() { + return String.format("registryDesignation = '%s' and " + + "registryInstrumentType in ('%s','%s') and " + + "registryCapacity = '%s' and " + + "registryCode = '%s'", + RegistryDesignation.L.getKey(), + RegistryInstrumentType.S.getKey(), + RegistryInstrumentType.M.getKey(), + RegistryCapacity.P.getKey(), + RegistryCode.T.getKey()); } } 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 da1ca3e8e..d4db80db1 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 @@ -14,13 +14,13 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.platform.messaging.domain.BaseRequest; import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest; import ru.spcex.clearing.platform.messaging.service.QueueConsumer; +import ru.spcex.platform.enumeration.AccountType; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; +import java.time.Instant; import java.util.Collection; -import java.util.HashMap; -import java.util.List; -import java.util.Optional; +import java.util.Map; import static ru.spcex.platform.enumeration.Task.createRegistry_GBRR; @@ -53,33 +53,50 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia public void moneyBalanceRegisterNew(BaseRequest userRequest) { log.debug("LauncherCommandRequest received from {}", createRegistry_GBRR.topic()); - HashMap sessionIdByCompanyId = new HashMap<>(); - List registries = registryMap.getAllValues().stream().filter((x) -> x.getAccountType().equalsIgnoreCase("INFO") || x.getAccountType().equalsIgnoreCase("CLRN")).toList(); - Collection collection = moneyBalanceRegisterMap.getAllValues(); - collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId())); - registries.forEach(x -> { - Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId()); - if (existingCompanySessionId == null) { - insertMoneyBalanceRegister(x); + String sqlConditionForRegistry = getSqlForRegistries(); + Collection registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry); + //checking for duplicates + registries.forEach((registry -> { + Collection moneyBalanceRegisterBySessionIdAndCompanyId = moneyBalanceRegisterMap.getCollectionObjectsByFieldValues( + Map.of( + "companyId", + registry.getCompanyId(), + "sessionId", + registry.getSessionId() + ) + ); + if (moneyBalanceRegisterBySessionIdAndCompanyId == null || moneyBalanceRegisterBySessionIdAndCompanyId.isEmpty()) { + insertMoneyBalanceRegister(registry); } - }); + } + )); log.debug("successfully processed"); } - private void insertMoneyBalanceRegister(Registry registry){ + private void insertMoneyBalanceRegister(Registry registry) { + log.trace("Started generating MoneyBalanceRegister entity..."); MoneyBalanceRegister moneyBalanceRegister = new MoneyBalanceRegister(); - Optional company = companyMap.getAllValues().stream().filter((x)-> x.getId() == 2L).findFirst(); - String setHouseName = company.map(Company::getShortName).orElse(null); + Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 2L)); + CompanySymbols companySymbol = companySymbolsMap.getSingleObjectByFieldValues(Map.of("companyId", registry.getCompanyId())); + String setHouseName = company != null ? company.getShortName() : null; + String inn = companySymbol != null ? companySymbol.getCompanySymbolValue() : null; moneyBalanceRegister.setSetHouseName(setHouseName); moneyBalanceRegister.setAccount(registry.getAccount()); moneyBalanceRegister.setInfoAccount(registry.getAccountType()); moneyBalanceRegister.setRemainderSum(registry.getCloseBalance()); - Optional companySymbol = companySymbolsMap.getAllValues().stream().filter((x)-> x.getCompanyId().equals(registry.getCompanyId())).findFirst(); - String inn = companySymbol.map(CompanySymbols::getCompanySymbolValue).orElse(null); moneyBalanceRegister.setInn(inn); moneyBalanceRegister.setSessionId(registry.getSessionId()); - //moneyBalanceRegister.setCompanyFullName(registry.getCompanyFullName()) todo resolve is it ok that it is empty technical task moneyBalanceRegister.setCompanyId(registry.getCompanyId()); + moneyBalanceRegister.setCreated(Instant.now()); + moneyBalanceRegister.setUpdated(Instant.now()); moneyBalanceRegisterMap.insert(moneyBalanceRegister); + log.debug("inserted successfully MoneyBalanceRegister entity with id: {}", moneyBalanceRegister.getId()); } + + private String getSqlForRegistries() { + return String.format("accountType in ('%s','%s')", + AccountType.Info.getKey(), + AccountType.Clrn.getKey()); + } + } diff --git a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyPaymentInstructionRegisterService.java b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyPaymentInstructionRegisterService.java index ee4f711bc..eaa10d929 100644 --- a/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyPaymentInstructionRegisterService.java +++ b/clearing-parent/registry-service/src/main/java/ru/spcex/clearing/registry/service/MoneyPaymentInstructionRegisterService.java @@ -16,8 +16,9 @@ import ru.spcex.clearing.platform.messaging.service.QueueConsumer; import ru.spcex.platform.imdg.api.Imdg; import ru.spcex.platform.imdg.api.ImdgProvider; -import java.util.HashMap; -import java.util.List; +import java.time.Instant; +import java.util.Collection; +import java.util.Map; import static ru.spcex.platform.enumeration.Task.createRegistry_GORR; @@ -48,16 +49,35 @@ public class MoneyPaymentInstructionRegisterService extends QueueConsumer implem public void moneyPaymentInstructionRegisterNew(BaseRequest userRequest) { log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic()); - HashMap sessionIdByPaymentInstructions = new HashMap<>(); - paymentInstructionMap.getAllValues().stream().forEach(x -> sessionIdByPaymentInstructions.put(x.getSessionId(), x)); - List actualSession = sessionMap.getAllValues().stream().filter(x-> - sessionIdByPaymentInstructions.containsKey(x.getId()) && x.getSection().equalsIgnoreCase("MKR") - ).toList(); - actualSession.forEach(x -> insertMoneyPaymentInstructionRegister(sessionIdByPaymentInstructions.get(x.getId()))); + Collection actualSessions = sessionMap.getCollectionObjectsByFieldValues( + Map.of( + "section", + "MKR" + ) + ); + actualSessions.forEach(session -> { + Collection paymentInstructionBySessionId = + paymentInstructionMap.getCollectionObjectsByFieldValues( + Map.of( + "sessionId", + session.getId() + ) + ); + for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) { + MoneyPaymentInstructionRegister moneyPaymentInstructionRegister = moneyPaymentInstructionRegisterMap.getSingleObjectByFieldValues(Map.of( + "companyId", paymentInstruction.getSenderId(), + "sessionId", paymentInstruction.getSessionId()) + ); + if (moneyPaymentInstructionRegister == null) { + insertMoneyPaymentInstructionRegister(paymentInstruction); + } + } + }); log.debug("successfully processed"); } - private void insertMoneyPaymentInstructionRegister(PaymentInstruction paymentInstruction){ + private void insertMoneyPaymentInstructionRegister(PaymentInstruction paymentInstruction) { + log.trace("Started generating PaymentInstruction entity..."); MoneyPaymentInstructionRegister moneyPaymentInstructionRegister = new MoneyPaymentInstructionRegister(); moneyPaymentInstructionRegister.setCreditLegAccount(paymentInstruction.getCreditLeg_account()); moneyPaymentInstructionRegister.setCreditLegAmount(paymentInstruction.getCreditLeg_amount()); @@ -66,6 +86,9 @@ public class MoneyPaymentInstructionRegisterService extends QueueConsumer implem moneyPaymentInstructionRegister.setSender(paymentInstruction.getSenderId().toString()); moneyPaymentInstructionRegister.setAddressee(paymentInstruction.getAddresseeId().toString()); moneyPaymentInstructionRegister.setClearingDate(paymentInstruction.getClearingDate()); + moneyPaymentInstructionRegister.setCreated(Instant.now()); + moneyPaymentInstructionRegister.setUpdated(Instant.now()); moneyPaymentInstructionRegisterMap.insert(moneyPaymentInstructionRegister); + log.debug("inserted successfully PaymentInstruction entity with id: {}", paymentInstruction.getId()); } } diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/AdmittedLiabilitiesRegisterNewRequest.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/AdmittedLiabilitiesRegisterNewRequest.java index 7f03e7c0a..ccc7ebb63 100644 --- a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/AdmittedLiabilitiesRegisterNewRequest.java +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/AdmittedLiabilitiesRegisterNewRequest.java @@ -1,142 +1,4 @@ package ru.spcex.clearing.platform.messaging.domain.cud.registry; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import ru.spcex.clearing.platform.messaging.domain.json.deserialize.InstantDeserializer; -import ru.spcex.clearing.platform.messaging.domain.json.deserialize.LocalDateDeserializer; -import ru.spcex.clearing.platform.messaging.domain.json.serialize.InstantSerializer; -import ru.spcex.clearing.platform.messaging.domain.json.serialize.LocalDateSerializer; - -import java.math.BigDecimal; -import java.time.Instant; -import java.time.LocalDate; - public class AdmittedLiabilitiesRegisterNewRequest { - @JsonProperty - private String companyFullName; - @JsonProperty - private Long sessionId; - @JsonProperty - private String securitySymbol; - @JsonProperty - private String securityFullName; - @JsonProperty - private Long companyId; - @JsonProperty - private String clearingCode; - @JsonProperty - private String account; - @JsonProperty - private BigDecimal amount; - @JsonProperty - private Long id; - @JsonSerialize(using = InstantSerializer.class) - @JsonDeserialize(using = InstantDeserializer.class) - @JsonProperty - private Instant createdAt; - @JsonSerialize(using = InstantSerializer.class) - @JsonDeserialize(using = InstantDeserializer.class) - @JsonProperty - private Instant updatedAt; - @JsonSerialize(using = LocalDateSerializer.class) - @JsonDeserialize(using = LocalDateDeserializer.class) - @JsonProperty - private LocalDate clearingDate; - - public String getCompanyFullName() { - return companyFullName; - } - - public void setCompanyFullName(String companyFullName) { - this.companyFullName = companyFullName; - } - - public Long getSessionId() { - return sessionId; - } - - public void setSessionId(Long sessionId) { - this.sessionId = sessionId; - } - - public String getSecuritySymbol() { - return securitySymbol; - } - - public void setSecuritySymbol(String securitySymbol) { - this.securitySymbol = securitySymbol; - } - - public String getSecurityFullName() { - return securityFullName; - } - - public void setSecurityFullName(String securityFullName) { - this.securityFullName = securityFullName; - } - - public Long getCompanyId() { - return companyId; - } - - public void setCompanyId(Long companyId) { - this.companyId = companyId; - } - - public String getClearingCode() { - return clearingCode; - } - - public void setClearingCode(String clearingCode) { - this.clearingCode = clearingCode; - } - - public String getAccount() { - return account; - } - - public void setAccount(String account) { - this.account = account; - } - - public BigDecimal getAmount() { - return amount; - } - - public void setAmount(BigDecimal amount) { - this.amount = amount; - } - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public Instant getCreatedAt() { - return createdAt; - } - - public void setCreatedAt(Instant createdAt) { - this.createdAt = createdAt; - } - - public Instant getUpdatedAt() { - return updatedAt; - } - - public void setUpdatedAt(Instant updatedAt) { - this.updatedAt = updatedAt; - } - - public LocalDate getClearingDate() { - return clearingDate; - } - - public void setClearingDate(LocalDate clearingDate) { - this.clearingDate = clearingDate; - } } diff --git a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/CoveredLiabilitiesRegisterNewRequest.java b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/CoveredLiabilitiesRegisterNewRequest.java index 2d4045f76..db29723ba 100644 --- a/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/CoveredLiabilitiesRegisterNewRequest.java +++ b/platform-parent/platform-messaging/src/main/java/ru/spcex/clearing/platform/messaging/domain/cud/registry/CoveredLiabilitiesRegisterNewRequest.java @@ -1,142 +1,4 @@ package ru.spcex.clearing.platform.messaging.domain.cud.registry; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import ru.spcex.clearing.platform.messaging.domain.json.deserialize.InstantDeserializer; -import ru.spcex.clearing.platform.messaging.domain.json.deserialize.LocalDateDeserializer; -import ru.spcex.clearing.platform.messaging.domain.json.serialize.InstantSerializer; -import ru.spcex.clearing.platform.messaging.domain.json.serialize.LocalDateSerializer; - -import java.math.BigDecimal; -import java.time.Instant; -import java.time.LocalDate; - public class CoveredLiabilitiesRegisterNewRequest { - @JsonProperty - private String companyFullName; - @JsonProperty - private Long sessionId; - @JsonProperty - private String securitySymbol; - @JsonProperty - private String securityFullName; - @JsonProperty - private Long companyId; - @JsonProperty - private String clearingCode; - @JsonProperty - private String account; - @JsonProperty - private BigDecimal amount; - @JsonProperty - private Long id; - @JsonSerialize(using = InstantSerializer.class) - @JsonDeserialize(using = InstantDeserializer.class) - @JsonProperty - private Instant createdAt; - @JsonSerialize(using = InstantSerializer.class) - @JsonDeserialize(using = InstantDeserializer.class) - @JsonProperty - private Instant updatedAt; - @JsonSerialize(using = LocalDateSerializer.class) - @JsonDeserialize(using = LocalDateDeserializer.class) - @JsonProperty - private LocalDate clearingDate; - - public String getCompanyFullName() { - return companyFullName; - } - - public void setCompanyFullName(String companyFullName) { - this.companyFullName = companyFullName; - } - - public Long getSessionId() { - return sessionId; - } - - public void setSessionId(Long sessionId) { - this.sessionId = sessionId; - } - - public String getSecuritySymbol() { - return securitySymbol; - } - - public void setSecuritySymbol(String securitySymbol) { - this.securitySymbol = securitySymbol; - } - - public String getSecurityFullName() { - return securityFullName; - } - - public void setSecurityFullName(String securityFullName) { - this.securityFullName = securityFullName; - } - - public Long getCompanyId() { - return companyId; - } - - public void setCompanyId(Long companyId) { - this.companyId = companyId; - } - - public String getClearingCode() { - return clearingCode; - } - - public void setClearingCode(String clearingCode) { - this.clearingCode = clearingCode; - } - - public String getAccount() { - return account; - } - - public void setAccount(String account) { - this.account = account; - } - - public BigDecimal getAmount() { - return amount; - } - - public void setAmount(BigDecimal amount) { - this.amount = amount; - } - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public Instant getCreatedAt() { - return createdAt; - } - - public void setCreatedAt(Instant createdAt) { - this.createdAt = createdAt; - } - - public Instant getUpdatedAt() { - return updatedAt; - } - - public void setUpdatedAt(Instant updatedAt) { - this.updatedAt = updatedAt; - } - - public LocalDate getClearingDate() { - return clearingDate; - } - - public void setClearingDate(LocalDate clearingDate) { - this.clearingDate = clearingDate; - } }