Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
62da31b484
11 changed files with 243 additions and 426 deletions
|
|
@ -42,6 +42,10 @@
|
||||||
<artifactId>spring-boot-starter-test</artifactId>
|
<artifactId>spring-boot-starter-test</artifactId>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ru.spcex.clearing</groupId>
|
||||||
|
<artifactId>dictionary</artifactId>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,8 @@ import ru.clearing.classes.statics.data.registry.Registry;
|
||||||
import ru.clearing.classes.statics.data.security.Security;
|
import ru.clearing.classes.statics.data.security.Security;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
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.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.platform.enumeration.RegistryCapacity;
|
import ru.spcex.platform.enumeration.RegistryCapacity;
|
||||||
import ru.spcex.platform.enumeration.RegistryCode;
|
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.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
import java.util.*;
|
import java.time.Instant;
|
||||||
|
import java.util.Collection;
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
import java.util.Map;
|
||||||
|
|
||||||
public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
@ -46,36 +47,35 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void afterPropertiesSet() {
|
public void afterPropertiesSet() {
|
||||||
callback(LauncherCommandRequest.class)
|
callback(AdmittedLiabilitiesRegisterNewRequest.class)
|
||||||
.setConsumer(this::admittedLiabilitiesRegisterNew)
|
.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();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void admittedLiabilitiesRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void admittedLiabilitiesRegisterNew(BaseRequest<AdmittedLiabilitiesRegisterNewRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC
|
log.debug("AdmittedLiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_ADMITTED_LIABILITIES_REGISTER_NEW);
|
||||||
String sqlConditionForRegistry = getSqlForRegistries();
|
String sqlConditionForRegistry = getSqlForRegistries();
|
||||||
List<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry).stream().toList();
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry);
|
||||||
HashMap<Long, Long> sessionIdByCompanyId = new HashMap<>();
|
registries.forEach((registry -> {
|
||||||
Collection<AdmittedLiabilitiesRegister> collection = admittedLiabilitiesRegisterMap.getAllValues(); //there should be checked all values cause we can have a lot of registries
|
Collection<AdmittedLiabilitiesRegister> admittedLiabilitiesRegistersBySessionIdAndCompanyId = admittedLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId()));
|
if (admittedLiabilitiesRegistersBySessionIdAndCompanyId == null || admittedLiabilitiesRegistersBySessionIdAndCompanyId.isEmpty()) {
|
||||||
registries.forEach(x -> {
|
insertAdmittedLiabilitiesRegister(registry);
|
||||||
Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId());
|
|
||||||
if (existingCompanySessionId == null) {
|
|
||||||
insertAdmittedLiabilitiesRegister(x);
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
log.debug("successfully processed");
|
));
|
||||||
|
log.debug("Successfully processed..");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void insertAdmittedLiabilitiesRegister(Registry registry) {
|
private void insertAdmittedLiabilitiesRegister(Registry registry) {
|
||||||
|
log.trace("Started generating AdmittedLiabilitiesRegister entity...");
|
||||||
AdmittedLiabilitiesRegister admittedLiabilitiesRegister = new AdmittedLiabilitiesRegister();
|
AdmittedLiabilitiesRegister admittedLiabilitiesRegister = new AdmittedLiabilitiesRegister();
|
||||||
Optional<Company> company = companyMap.getCollectionObjectsByFieldValues(Map.of("id", 1L)).stream().findFirst();
|
Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 1L));
|
||||||
Optional<Security> security = securityMap.getCollectionObjectsByFieldValues(Map.of("id", registry.getSecurityId())).stream().findFirst();
|
Security security = securityMap.getSingleObjectByFieldValues(Map.of("id", registry.getSecurityId()));
|
||||||
String securitySymbol = security.map(Security::getSecuritySymbol).orElse(null);
|
String securitySymbol = security != null ? security.getSecuritySymbol() : null;
|
||||||
String securityFullName = security.map(Security::getShortName).orElse(null);
|
String securityFullName = security != null ? security.getShortName() : null;
|
||||||
String companyFullName = company.map(Company::getFullName).orElse(null);
|
String companyFullName = security != null ? company.getFullName() : null;
|
||||||
admittedLiabilitiesRegister.setCompanyFullName(companyFullName);
|
admittedLiabilitiesRegister.setCompanyFullName(companyFullName);
|
||||||
admittedLiabilitiesRegister.setSessionId(registry.getSessionId());
|
admittedLiabilitiesRegister.setSessionId(registry.getSessionId());
|
||||||
admittedLiabilitiesRegister.setSecuritySymbol(securitySymbol);
|
admittedLiabilitiesRegister.setSecuritySymbol(securitySymbol);
|
||||||
|
|
@ -85,9 +85,13 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
admittedLiabilitiesRegister.setAccount(registry.getAccount());
|
admittedLiabilitiesRegister.setAccount(registry.getAccount());
|
||||||
admittedLiabilitiesRegister.setAmount(registry.getBalance());
|
admittedLiabilitiesRegister.setAmount(registry.getBalance());
|
||||||
admittedLiabilitiesRegister.setClearingDate(registry.getClearingDate());
|
admittedLiabilitiesRegister.setClearingDate(registry.getClearingDate());
|
||||||
|
admittedLiabilitiesRegister.setCreated(Instant.now());
|
||||||
|
admittedLiabilitiesRegister.setUpdated(Instant.now());
|
||||||
admittedLiabilitiesRegisterMap.insert(admittedLiabilitiesRegister);
|
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 " +
|
return String.format("registryDesignation = '%s' and " +
|
||||||
"registryInstrumentType in ('%s','%s') and " +
|
"registryInstrumentType in ('%s','%s') and " +
|
||||||
"registryCapacity = '%s' and " +
|
"registryCapacity = '%s' and " +
|
||||||
|
|
|
||||||
|
|
@ -12,19 +12,17 @@ import ru.clearing.classes.statics.data.registry.Registry;
|
||||||
import ru.clearing.classes.statics.data.security.Security;
|
import ru.clearing.classes.statics.data.security.Security;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
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.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.platform.enumeration.*;
|
import ru.spcex.platform.enumeration.*;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
|
import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
|
||||||
|
|
||||||
public class CoveredLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
public class CoveredLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
|
@ -46,28 +44,25 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void afterPropertiesSet() {
|
public void afterPropertiesSet() {
|
||||||
callback(LauncherCommandRequest.class)
|
callback(CoveredLiabilitiesRegisterNewRequest.class)
|
||||||
.setConsumer(this::coveredLiabilitiesRegisterNew)
|
.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();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void coveredLiabilitiesRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void coveredLiabilitiesRegisterNew(BaseRequest<CoveredLiabilitiesRegisterNewRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC
|
log.debug("CoveredLiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_COVERED_LIABILITIES_REGISTER_NEW);
|
||||||
HashMap<Long, Long> sessionIdByCompanyId = new HashMap<>();
|
|
||||||
String sqlConditionForRegistry = getSqlForRegistries();
|
String sqlConditionForRegistry = getSqlForRegistries();
|
||||||
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry);
|
||||||
List<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry).stream().toList();
|
|
||||||
//checking for duplicates
|
//checking for duplicates
|
||||||
Collection<CoveredLiabilitiesRegister> collection = coveredLiabilitiesRegisterMap.getAllValues();
|
registries.forEach((registry -> {
|
||||||
collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId()));
|
Collection<CoveredLiabilitiesRegister> coveredLiabilitiesRegisterBySessionIdAndCompanyId = coveredLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
registries.forEach(x -> {
|
if (coveredLiabilitiesRegisterBySessionIdAndCompanyId == null || coveredLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId());
|
insertCoveredLiabilitiesRegister(registry);
|
||||||
if (existingCompanySessionId == null) {
|
|
||||||
insertCoveredLiabilitiesRegister(x);
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
));
|
||||||
log.debug("successfully processed");
|
log.debug("successfully processed");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -88,6 +83,8 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
coveredLiabilitiesRegister.setAccount(registry.getAccount());
|
coveredLiabilitiesRegister.setAccount(registry.getAccount());
|
||||||
coveredLiabilitiesRegister.setAmount(registry.getBalance());
|
coveredLiabilitiesRegister.setAmount(registry.getBalance());
|
||||||
coveredLiabilitiesRegister.setClearingDate(registry.getClearingDate());
|
coveredLiabilitiesRegister.setClearingDate(registry.getClearingDate());
|
||||||
|
coveredLiabilitiesRegister.setCreated(Instant.now());
|
||||||
|
coveredLiabilitiesRegister.setUpdated(Instant.now());
|
||||||
coveredLiabilitiesRegisterMap.insert(coveredLiabilitiesRegister);
|
coveredLiabilitiesRegisterMap.insert(coveredLiabilitiesRegister);
|
||||||
log.debug("CoveredLiabilitiesRegister inserted successfully with id: {}", coveredLiabilitiesRegister.getId());
|
log.debug("CoveredLiabilitiesRegister inserted successfully with id: {}", coveredLiabilitiesRegister.getId());
|
||||||
}
|
}
|
||||||
|
|
@ -97,8 +94,7 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
"registryInstrumentType in ('%s','%s') and " +
|
"registryInstrumentType in ('%s','%s') and " +
|
||||||
"registryCapacity = '%s' and " +
|
"registryCapacity = '%s' and " +
|
||||||
"registryCode = '%s' and" +
|
"registryCode = '%s' and" +
|
||||||
"registryStatus in ('%s', '%s')"
|
"registryStatus in ('%s', '%s')",
|
||||||
,
|
|
||||||
RegistryDesignation.O.getKey(),
|
RegistryDesignation.O.getKey(),
|
||||||
RegistryInstrumentType.S.getKey(),
|
RegistryInstrumentType.S.getKey(),
|
||||||
RegistryInstrumentType.M.getKey(),
|
RegistryInstrumentType.M.getKey(),
|
||||||
|
|
|
||||||
|
|
@ -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.BaseRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
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.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.Map;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
||||||
|
|
||||||
|
|
@ -50,19 +49,16 @@ public class DepoBalanceRegisterService extends QueueConsumer implements Initial
|
||||||
|
|
||||||
public void depoBalanceRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void depoBalanceRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic());
|
log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic());
|
||||||
HashMap<Long, Long> sessionIdByCompanyId = new HashMap<>();
|
|
||||||
|
|
||||||
String sqlForRegistries = getSqlForRegistries();
|
String sqlForRegistries = getSqlForRegistries();
|
||||||
List<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries).stream().toList();
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries);
|
||||||
log.trace("Started searching depoBalanceRegister in register by companyId, sessionId...");
|
log.trace("Started searching depoBalanceRegister in register by companyId, sessionId...");
|
||||||
Collection<DepoBalanceRegister> collection = depoBalanceRegisterMap.getAllValues();
|
registries.forEach((registry -> {
|
||||||
collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId()));
|
Collection<DepoBalanceRegister> depoBalanceRegisterBySessionIdAndCompanyId = depoBalanceRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
registries.forEach(x -> {
|
if (depoBalanceRegisterBySessionIdAndCompanyId == null || depoBalanceRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId());
|
insertDepoBalanceRegister(registry);
|
||||||
if (existingCompanySessionId == null) {
|
|
||||||
insertDepoBalanceRegister(x);
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
));
|
||||||
log.debug("Successfully processed");
|
log.debug("Successfully processed");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -76,12 +72,15 @@ public class DepoBalanceRegisterService extends QueueConsumer implements Initial
|
||||||
depoBalanceRegister.setDepoCode(registry.getAccountType());
|
depoBalanceRegister.setDepoCode(registry.getAccountType());
|
||||||
depoBalanceRegister.setQuantity(registry.getCloseBalance());
|
depoBalanceRegister.setQuantity(registry.getCloseBalance());
|
||||||
depoBalanceRegister.setSecuritySymbol(registry.getSecuritySymbol());
|
depoBalanceRegister.setSecuritySymbol(registry.getSecuritySymbol());
|
||||||
|
depoBalanceRegister.setCreated(Instant.now());
|
||||||
|
depoBalanceRegister.setUpdated(Instant.now());
|
||||||
depoBalanceRegisterMap.insert(depoBalanceRegister);
|
depoBalanceRegisterMap.insert(depoBalanceRegister);
|
||||||
log.debug("inserted successfully DepoBalanceRegister entity with id: {}", depoBalanceRegister.getId());
|
log.debug("inserted successfully DepoBalanceRegister entity with id: {}", depoBalanceRegister.getId());
|
||||||
}
|
}
|
||||||
private String getSqlForRegistries(){
|
|
||||||
|
private String getSqlForRegistries() {
|
||||||
log.trace("Started generating sql predicate for registries...");
|
log.trace("Started generating sql predicate for registries...");
|
||||||
return String.format("accountType = '%s'",
|
return String.format("accountType = '%s'",
|
||||||
AccountType.Depo.getKey());
|
AccountType.Depo.getKey());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -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.payment.PaymentInstruction;
|
||||||
import ru.clearing.classes.statics.data.register.DepoPaymentInstructionRegister;
|
import ru.clearing.classes.statics.data.register.DepoPaymentInstructionRegister;
|
||||||
import ru.clearing.classes.statics.data.registry.TradingClearingRegistry;
|
import ru.clearing.classes.statics.data.registry.TradingClearingRegistry;
|
||||||
|
import ru.clearing.platform.dictionary.InOutDirectionDictionary;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
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.cud.schedule.LauncherCommandRequest;
|
||||||
|
|
@ -19,7 +20,6 @@ import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
||||||
|
|
@ -32,7 +32,7 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
private final Imdg<PaymentInstruction> paymentInstructionMap;
|
private final Imdg<PaymentInstruction> paymentInstructionMap;
|
||||||
private final Imdg<Session> sessionMap;
|
private final Imdg<Session> sessionMap;
|
||||||
private final Imdg<TradingClearingRegistry> tradingClearingRegistryMap;
|
private final Imdg<TradingClearingRegistry> tradingClearingRegistryMap;
|
||||||
|
private final Imdg<InOutDirectionDictionary> InOutDirectionDictionaryMap;
|
||||||
@Autowired
|
@Autowired
|
||||||
public DepoPaymentInstructionRegisterService(Consumer<String, Object> kafkaQueue,
|
public DepoPaymentInstructionRegisterService(Consumer<String, Object> kafkaQueue,
|
||||||
Producer<String, Object> kafkaProducer,
|
Producer<String, Object> kafkaProducer,
|
||||||
|
|
@ -42,6 +42,7 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
this.paymentInstructionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_PaymentInstruction, PaymentInstruction.class);
|
this.paymentInstructionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_PaymentInstruction, PaymentInstruction.class);
|
||||||
this.sessionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Session, Session.class);
|
this.sessionMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Session, Session.class);
|
||||||
this.tradingClearingRegistryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
this.tradingClearingRegistryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
||||||
|
this.InOutDirectionDictionaryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_InOutDirectionDictionary, InOutDirectionDictionary.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -55,7 +56,6 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
|
|
||||||
public void depoPaymentInstructionRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void depoPaymentInstructionRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic());
|
log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic());
|
||||||
HashMap<Long, PaymentInstruction> sessionIdByPaymentInstructions = new HashMap<>();
|
|
||||||
Collection<Session> actualSessions = sessionMap.getCollectionObjectsByFieldValues(Map.of("section", "FOND"));
|
Collection<Session> actualSessions = sessionMap.getCollectionObjectsByFieldValues(Map.of("section", "FOND"));
|
||||||
|
|
||||||
for (Session session : actualSessions) {
|
for (Session session : actualSessions) {
|
||||||
|
|
@ -68,8 +68,6 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
);
|
);
|
||||||
if (depoPaymentInstructionRegister == null){
|
if (depoPaymentInstructionRegister == null){
|
||||||
insertDepoPaymentInstructionRegister(paymentInstruction);
|
insertDepoPaymentInstructionRegister(paymentInstruction);
|
||||||
} else {
|
|
||||||
//todo update??
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -80,18 +78,19 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
private void insertDepoPaymentInstructionRegister(PaymentInstruction paymentInstruction) {
|
private void insertDepoPaymentInstructionRegister(PaymentInstruction paymentInstruction) {
|
||||||
log.trace("Started generating DepoPaymentInstructionRegister entity...");
|
log.trace("Started generating DepoPaymentInstructionRegister entity...");
|
||||||
DepoPaymentInstructionRegister depoPaymentInstructionRegister = new DepoPaymentInstructionRegister();
|
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.getSenderId()));
|
||||||
//TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getSingleObjectByFieldValues(Map.of("companyId", paymentInstruction.getCompanyId()));
|
InOutDirectionDictionary inOutDirectionDictionary = InOutDirectionDictionaryMap.getSingleObjectByFieldValues(Map.of("code", paymentInstruction.getCreditLeg_direction()));
|
||||||
depoPaymentInstructionRegister.setCreated(Instant.now());
|
depoPaymentInstructionRegister.setCreated(Instant.now());
|
||||||
depoPaymentInstructionRegister.setUpdated(Instant.now());
|
depoPaymentInstructionRegister.setUpdated(Instant.now());
|
||||||
depoPaymentInstructionRegister.setCompanyId(paymentInstruction.getSenderId());
|
depoPaymentInstructionRegister.setCompanyId(paymentInstruction.getSenderId());
|
||||||
//todo fix up depoPaymentInstructionRegister.setTradingClearingRegistryType();
|
depoPaymentInstructionRegister.setTradingClearingRegistryType(tradingClearingRegistry.getTradingClearingRegistryType() );
|
||||||
//todo fix up depoPaymentInstructionRegister.setTradingClearingRegistry();
|
depoPaymentInstructionRegister.setTradingClearingRegistry(tradingClearingRegistry.getCode());
|
||||||
depoPaymentInstructionRegister.setCbCode("RNCB-BE-01"); //TODO CLARIFY THERE SHOULD BE VALUE =RNCB-BE-01 OR RNCB-BE-01
|
depoPaymentInstructionRegister.setCbCode("RNCB-BE-01");
|
||||||
depoPaymentInstructionRegister.setQuantity(paymentInstruction.getCreditLeg_amount());
|
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.setSessionId(paymentInstruction.getSessionId());
|
||||||
|
depoPaymentInstructionRegister.setCreated(Instant.now());
|
||||||
|
depoPaymentInstructionRegister.setUpdated(Instant.now());
|
||||||
depoPaymentInstructionRegisterMap.insert(depoPaymentInstructionRegister);
|
depoPaymentInstructionRegisterMap.insert(depoPaymentInstructionRegister);
|
||||||
log.debug("inserted successfully DepoBalanceRegister entity with id: {}", depoPaymentInstructionRegister.getId());
|
log.debug("inserted successfully DepoBalanceRegister entity with id: {}", depoPaymentInstructionRegister.getId());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,29 +2,28 @@ package ru.spcex.clearing.registry.service;
|
||||||
|
|
||||||
import org.apache.kafka.clients.consumer.Consumer;
|
import org.apache.kafka.clients.consumer.Consumer;
|
||||||
import org.apache.kafka.clients.producer.Producer;
|
import org.apache.kafka.clients.producer.Producer;
|
||||||
import org.apache.logging.log4j.util.StringMap;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.InitializingBean;
|
import org.springframework.beans.factory.InitializingBean;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
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.misc.Session;
|
||||||
import ru.clearing.classes.statics.data.register.ExcludeLiabilitiesRegister;
|
import ru.clearing.classes.statics.data.register.ExcludeLiabilitiesRegister;
|
||||||
import ru.clearing.classes.statics.data.registry.Registry;
|
import ru.clearing.classes.statics.data.registry.Registry;
|
||||||
import ru.clearing.classes.statics.data.security.MoneyMarketSecurity;
|
import ru.clearing.classes.statics.data.security.MoneyMarketSecurity;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
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.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.platform.enumeration.*;
|
import ru.spcex.platform.enumeration.*;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
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.LocalDate;
|
||||||
import java.time.ZoneId;
|
import java.util.Collection;
|
||||||
import java.util.*;
|
import java.util.Map;
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
|
||||||
|
|
||||||
public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
@ -49,51 +48,52 @@ public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void afterPropertiesSet() {
|
public void afterPropertiesSet() {
|
||||||
callback(LauncherCommandRequest.class)
|
callback(ExcludeLiabilitiesRegisterNewRequest.class)
|
||||||
.setConsumer(this::excludeLiabilitiesRegisterNew)
|
.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();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void excludeLiabilitiesRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void excludeLiabilitiesRegisterNew(BaseRequest<ExcludeLiabilitiesRegisterNewRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC
|
log.debug("ExcludeLiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_EXCLUDE_LIABILITIES_REGISTER_NEW);
|
||||||
HashMap<Long, Long> sessionIdByCompanyId = new HashMap<>();
|
|
||||||
String sqlForRegistries = getSqlForRegistries();
|
String sqlForRegistries = getSqlForRegistries();
|
||||||
List<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries).stream().toList();
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlForRegistries);
|
||||||
Collection<ExcludeLiabilitiesRegister> collection = excludeLiabilitiesRegisterMap.getAllValues();
|
registries.forEach((registry -> {
|
||||||
collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId()));
|
Collection<ExcludeLiabilitiesRegister> excludeLiabilitiesRegisterBySessionIdAndCompanyId = excludeLiabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
registries.forEach(x -> {
|
if (excludeLiabilitiesRegisterBySessionIdAndCompanyId == null || excludeLiabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId());
|
insertExcludeLiabilitiesRegister(registry);
|
||||||
if (existingCompanySessionId == null) {
|
|
||||||
insertExcludeLiabilitiesRegister(x);
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
));
|
||||||
log.debug("successfully processed");
|
log.debug("successfully processed");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void insertExcludeLiabilitiesRegister(Registry registry) {
|
private void insertExcludeLiabilitiesRegister(Registry registry) {
|
||||||
|
log.trace("Started generating ExcludeLiabilitiesRegister entity...");
|
||||||
ExcludeLiabilitiesRegister excludeLiabilitiesRegister = new ExcludeLiabilitiesRegister();
|
ExcludeLiabilitiesRegister excludeLiabilitiesRegister = new ExcludeLiabilitiesRegister();
|
||||||
//hz communicating
|
//hz communicating
|
||||||
Session sessionBySessionId = sessionMap.getSingleObjectByFieldValues(Map.of("clearingDate", registry.getSessionId()));
|
Session sessionBySessionId = sessionMap.getSingleObjectByFieldValues(Map.of("clearingDate", registry.getSessionId()));
|
||||||
LocalDate validToDate = LocalDate.ofInstant(sessionBySessionId.getUpdated(), ZoneId.systemDefault());
|
LocalDate validToDate = TimeUtil.toLocalDate(sessionBySessionId.getUpdated());
|
||||||
Map<String, ? extends Comparable<?>> innPredicates = Map.of("companySymbol", "INN","companyId", registry.getCompanyId());
|
Map<String, ? extends Comparable<?>> innPredicates = Map.of("companySymbol", "INN", "companyId", registry.getCompanyId());
|
||||||
ru.clearing.classes.statics.data.company.CompanySymbols companySymbol = companySymbolMap.getSingleObjectByFieldValues(innPredicates);
|
ru.clearing.classes.statics.data.company.CompanySymbols companySymbol = companySymbolMap.getSingleObjectByFieldValues(innPredicates);
|
||||||
MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getSingleObjectByFieldValues(Map.of("securityId", registry.getSecurityId()));
|
MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getSingleObjectByFieldValues(Map.of("securityId", registry.getSecurityId()));
|
||||||
|
|
||||||
excludeLiabilitiesRegister.setSessionId(registry.getSessionId());
|
excludeLiabilitiesRegister.setSessionId(registry.getSessionId());
|
||||||
excludeLiabilitiesRegister.setValidFromDate(sessionBySessionId.getClearingDate());
|
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.setCompanyId(registry.getCompanyId());
|
||||||
excludeLiabilitiesRegister.setCompanyFullName(""); //TODO CLARIFY HOW IT SHOULD BE FILLED
|
|
||||||
excludeLiabilitiesRegister.setInn(companySymbol.getCompanySymbolValue());
|
excludeLiabilitiesRegister.setInn(companySymbol.getCompanySymbolValue());
|
||||||
excludeLiabilitiesRegister.setRegistryCode(registry.getRegistryCode());
|
excludeLiabilitiesRegister.setRegistryCode(registry.getRegistryCode());
|
||||||
excludeLiabilitiesRegister.setAccount(registry.getAccount());
|
excludeLiabilitiesRegister.setAccount(registry.getAccount());
|
||||||
excludeLiabilitiesRegister.setRegistryStatus(registry.getRegistryStatus());
|
excludeLiabilitiesRegister.setRegistryStatus(registry.getRegistryStatus());
|
||||||
excludeLiabilitiesRegister.setCurrency(moneyMarketSecurity.getNominalCurrency()); // TODO IS moneyMarketSecurity.currency NOMINAL CURRENCY
|
excludeLiabilitiesRegister.setCurrency(moneyMarketSecurity.getNominalCurrency());
|
||||||
excludeLiabilitiesRegister.setSumLiabilities(registry.getBalance());
|
excludeLiabilitiesRegister.setSumLiabilities(registry.getBalance());
|
||||||
excludeLiabilitiesRegister.setSettlementDate(registry.getSettlementDate());
|
excludeLiabilitiesRegister.setSettlementDate(registry.getSettlementDate());
|
||||||
|
excludeLiabilitiesRegister.setCreated(Instant.now());
|
||||||
|
excludeLiabilitiesRegister.setUpdated(Instant.now());
|
||||||
excludeLiabilitiesRegisterMap.insert(excludeLiabilitiesRegister);
|
excludeLiabilitiesRegisterMap.insert(excludeLiabilitiesRegister);
|
||||||
|
log.debug("inserted successfully ExcludeLiabilitiesRegister entity with id: {}", excludeLiabilitiesRegister.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
private String getSqlForRegistries() {
|
private String getSqlForRegistries() {
|
||||||
|
|
|
||||||
|
|
@ -6,26 +6,36 @@ import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.InitializingBean;
|
import org.springframework.beans.factory.InitializingBean;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
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.register.LiabilitiesRegister;
|
||||||
import ru.clearing.classes.statics.data.registry.Registry;
|
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.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
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.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.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
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.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.Map;
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GRRT;
|
|
||||||
|
|
||||||
public class LiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
public class LiabilitiesRegisterService extends QueueConsumer implements InitializingBean {
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
private final Imdg<LiabilitiesRegister> liabilitiesRegisterMap;
|
private final Imdg<LiabilitiesRegister> liabilitiesRegisterMap;
|
||||||
private final Imdg<Registry> registryMap;
|
private final Imdg<Registry> registryMap;
|
||||||
|
private final Imdg<Session> sessionMap;
|
||||||
|
private final Imdg<CompanySymbols> companySymbolsMap;
|
||||||
|
private final Imdg<MoneyMarketSecurity> moneyMarketSecurityMap;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public LiabilitiesRegisterService(Consumer<String, Object> kafkaQueue,
|
public LiabilitiesRegisterService(Consumer<String, Object> kafkaQueue,
|
||||||
|
|
@ -34,42 +44,83 @@ public class LiabilitiesRegisterService extends QueueConsumer implements Initial
|
||||||
super(kafkaQueue, kafkaProducer);
|
super(kafkaQueue, kafkaProducer);
|
||||||
this.liabilitiesRegisterMap = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesRegister, LiabilitiesRegister.class);
|
this.liabilitiesRegisterMap = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesRegister, LiabilitiesRegister.class);
|
||||||
this.registryMap = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.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
|
@Override
|
||||||
public void afterPropertiesSet() {
|
public void afterPropertiesSet() {
|
||||||
callback(LauncherCommandRequest.class)
|
callback(LiabilitiesRegisterNewRequest.class)
|
||||||
.setConsumer(this::liabilitiesRegisterNew)
|
.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();
|
init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public void liabilitiesRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void liabilitiesRegisterNew(BaseRequest<LiabilitiesRegisterNewRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GRRT.topic()); //TODO FIX UP WHAT KIND OF TOPIC
|
log.debug("LiabilitiesRegisterNewRequest received from {}", Consts.REGISTRY_LIABILITIES_REGISTER_NEW);
|
||||||
HashMap<Long, Long> sessionIdByCompanyId = new HashMap<>();
|
String sqlConditionForRegistry = getSqlForRegistries();
|
||||||
List<Registry> registries = registryMap.getAllValues().stream().filter((x) -> {
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry);
|
||||||
return x.getRegistryDesignation().equalsIgnoreCase("L") &&
|
//checking for duplicates
|
||||||
x.getRegistryCapacity().equalsIgnoreCase("P") &&
|
registries.forEach((registry -> {
|
||||||
x.getRegistryCode().equalsIgnoreCase("T") &&
|
Collection<LiabilitiesRegister> liabilitiesRegisterBySessionIdAndCompanyId = liabilitiesRegisterMap.getCollectionObjectsByFieldValues(Map.of("companyId", registry.getCompanyId(), "sessionId", registry.getSessionId()));
|
||||||
(x.getRegistryInstrumentType().equalsIgnoreCase("S")
|
if (liabilitiesRegisterBySessionIdAndCompanyId == null || liabilitiesRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
|| x.getRegistryInstrumentType().equalsIgnoreCase("M"));
|
insertLiabilitiesRegister(registry);
|
||||||
}
|
|
||||||
).toList();
|
|
||||||
Collection<LiabilitiesRegister> 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);
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
));
|
||||||
log.debug("successfully processed");
|
log.debug("successfully processed");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void insertLiabilitiesRegister(Registry registry) {
|
private void insertLiabilitiesRegister(Registry registry) {
|
||||||
|
log.trace("Started generating LiabilitiesRegister entity...");
|
||||||
LiabilitiesRegister liabilitiesRegister = new LiabilitiesRegister();
|
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);
|
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());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -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.BaseRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.schedule.LauncherCommandRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
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.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
|
import java.time.Instant;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.Map;
|
||||||
import java.util.List;
|
|
||||||
import java.util.Optional;
|
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GBRR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GBRR;
|
||||||
|
|
||||||
|
|
@ -53,33 +53,50 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia
|
||||||
|
|
||||||
public void moneyBalanceRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void moneyBalanceRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GBRR.topic());
|
log.debug("LauncherCommandRequest received from {}", createRegistry_GBRR.topic());
|
||||||
HashMap<Long, Long> sessionIdByCompanyId = new HashMap<>();
|
String sqlConditionForRegistry = getSqlForRegistries();
|
||||||
List<Registry> registries = registryMap.getAllValues().stream().filter((x) -> x.getAccountType().equalsIgnoreCase("INFO") || x.getAccountType().equalsIgnoreCase("CLRN")).toList();
|
Collection<Registry> registries = registryMap.getCollectionObjectsBySQL(sqlConditionForRegistry);
|
||||||
Collection<MoneyBalanceRegister> collection = moneyBalanceRegisterMap.getAllValues();
|
//checking for duplicates
|
||||||
collection.forEach(x -> sessionIdByCompanyId.put(x.getCompanyId(), x.getSessionId()));
|
registries.forEach((registry -> {
|
||||||
registries.forEach(x -> {
|
Collection<MoneyBalanceRegister> moneyBalanceRegisterBySessionIdAndCompanyId = moneyBalanceRegisterMap.getCollectionObjectsByFieldValues(
|
||||||
Long existingCompanySessionId = sessionIdByCompanyId.get(x.getCompanyId());
|
Map.of(
|
||||||
if (existingCompanySessionId == null) {
|
"companyId",
|
||||||
insertMoneyBalanceRegister(x);
|
registry.getCompanyId(),
|
||||||
|
"sessionId",
|
||||||
|
registry.getSessionId()
|
||||||
|
)
|
||||||
|
);
|
||||||
|
if (moneyBalanceRegisterBySessionIdAndCompanyId == null || moneyBalanceRegisterBySessionIdAndCompanyId.isEmpty()) {
|
||||||
|
insertMoneyBalanceRegister(registry);
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
));
|
||||||
log.debug("successfully processed");
|
log.debug("successfully processed");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void insertMoneyBalanceRegister(Registry registry){
|
private void insertMoneyBalanceRegister(Registry registry) {
|
||||||
|
log.trace("Started generating MoneyBalanceRegister entity...");
|
||||||
MoneyBalanceRegister moneyBalanceRegister = new MoneyBalanceRegister();
|
MoneyBalanceRegister moneyBalanceRegister = new MoneyBalanceRegister();
|
||||||
Optional<Company> company = companyMap.getAllValues().stream().filter((x)-> x.getId() == 2L).findFirst();
|
Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 2L));
|
||||||
String setHouseName = company.map(Company::getShortName).orElse(null);
|
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.setSetHouseName(setHouseName);
|
||||||
moneyBalanceRegister.setAccount(registry.getAccount());
|
moneyBalanceRegister.setAccount(registry.getAccount());
|
||||||
moneyBalanceRegister.setInfoAccount(registry.getAccountType());
|
moneyBalanceRegister.setInfoAccount(registry.getAccountType());
|
||||||
moneyBalanceRegister.setRemainderSum(registry.getCloseBalance());
|
moneyBalanceRegister.setRemainderSum(registry.getCloseBalance());
|
||||||
Optional<CompanySymbols> companySymbol = companySymbolsMap.getAllValues().stream().filter((x)-> x.getCompanyId().equals(registry.getCompanyId())).findFirst();
|
|
||||||
String inn = companySymbol.map(CompanySymbols::getCompanySymbolValue).orElse(null);
|
|
||||||
moneyBalanceRegister.setInn(inn);
|
moneyBalanceRegister.setInn(inn);
|
||||||
moneyBalanceRegister.setSessionId(registry.getSessionId());
|
moneyBalanceRegister.setSessionId(registry.getSessionId());
|
||||||
//moneyBalanceRegister.setCompanyFullName(registry.getCompanyFullName()) todo resolve is it ok that it is empty technical task
|
|
||||||
moneyBalanceRegister.setCompanyId(registry.getCompanyId());
|
moneyBalanceRegister.setCompanyId(registry.getCompanyId());
|
||||||
|
moneyBalanceRegister.setCreated(Instant.now());
|
||||||
|
moneyBalanceRegister.setUpdated(Instant.now());
|
||||||
moneyBalanceRegisterMap.insert(moneyBalanceRegister);
|
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());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -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.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.time.Instant;
|
||||||
import java.util.List;
|
import java.util.Collection;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
import static ru.spcex.platform.enumeration.Task.createRegistry_GORR;
|
||||||
|
|
||||||
|
|
@ -48,16 +49,35 @@ public class MoneyPaymentInstructionRegisterService extends QueueConsumer implem
|
||||||
|
|
||||||
public void moneyPaymentInstructionRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
public void moneyPaymentInstructionRegisterNew(BaseRequest<LauncherCommandRequest> userRequest) {
|
||||||
log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic());
|
log.debug("LauncherCommandRequest received from {}", createRegistry_GORR.topic());
|
||||||
HashMap<Long, PaymentInstruction> sessionIdByPaymentInstructions = new HashMap<>();
|
Collection<Session> actualSessions = sessionMap.getCollectionObjectsByFieldValues(
|
||||||
paymentInstructionMap.getAllValues().stream().forEach(x -> sessionIdByPaymentInstructions.put(x.getSessionId(), x));
|
Map.of(
|
||||||
List<Session> actualSession = sessionMap.getAllValues().stream().filter(x->
|
"section",
|
||||||
sessionIdByPaymentInstructions.containsKey(x.getId()) && x.getSection().equalsIgnoreCase("MKR")
|
"MKR"
|
||||||
).toList();
|
)
|
||||||
actualSession.forEach(x -> insertMoneyPaymentInstructionRegister(sessionIdByPaymentInstructions.get(x.getId())));
|
);
|
||||||
|
actualSessions.forEach(session -> {
|
||||||
|
Collection <PaymentInstruction> 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");
|
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 moneyPaymentInstructionRegister = new MoneyPaymentInstructionRegister();
|
||||||
moneyPaymentInstructionRegister.setCreditLegAccount(paymentInstruction.getCreditLeg_account());
|
moneyPaymentInstructionRegister.setCreditLegAccount(paymentInstruction.getCreditLeg_account());
|
||||||
moneyPaymentInstructionRegister.setCreditLegAmount(paymentInstruction.getCreditLeg_amount());
|
moneyPaymentInstructionRegister.setCreditLegAmount(paymentInstruction.getCreditLeg_amount());
|
||||||
|
|
@ -66,6 +86,9 @@ public class MoneyPaymentInstructionRegisterService extends QueueConsumer implem
|
||||||
moneyPaymentInstructionRegister.setSender(paymentInstruction.getSenderId().toString());
|
moneyPaymentInstructionRegister.setSender(paymentInstruction.getSenderId().toString());
|
||||||
moneyPaymentInstructionRegister.setAddressee(paymentInstruction.getAddresseeId().toString());
|
moneyPaymentInstructionRegister.setAddressee(paymentInstruction.getAddresseeId().toString());
|
||||||
moneyPaymentInstructionRegister.setClearingDate(paymentInstruction.getClearingDate());
|
moneyPaymentInstructionRegister.setClearingDate(paymentInstruction.getClearingDate());
|
||||||
|
moneyPaymentInstructionRegister.setCreated(Instant.now());
|
||||||
|
moneyPaymentInstructionRegister.setUpdated(Instant.now());
|
||||||
moneyPaymentInstructionRegisterMap.insert(moneyPaymentInstructionRegister);
|
moneyPaymentInstructionRegisterMap.insert(moneyPaymentInstructionRegister);
|
||||||
|
log.debug("inserted successfully PaymentInstruction entity with id: {}", paymentInstruction.getId());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,142 +1,4 @@
|
||||||
package ru.spcex.clearing.platform.messaging.domain.cud.registry;
|
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 {
|
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;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,142 +1,4 @@
|
||||||
package ru.spcex.clearing.platform.messaging.domain.cud.registry;
|
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 {
|
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;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue