refactor IMDG getSingle* -> getFirst*
This commit is contained in:
parent
8da9583854
commit
e184c68be2
115 changed files with 300 additions and 273 deletions
|
|
@ -134,7 +134,7 @@ public class ClearingAccountValidationConfig {
|
||||||
Imdg<Company> companyImdg = context.obtainMap(
|
Imdg<Company> companyImdg = context.obtainMap(
|
||||||
IMDGDistributedNames.Map_Company, Company.class
|
IMDGDistributedNames.Map_Company, Company.class
|
||||||
);
|
);
|
||||||
Company company = companyImdg.getSingleObjectByFieldValues(Map.of("tradingCode", dealValue));
|
Company company = companyImdg.getFirstObjectByFieldValues(Map.of("tradingCode", dealValue));
|
||||||
if (company == null) return AccountError.WrongFieldValue;
|
if (company == null) return AccountError.WrongFieldValue;
|
||||||
return null;
|
return null;
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,6 @@ import ru.spcex.clearing.validation.common.rules.IdPresentRule;
|
||||||
import ru.spcex.platform.classes.base.SpcexObjectBase;
|
import ru.spcex.platform.classes.base.SpcexObjectBase;
|
||||||
import ru.spcex.platform.enumeration.AccountType;
|
import ru.spcex.platform.enumeration.AccountType;
|
||||||
import ru.spcex.platform.enumeration.CompanySymbol;
|
import ru.spcex.platform.enumeration.CompanySymbol;
|
||||||
import ru.spcex.platform.enumeration.ServiceStatus;
|
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||||
|
|
@ -65,7 +64,7 @@ public class TradingClearingRegistryValidationConfig {
|
||||||
true,
|
true,
|
||||||
company -> {
|
company -> {
|
||||||
Imdg<CompanySymbols> companySymbolsImdg = context.obtainMap(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
|
Imdg<CompanySymbols> companySymbolsImdg = context.obtainMap(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
|
||||||
CompanySymbols symbol = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
CompanySymbols symbol = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", company.getId(),
|
"companyId", company.getId(),
|
||||||
"companySymbol", CompanySymbol.CLRC.getKey()
|
"companySymbol", CompanySymbol.CLRC.getKey()
|
||||||
));
|
));
|
||||||
|
|
@ -113,7 +112,7 @@ public class TradingClearingRegistryValidationConfig {
|
||||||
depoAccountId -> {
|
depoAccountId -> {
|
||||||
if (depoAccountId == null) return null;
|
if (depoAccountId == null) return null;
|
||||||
Imdg<DepoAccount> depoAccountImdg = context.obtainMap(IMDGDistributedNames.Map_DepoAccount, DepoAccount.class);
|
Imdg<DepoAccount> depoAccountImdg = context.obtainMap(IMDGDistributedNames.Map_DepoAccount, DepoAccount.class);
|
||||||
DepoAccount depoAccount = depoAccountImdg.getSingleObjectByFieldValues(
|
DepoAccount depoAccount = depoAccountImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", depoAccountId)
|
Map.of("accountId", depoAccountId)
|
||||||
);
|
);
|
||||||
if (depoAccount == null) return AccountError.AccountNotFound;
|
if (depoAccount == null) return AccountError.AccountNotFound;
|
||||||
|
|
|
||||||
|
|
@ -175,7 +175,7 @@ public class ClearingAccountService extends QueueConsumer implements Initializin
|
||||||
Account account = accountImdg.getCollectionObjectsByPredicate(finalPredicate).iterator().next();
|
Account account = accountImdg.getCollectionObjectsByPredicate(finalPredicate).iterator().next();
|
||||||
Long accountId = account.getId();
|
Long accountId = account.getId();
|
||||||
|
|
||||||
ClearingAccount clearingAccount = clearingAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", accountId));
|
ClearingAccount clearingAccount = clearingAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", accountId));
|
||||||
if (clearingAccount == null)
|
if (clearingAccount == null)
|
||||||
return requestHelper.makeErrorResponse(userRequest, AccountError.AccountNotFound, account.getAccount());
|
return requestHelper.makeErrorResponse(userRequest, AccountError.AccountNotFound, account.getAccount());
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,6 @@ import ru.spcex.platform.imdg.api.ImdgId;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
import ru.spcex.platform.utils.error.ClearingBaseException;
|
|
||||||
import ru.spcex.platform.utils.log.ExceptionUtils;
|
import ru.spcex.platform.utils.log.ExceptionUtils;
|
||||||
import ru.spcex.platform.utils.validation.IValidator;
|
import ru.spcex.platform.utils.validation.IValidator;
|
||||||
|
|
||||||
|
|
@ -132,7 +131,7 @@ public class ClientCodeService extends QueueConsumer implements InitializingBean
|
||||||
if (companyId == null) {
|
if (companyId == null) {
|
||||||
error = new EnumMessage(AccountError.RequiredFieldEmpty, "companyId");
|
error = new EnumMessage(AccountError.RequiredFieldEmpty, "companyId");
|
||||||
} else {
|
} else {
|
||||||
TradingClearingRegistry tcr = tradingClearingRegistryMap.getSingleObjectByFieldValues(Map.of("companyId", companyId));
|
TradingClearingRegistry tcr = tradingClearingRegistryMap.getFirstObjectByFieldValues(Map.of("companyId", companyId));
|
||||||
if (tcr==null) {
|
if (tcr==null) {
|
||||||
error=new EnumMessage(AccountError.TradingClearingRegistryNotFound, companyId);
|
error=new EnumMessage(AccountError.TradingClearingRegistryNotFound, companyId);
|
||||||
}
|
}
|
||||||
|
|
@ -292,7 +291,7 @@ public class ClientCodeService extends QueueConsumer implements InitializingBean
|
||||||
if (depoAccountId != null) {
|
if (depoAccountId != null) {
|
||||||
query.put("depoAccountId", depoAccountId);
|
query.put("depoAccountId", depoAccountId);
|
||||||
}
|
}
|
||||||
TradingClearingRegistry result = tradingClearingRegistryMap.getSingleObjectByFieldValues(query);
|
TradingClearingRegistry result = tradingClearingRegistryMap.getFirstObjectByFieldValues(query);
|
||||||
log.trace("TradingClearingRegistry by: {}; {}found", query, result == null ? "not " : "");
|
log.trace("TradingClearingRegistry by: {}; {}found", query, result == null ? "not " : "");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -141,13 +141,13 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini
|
||||||
tradingClearingRegistry.setDepoAccountId(req.getDepoAccountId());
|
tradingClearingRegistry.setDepoAccountId(req.getDepoAccountId());
|
||||||
|
|
||||||
Account depoAccountMain = req.getDepoAccountId() != null ? accountImdg.getSingleObjectByID(req.getDepoAccountId()) : null;
|
Account depoAccountMain = req.getDepoAccountId() != null ? accountImdg.getSingleObjectByID(req.getDepoAccountId()) : null;
|
||||||
DepoAccount depoAccount = depoAccountMain != null ? depoAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", req.getDepoAccountId())) : null;
|
DepoAccount depoAccount = depoAccountMain != null ? depoAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", req.getDepoAccountId())) : null;
|
||||||
|
|
||||||
// InformationAccount infoAccount = null;
|
// InformationAccount infoAccount = null;
|
||||||
ClearingAccount clearingAccount = null;
|
ClearingAccount clearingAccount = null;
|
||||||
Account accountMain = null;
|
Account accountMain = null;
|
||||||
if (req.getMoneyAccountId() != null) {
|
if (req.getMoneyAccountId() != null) {
|
||||||
clearingAccount = clearingAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", req.getMoneyAccountId()));
|
clearingAccount = clearingAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", req.getMoneyAccountId()));
|
||||||
// if (clearingAccount == null) infoAccount = informationAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", req.getMoneyAccountId()));
|
// if (clearingAccount == null) infoAccount = informationAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", req.getMoneyAccountId()));
|
||||||
Long accountId = req.getMoneyAccountId(); //clearingAccount != null ? clearingAccount.getAccountId() : infoAccount.getAccountId();
|
Long accountId = req.getMoneyAccountId(); //clearingAccount != null ? clearingAccount.getAccountId() : infoAccount.getAccountId();
|
||||||
accountMain = accountImdg.getSingleObjectByID(accountId);
|
accountMain = accountImdg.getSingleObjectByID(accountId);
|
||||||
|
|
@ -155,7 +155,7 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini
|
||||||
|
|
||||||
// кроссвалидация
|
// кроссвалидация
|
||||||
if (req.getMoneyAccountId() == null && (req.getMoneyAccountId() == null || req.getDepoAccountId() == null)) {
|
if (req.getMoneyAccountId() == null && (req.getMoneyAccountId() == null || req.getDepoAccountId() == null)) {
|
||||||
TradingClearingRegistry registryByCompany = tradingClearingRegistryImdg.getSingleObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
TradingClearingRegistry registryByCompany = tradingClearingRegistryImdg.getFirstObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
||||||
if (registryByCompany == null) {
|
if (registryByCompany == null) {
|
||||||
log.trace("Not found registry with companyId={}",
|
log.trace("Not found registry with companyId={}",
|
||||||
req.getCompanyId());
|
req.getCompanyId());
|
||||||
|
|
@ -177,9 +177,9 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini
|
||||||
log.warn("TradingClearingRegister with MoneyAccountId for companyId={} not found. Search exist accounts for company", req.getCompanyId());
|
log.warn("TradingClearingRegister with MoneyAccountId for companyId={} not found. Search exist accounts for company", req.getCompanyId());
|
||||||
Long accountId;
|
Long accountId;
|
||||||
InformationAccount infoAccount = null;
|
InformationAccount infoAccount = null;
|
||||||
clearingAccount = clearingAccountImdg.getSingleObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
clearingAccount = clearingAccountImdg.getFirstObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
||||||
if (clearingAccount == null) {
|
if (clearingAccount == null) {
|
||||||
infoAccount = informationAccountImdg.getSingleObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
infoAccount = informationAccountImdg.getFirstObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
||||||
if (infoAccount == null) {
|
if (infoAccount == null) {
|
||||||
log.warn("ClearingAccount and InfoAccount not exist for company {}.", req.getCompanyId());
|
log.warn("ClearingAccount and InfoAccount not exist for company {}.", req.getCompanyId());
|
||||||
accountId = null;
|
accountId = null;
|
||||||
|
|
@ -286,7 +286,7 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini
|
||||||
TradingClearingRegistryNewRequest req = userRequest.getRequestPayload();
|
TradingClearingRegistryNewRequest req = userRequest.getRequestPayload();
|
||||||
// Дополнительная проверка
|
// Дополнительная проверка
|
||||||
if (req.getMoneyAccountId() == null && (req.getMoneyAccountId() == null || req.getDepoAccountId() == null)) {
|
if (req.getMoneyAccountId() == null && (req.getMoneyAccountId() == null || req.getDepoAccountId() == null)) {
|
||||||
TradingClearingRegistry registryByCompany = tradingClearingRegistryImdg.getSingleObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
TradingClearingRegistry registryByCompany = tradingClearingRegistryImdg.getFirstObjectByFieldValues(Map.of("companyId", req.getCompanyId()));
|
||||||
if (registryByCompany == null) {
|
if (registryByCompany == null) {
|
||||||
return requestHelper.makeErrorResponse(userRequest,
|
return requestHelper.makeErrorResponse(userRequest,
|
||||||
AccountError.TradingClearingRegistryNotFound,
|
AccountError.TradingClearingRegistryNotFound,
|
||||||
|
|
@ -301,8 +301,8 @@ public class TradingClearingRegistryService extends QueueConsumer implements Ini
|
||||||
tradingClearingRegistry.setMoneyAccountId(req.getMoneyAccountId());
|
tradingClearingRegistry.setMoneyAccountId(req.getMoneyAccountId());
|
||||||
tradingClearingRegistry.setDepoAccountId(req.getDepoAccountId());
|
tradingClearingRegistry.setDepoAccountId(req.getDepoAccountId());
|
||||||
|
|
||||||
DepoAccount depoAccount = req.getDepoAccountId() != null ? depoAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", req.getDepoAccountId())) : null;
|
DepoAccount depoAccount = req.getDepoAccountId() != null ? depoAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", req.getDepoAccountId())) : null;
|
||||||
ClearingAccount clearingAccount = req.getMoneyAccountId() != null ? clearingAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", req.getMoneyAccountId())) : null;
|
ClearingAccount clearingAccount = req.getMoneyAccountId() != null ? clearingAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", req.getMoneyAccountId())) : null;
|
||||||
|
|
||||||
if (req.getStatus() == null) {
|
if (req.getStatus() == null) {
|
||||||
tradingClearingRegistry.setStatus(ServiceStatus.Active.getKey());
|
tradingClearingRegistry.setStatus(ServiceStatus.Active.getKey());
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ public enum AccountValidationRule implements IValidationRule<ImdgValidationConte
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<BankAccountNewRequest> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<BankAccountNewRequest> context) {
|
||||||
BankAccountNewRequest bankAccountRequest = context.getValidatedObject();
|
BankAccountNewRequest bankAccountRequest = context.getValidatedObject();
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of("account", bankAccountRequest.getAccount(),
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of("account", bankAccountRequest.getAccount(),
|
||||||
"accountStatus", Status.Active.getKey()));
|
"accountStatus", Status.Active.getKey()));
|
||||||
if (account != null) {
|
if (account != null) {
|
||||||
return of(AccountError.AccountAlreadyExist);
|
return of(AccountError.AccountAlreadyExist);
|
||||||
|
|
|
||||||
|
|
@ -179,8 +179,8 @@ public class BankAccountServiceTest {
|
||||||
addRecordToKafka((MockConsumer) bankAccountService.getConsumer(), TOPIC_ACCOUNT_NEW, PARTITION, 0, jsonString);
|
addRecordToKafka((MockConsumer) bankAccountService.getConsumer(), TOPIC_ACCOUNT_NEW, PARTITION, 0, jsonString);
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
Account accountResult = accountImdg.getSingleObjectBySQL(String.format("account = %s", acc));
|
Account accountResult = accountImdg.getFirstObjectBySQL(String.format("account = %s", acc));
|
||||||
BankAccount bankAccountResult = bankAccountImdg.getSingleObjectBySQL(String.format("account = %s or companyId = %s", acc, addresseeIdNew));
|
BankAccount bankAccountResult = bankAccountImdg.getFirstObjectBySQL(String.format("account = %s or companyId = %s", acc, addresseeIdNew));
|
||||||
predictableBankAccount.setAccountId(accountResult.getId());
|
predictableBankAccount.setAccountId(accountResult.getId());
|
||||||
predictableBankAccount.setId(bankAccountResult.getId());
|
predictableBankAccount.setId(bankAccountResult.getId());
|
||||||
setSameValueToField(accountResult, predictableAccount);
|
setSameValueToField(accountResult, predictableAccount);
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,5 @@
|
||||||
package ru.spcex.clearing.account.service;
|
package ru.spcex.clearing.account.service;
|
||||||
|
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
||||||
import org.apache.kafka.clients.consumer.MockConsumer;
|
import org.apache.kafka.clients.consumer.MockConsumer;
|
||||||
import org.apache.kafka.clients.producer.MockProducer;
|
import org.apache.kafka.clients.producer.MockProducer;
|
||||||
import org.apache.kafka.clients.producer.Producer;
|
import org.apache.kafka.clients.producer.Producer;
|
||||||
|
|
@ -28,35 +26,23 @@ import ru.spcex.clearing.account.config.validation.ClearingAccountValidationConf
|
||||||
import ru.spcex.clearing.account.config.validation.ValidationConfig;
|
import ru.spcex.clearing.account.config.validation.ValidationConfig;
|
||||||
import ru.spcex.clearing.account.utils.MatcherFactory;
|
import ru.spcex.clearing.account.utils.MatcherFactory;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.ActionType;
|
|
||||||
import ru.spcex.clearing.platform.messaging.domain.BaseRequest;
|
|
||||||
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.account.ClearingAccountNewRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.account.ClearingAccountNewRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.account.ClearingAccountUpdateRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.account.ClearingAccountUpdateRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.account.sdf01.AccountSdf01Request;
|
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.account.sdf01.AccountSdfRequestPart;
|
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.balance.AccountSdfToStatementRequestPart;
|
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.balance.StatementRequest;
|
|
||||||
import ru.spcex.clearing.platform.messaging.service.RequestInfo;
|
|
||||||
import ru.spcex.clearing.platform.messaging.service.Status;
|
|
||||||
import ru.spcex.clearing.test.TestObjectCreator;
|
import ru.spcex.clearing.test.TestObjectCreator;
|
||||||
import ru.spcex.clearing.test.config.ImdgTestConfig;
|
import ru.spcex.clearing.test.config.ImdgTestConfig;
|
||||||
import ru.spcex.clearing.test.config.KafkaTestConfig;
|
import ru.spcex.clearing.test.config.KafkaTestConfig;
|
||||||
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.iml.hazelcast.adapter.ImdgHazelcast;
|
|
||||||
import ru.spcex.platform.imdg.iml.hazelcast.service.HazelcastService;
|
import ru.spcex.platform.imdg.iml.hazelcast.service.HazelcastService;
|
||||||
|
|
||||||
import javax.annotation.PostConstruct;
|
import javax.annotation.PostConstruct;
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import static org.mockito.Mockito.timeout;
|
import static org.mockito.Mockito.timeout;
|
||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static ru.spcex.clearing.account.utils.MatcherFactory.usingIgnoringFieldsComparator;
|
import static ru.spcex.clearing.account.utils.MatcherFactory.usingIgnoringFieldsComparator;
|
||||||
import static ru.spcex.clearing.test.TestUtils.*;
|
import static ru.spcex.clearing.test.TestUtils.*;
|
||||||
import static ru.spcex.clearing.test.config.ImdgTestConfig.currentID;
|
|
||||||
|
|
||||||
@ExtendWith(SpringExtension.class)
|
@ExtendWith(SpringExtension.class)
|
||||||
@ContextConfiguration(classes = {
|
@ContextConfiguration(classes = {
|
||||||
|
|
@ -187,8 +173,8 @@ class ClearingAccountServiceTest {
|
||||||
predictableClearingAccount.setCompanyId(companyId);
|
predictableClearingAccount.setCompanyId(companyId);
|
||||||
predictableClearingAccount.setClearingAccountType(CLEARING_ACCOUNT_TYPE_DICT);
|
predictableClearingAccount.setClearingAccountType(CLEARING_ACCOUNT_TYPE_DICT);
|
||||||
|
|
||||||
Account resultAccountNew = accountImdg.getSingleObjectByFieldValues(Map.of("accountType", AccountType.Clrn.getKey()));
|
Account resultAccountNew = accountImdg.getFirstObjectByFieldValues(Map.of("accountType", AccountType.Clrn.getKey()));
|
||||||
ClearingAccount resultClearingAccountNew = clearingAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", resultAccountNew.getId()));
|
ClearingAccount resultClearingAccountNew = clearingAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", resultAccountNew.getId()));
|
||||||
|
|
||||||
predictableAccount.setId(resultAccountNew.getId());
|
predictableAccount.setId(resultAccountNew.getId());
|
||||||
predictableClearingAccount.setAccountId(resultAccountNew.getId());
|
predictableClearingAccount.setAccountId(resultAccountNew.getId());
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package ru.spcex.clearing.account.service;
|
package ru.spcex.clearing.account.service;
|
||||||
|
|
||||||
import org.apache.kafka.clients.consumer.MockConsumer;
|
import org.apache.kafka.clients.consumer.MockConsumer;
|
||||||
import org.apache.kafka.clients.producer.MockProducer;
|
|
||||||
import org.apache.kafka.clients.producer.Producer;
|
import org.apache.kafka.clients.producer.Producer;
|
||||||
import org.apache.kafka.clients.producer.ProducerRecord;
|
import org.apache.kafka.clients.producer.ProducerRecord;
|
||||||
import org.junit.jupiter.api.Assertions;
|
import org.junit.jupiter.api.Assertions;
|
||||||
|
|
@ -9,10 +8,8 @@ import org.junit.jupiter.api.Test;
|
||||||
import org.junit.jupiter.api.extension.ExtendWith;
|
import org.junit.jupiter.api.extension.ExtendWith;
|
||||||
import org.mockito.ArgumentCaptor;
|
import org.mockito.ArgumentCaptor;
|
||||||
import org.mockito.Captor;
|
import org.mockito.Captor;
|
||||||
import org.mockito.Mockito;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.boot.test.mock.mockito.SpyBean;
|
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||||
import ru.clearing.classes.statics.data.account.Account;
|
import ru.clearing.classes.statics.data.account.Account;
|
||||||
|
|
@ -211,7 +208,7 @@ class ClientCodeServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
ClientCode resultNew = clientCodeImdg.getSingleObjectBySQL(String.format("code = '%s'", ccCode));
|
ClientCode resultNew = clientCodeImdg.getFirstObjectBySQL(String.format("code = '%s'", ccCode));
|
||||||
predictableClientCode.setId(resultNew.getId());
|
predictableClientCode.setId(resultNew.getId());
|
||||||
CLIENT_CODE_MATCHER.assertMatch(resultNew, predictableClientCode);
|
CLIENT_CODE_MATCHER.assertMatch(resultNew, predictableClientCode);
|
||||||
assertNotNull(resultNew.getCreated());
|
assertNotNull(resultNew.getCreated());
|
||||||
|
|
@ -249,7 +246,7 @@ class ClientCodeServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
TestUtils.waitingSendAndCheckRecord(ID, mockProducer, producerRecord);
|
TestUtils.waitingSendAndCheckRecord(ID, mockProducer, producerRecord);
|
||||||
ClientCode resultNew = clientCodeImdg.getSingleObjectBySQL(String.format("code = '%s'", ccCode));
|
ClientCode resultNew = clientCodeImdg.getFirstObjectBySQL(String.format("code = '%s'", ccCode));
|
||||||
predictableClientCode.setId(resultNew.getId());
|
predictableClientCode.setId(resultNew.getId());
|
||||||
CLIENT_CODE_MATCHER.assertMatch(resultNew, predictableClientCode);
|
CLIENT_CODE_MATCHER.assertMatch(resultNew, predictableClientCode);
|
||||||
assertNotNull(resultNew.getCreated());
|
assertNotNull(resultNew.getCreated());
|
||||||
|
|
@ -289,7 +286,7 @@ class ClientCodeServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
ClientCode resultNew = clientCodeImdg.getSingleObjectBySQL(String.format("code = '%s'", ccCode));
|
ClientCode resultNew = clientCodeImdg.getFirstObjectBySQL(String.format("code = '%s'", ccCode));
|
||||||
predictableClientCode.setId(resultNew.getId());
|
predictableClientCode.setId(resultNew.getId());
|
||||||
CLIENT_CODE_MATCHER.assertMatch(resultNew, predictableClientCode);
|
CLIENT_CODE_MATCHER.assertMatch(resultNew, predictableClientCode);
|
||||||
assertNotNull(resultNew.getCreated());
|
assertNotNull(resultNew.getCreated());
|
||||||
|
|
|
||||||
|
|
@ -173,8 +173,8 @@ class DepoAccountServiceTest {
|
||||||
predictableDepoAccount.setCompanyId(companyId);
|
predictableDepoAccount.setCompanyId(companyId);
|
||||||
predictableDepoAccount.setDepoAccountType(DEPO_ACCOUNT_TYPE_DICT);
|
predictableDepoAccount.setDepoAccountType(DEPO_ACCOUNT_TYPE_DICT);
|
||||||
|
|
||||||
Account resultAccountNew = accountImdg.getSingleObjectByFieldValues(Map.of("accountType", AccountType.Depo.getKey()));
|
Account resultAccountNew = accountImdg.getFirstObjectByFieldValues(Map.of("accountType", AccountType.Depo.getKey()));
|
||||||
DepoAccount resultDepoAccountNew = depoAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", resultAccountNew.getId()));
|
DepoAccount resultDepoAccountNew = depoAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", resultAccountNew.getId()));
|
||||||
|
|
||||||
predictableAccount.setId(resultAccountNew.getId());
|
predictableAccount.setId(resultAccountNew.getId());
|
||||||
predictableDepoAccount.setAccountId(resultAccountNew.getId());
|
predictableDepoAccount.setAccountId(resultAccountNew.getId());
|
||||||
|
|
|
||||||
|
|
@ -166,8 +166,8 @@ class InformationAccountServiceTest {
|
||||||
predictableInfoAccount.setCompanyId(companyId);
|
predictableInfoAccount.setCompanyId(companyId);
|
||||||
predictableInfoAccount.setClearingAccountId(anltAccountId);
|
predictableInfoAccount.setClearingAccountId(anltAccountId);
|
||||||
|
|
||||||
Account resultAccountNew = accountImdg.getSingleObjectByFieldValues(Map.of("accountType", AccountType.Info.getKey()));
|
Account resultAccountNew = accountImdg.getFirstObjectByFieldValues(Map.of("accountType", AccountType.Info.getKey()));
|
||||||
InformationAccount resultInfoAccountNew = informationAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", resultAccountNew.getId()));
|
InformationAccount resultInfoAccountNew = informationAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", resultAccountNew.getId()));
|
||||||
|
|
||||||
predictableAccount.setId(resultAccountNew.getId());
|
predictableAccount.setId(resultAccountNew.getId());
|
||||||
predictableAccount.setAccount(informationAccountService.generateInfoAccount(resultInfoAccountNew.getId()));
|
predictableAccount.setAccount(informationAccountService.generateInfoAccount(resultInfoAccountNew.getId()));
|
||||||
|
|
|
||||||
|
|
@ -69,14 +69,14 @@ public class LauncherController extends AbstractQueueController {
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public CudResponse add(@ApiParam(value = "Код задания из taskDictionary", required = true, example = "ABLK")
|
public CudResponse add(@ApiParam(value = "Код задания из taskDictionary", required = true, example = "ABLK")
|
||||||
@PathVariable("task-code") String dictionaryName) throws ExecutionException, InterruptedException {
|
@PathVariable("task-code") String dictionaryName) throws ExecutionException, InterruptedException {
|
||||||
AbstractDictionary taskEnum = taskDictionary.getSingleObjectByFieldValues(Map.of("code", dictionaryName));
|
AbstractDictionary taskEnum = taskDictionary.getFirstObjectByFieldValues(Map.of("code", dictionaryName));
|
||||||
if (taskEnum == null) {
|
if (taskEnum == null) {
|
||||||
throw new NotFound404Exception("task dictionary element with code '" + dictionaryName + "'");
|
throw new NotFound404Exception("task dictionary element with code '" + dictionaryName + "'");
|
||||||
}
|
}
|
||||||
LauncherNew launcherCommand = new LauncherNew();
|
LauncherNew launcherCommand = new LauncherNew();
|
||||||
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
||||||
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
||||||
User user = userImdg.getSingleObjectByFieldValues(Map.of("identifier", username));
|
User user = userImdg.getFirstObjectByFieldValues(Map.of("identifier", username));
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
||||||
}
|
}
|
||||||
|
|
@ -96,7 +96,7 @@ public class LauncherController extends AbstractQueueController {
|
||||||
if (launcherNew.getTask() == null) {
|
if (launcherNew.getTask() == null) {
|
||||||
throw new NotFound404Exception("task dictionary element with code '" + launcherNew.getTask() + "'");
|
throw new NotFound404Exception("task dictionary element with code '" + launcherNew.getTask() + "'");
|
||||||
}
|
}
|
||||||
AbstractDictionary taskEnum = taskDictionary.getSingleObjectByFieldValues(Map.of("code", launcherNew.getTask()));
|
AbstractDictionary taskEnum = taskDictionary.getFirstObjectByFieldValues(Map.of("code", launcherNew.getTask()));
|
||||||
if (taskEnum == null) {
|
if (taskEnum == null) {
|
||||||
throw new NotFound404Exception("task dictionary element with code '" + launcherNew.getTask() + "'");
|
throw new NotFound404Exception("task dictionary element with code '" + launcherNew.getTask() + "'");
|
||||||
}
|
}
|
||||||
|
|
@ -105,7 +105,7 @@ public class LauncherController extends AbstractQueueController {
|
||||||
}
|
}
|
||||||
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
||||||
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
||||||
User user = userImdg.getSingleObjectByFieldValues(Map.of("identifier", username));
|
User user = userImdg.getFirstObjectByFieldValues(Map.of("identifier", username));
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -68,7 +68,7 @@ public class UserController extends AbstractQueueController {
|
||||||
UserIdResponse response = new UserIdResponse();
|
UserIdResponse response = new UserIdResponse();
|
||||||
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
||||||
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
||||||
User user = userImdg.getSingleObjectByFieldValues(Map.of("identifier", username));
|
User user = userImdg.getFirstObjectByFieldValues(Map.of("identifier", username));
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
log.info("getId user {} authenticated, but User object was not created", username);
|
log.info("getId user {} authenticated, but User object was not created", username);
|
||||||
throw new IllegalStateException("couldn't return user id");
|
throw new IllegalStateException("couldn't return user id");
|
||||||
|
|
|
||||||
|
|
@ -52,7 +52,7 @@ public class UserSettingsController extends AbstractQueueController {
|
||||||
public CommonGetAllResponse getAllForCurrentUser() {
|
public CommonGetAllResponse getAllForCurrentUser() {
|
||||||
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
||||||
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
||||||
User user = username == null ? null : userImdg.getSingleObjectByFieldValues(Map.of("identifier", username));
|
User user = username == null ? null : userImdg.getFirstObjectByFieldValues(Map.of("identifier", username));
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
||||||
}
|
}
|
||||||
|
|
@ -74,7 +74,7 @@ public class UserSettingsController extends AbstractQueueController {
|
||||||
@RequestBody UserSettingsUpdateAction userSettingsUpdateAction) throws ExecutionException, InterruptedException {
|
@RequestBody UserSettingsUpdateAction userSettingsUpdateAction) throws ExecutionException, InterruptedException {
|
||||||
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
||||||
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
||||||
User user = userImdg.getSingleObjectByFieldValues(Map.of("identifier", username));
|
User user = userImdg.getFirstObjectByFieldValues(Map.of("identifier", username));
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
throw new IllegalStateException("cannot obtain userId from logged in user " + username);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ public class DictionaryController {
|
||||||
@ApiParam(value = "Код словаря", required = true, example = "1234")
|
@ApiParam(value = "Код словаря", required = true, example = "1234")
|
||||||
@PathVariable("code") String code) {
|
@PathVariable("code") String code) {
|
||||||
Imdg<AbstractDictionary> dictionary = extractDictionaryImdgFromUrlParameter(dictionaryName, AbstractDictionary.class);
|
Imdg<AbstractDictionary> dictionary = extractDictionaryImdgFromUrlParameter(dictionaryName, AbstractDictionary.class);
|
||||||
AbstractDictionary value = dictionary.getSingleObjectByFieldValues(Map.of("code", code));
|
AbstractDictionary value = dictionary.getFirstObjectByFieldValues(Map.of("code", code));
|
||||||
if (value == null) throw new NotFound404Exception(dictionaryName + " code='" + code + "'");
|
if (value == null) throw new NotFound404Exception(dictionaryName + " code='" + code + "'");
|
||||||
DictionaryBackendGetSingleValueV2 response = new DictionaryBackendGetSingleValueV2();
|
DictionaryBackendGetSingleValueV2 response = new DictionaryBackendGetSingleValueV2();
|
||||||
response.setPayload(responseFactory.responseFromDictionary(dictionaryName, value));
|
response.setPayload(responseFactory.responseFromDictionary(dictionaryName, value));
|
||||||
|
|
|
||||||
|
|
@ -58,7 +58,7 @@ public class OperatorImpl implements IOperator {
|
||||||
protected Long currentUserId() {
|
protected Long currentUserId() {
|
||||||
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
|
||||||
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
String username = KeycloakUtils.getUserNameFromAuthentication(authentication);
|
||||||
User user = StringUtils.isEmpty(username) ? null : userImdg.getSingleObjectByFieldValues(Map.of("identifier", username));
|
User user = StringUtils.isEmpty(username) ? null : userImdg.getFirstObjectByFieldValues(Map.of("identifier", username));
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
log.warn("UserID not found by login \"{}\"", username);
|
log.warn("UserID not found by login \"{}\"", username);
|
||||||
return null;
|
return null;
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ public enum LauncherNewValidationRule implements IValidationRule<ImdgValidationC
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<LauncherNew> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<LauncherNew> context) {
|
||||||
LauncherNew validatedObject = context.getValidatedObject();
|
LauncherNew validatedObject = context.getValidatedObject();
|
||||||
Imdg<AbstractDictionary> taskDictionaryImdg = context.obtainMap(IMDGDistributedNames.Map_TaskDictionary, AbstractDictionary.class);
|
Imdg<AbstractDictionary> taskDictionaryImdg = context.obtainMap(IMDGDistributedNames.Map_TaskDictionary, AbstractDictionary.class);
|
||||||
AbstractDictionary taskEnum = taskDictionaryImdg.getSingleObjectByFieldValues(Map.of("code", validatedObject.getTask()));
|
AbstractDictionary taskEnum = taskDictionaryImdg.getFirstObjectByFieldValues(Map.of("code", validatedObject.getTask()));
|
||||||
if (taskEnum == null) {
|
if (taskEnum == null) {
|
||||||
return of(BackEndError.ResourceNotFound, "taskDictionary " + validatedObject.getTask());
|
return of(BackEndError.ResourceNotFound, "taskDictionary " + validatedObject.getTask());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import ru.clearing.classes.statics.data.account.Account;
|
import ru.clearing.classes.statics.data.account.Account;
|
||||||
import ru.clearing.classes.statics.data.account.AccountBalance;
|
import ru.clearing.classes.statics.data.account.AccountBalance;
|
||||||
import ru.clearing.classes.statics.data.company.Company;
|
|
||||||
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
|
import ru.clearing.classes.statics.data.company.ClearingMemberCategory;
|
||||||
|
import ru.clearing.classes.statics.data.company.Company;
|
||||||
import ru.spcex.clearing.balance.validation.AccountBalanceValidation;
|
import ru.spcex.clearing.balance.validation.AccountBalanceValidation;
|
||||||
import ru.spcex.clearing.balance.validation.ValidationStored;
|
import ru.spcex.clearing.balance.validation.ValidationStored;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
|
|
@ -57,7 +57,7 @@ public class AccountBalanceService {
|
||||||
Company company = validator.getStored(ValidationStored.Company);
|
Company company = validator.getStored(ValidationStored.Company);
|
||||||
//которой accountBalance.accountId=statement.accountId и accountBalance.companyId=statement.companyId:
|
//которой accountBalance.accountId=statement.accountId и accountBalance.companyId=statement.companyId:
|
||||||
|
|
||||||
AccountBalance accountBalance = accountBalanceImdg.getSingleObjectByFieldValues(
|
AccountBalance accountBalance = accountBalanceImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountId, "companyId", addresseeId)
|
Map.of("accountId", accountId, "companyId", addresseeId)
|
||||||
);
|
);
|
||||||
if (accountBalance == null) {
|
if (accountBalance == null) {
|
||||||
|
|
@ -114,7 +114,7 @@ public class AccountBalanceService {
|
||||||
}
|
}
|
||||||
|
|
||||||
private ClearingCategory getClearingCategoryByCompanyId(Long companyId) {
|
private ClearingCategory getClearingCategoryByCompanyId(Long companyId) {
|
||||||
ClearingMemberCategory category = clearingCategoryImdg.getSingleObjectByFieldValues(
|
ClearingMemberCategory category = clearingCategoryImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("companyId", companyId));
|
Map.of("companyId", companyId));
|
||||||
return IEnumKey.getEnumByKey(ClearingCategory.class,
|
return IEnumKey.getEnumByKey(ClearingCategory.class,
|
||||||
category.getClearingMemberCategory());
|
category.getClearingMemberCategory());
|
||||||
|
|
@ -197,14 +197,14 @@ public class AccountBalanceService {
|
||||||
}
|
}
|
||||||
|
|
||||||
private AccountBalance loadAccountBalance(Long accountId, Long companyId, AccountType type) {
|
private AccountBalance loadAccountBalance(Long accountId, Long companyId, AccountType type) {
|
||||||
return accountBalanceImdg.getSingleObjectByFieldValues(
|
return accountBalanceImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountId, "companyId", companyId,
|
Map.of("accountId", accountId, "companyId", companyId,
|
||||||
"accountType", type.getKey())
|
"accountType", type.getKey())
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private AccountBalance loadAccountBalance(AccountType type) {
|
private AccountBalance loadAccountBalance(AccountType type) {
|
||||||
return accountBalanceImdg.getSingleObjectByFieldValues(
|
return accountBalanceImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("companyId", 1L,
|
Map.of("companyId", 1L,
|
||||||
"accountType", type.getKey())
|
"accountType", type.getKey())
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -93,7 +93,7 @@ public class Sdf16Executor extends AbstractExecutor<SDf16> {
|
||||||
sdf17Imdg.insert(createErrorSdfRes(sdfItem, error.get(), generationIdForGroup));
|
sdf17Imdg.insert(createErrorSdfRes(sdfItem, error.get(), generationIdForGroup));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
Statement statement = statementImdg.getSingleObjectByFieldValues(Map.of("account", sdfItem.getAccount()));
|
Statement statement = statementImdg.getFirstObjectByFieldValues(Map.of("account", sdfItem.getAccount()));
|
||||||
if (statement == null) {
|
if (statement == null) {
|
||||||
statement = createFlow(sdfItem,
|
statement = createFlow(sdfItem,
|
||||||
company,
|
company,
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@ public class AccountBalanceFreeAmountEnough<T extends WithAccount & WithSum> imp
|
||||||
return empty();
|
return empty();
|
||||||
}
|
}
|
||||||
Imdg<AccountBalance> balanceImdg = context.obtainMap(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class);
|
Imdg<AccountBalance> balanceImdg = context.obtainMap(IMDGDistributedNames.Map_AccountBalance, AccountBalance.class);
|
||||||
AccountBalance balance = balanceImdg.getSingleObjectByFieldValues(Map.of("account", validatedObject.getAccount(),
|
AccountBalance balance = balanceImdg.getFirstObjectByFieldValues(Map.of("account", validatedObject.getAccount(),
|
||||||
"accountType", AccountType.Clrn.getKey()));
|
"accountType", AccountType.Clrn.getKey()));
|
||||||
if (balance == null) {
|
if (balance == null) {
|
||||||
return of(BalanceError.BalanceNotEnough);
|
return of(BalanceError.BalanceNotEnough);
|
||||||
|
|
|
||||||
|
|
@ -40,7 +40,7 @@ public enum AccountBalanceValidationRule implements IValidationRule<ImdgValidati
|
||||||
return of(BalanceError.AccountNotPresent);
|
return of(BalanceError.AccountNotPresent);
|
||||||
}
|
}
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of("id", validatedObject.accountId(),
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of("id", validatedObject.accountId(),
|
||||||
"accountType", AccountType.Clrn.getKey()));
|
"accountType", AccountType.Clrn.getKey()));
|
||||||
if (account == null) {
|
if (account == null) {
|
||||||
return of(BalanceError.AccountNotPresent);
|
return of(BalanceError.AccountNotPresent);
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ public enum ExistClrnAccountValidationRule implements IValidationRule<ImdgValida
|
||||||
return of(BalanceError.AccountNotPresent);
|
return of(BalanceError.AccountNotPresent);
|
||||||
}
|
}
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of("account", withAccount.getAccount(),
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of("account", withAccount.getAccount(),
|
||||||
"accountType", AccountType.Clrn.getKey()));
|
"accountType", AccountType.Clrn.getKey()));
|
||||||
if (account == null) {
|
if (account == null) {
|
||||||
return of(BalanceError.AccountNotPresent);
|
return of(BalanceError.AccountNotPresent);
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ public enum Sdf16ValidationRule implements IValidationRule<ImdgValidationContext
|
||||||
return of(BalanceError.CompanyNotFound, "inn and bic is empty");
|
return of(BalanceError.CompanyNotFound, "inn and bic is empty");
|
||||||
}
|
}
|
||||||
Company company = null;
|
Company company = null;
|
||||||
CompanySymbols companySymbols = companySymbolsImdg.getSingleObjectBySQL(sql);
|
CompanySymbols companySymbols = companySymbolsImdg.getFirstObjectBySQL(sql);
|
||||||
log.debug("By sdf16 found companySymbol: {}", companySymbols == null ? null : companySymbols.getId());
|
log.debug("By sdf16 found companySymbol: {}", companySymbols == null ? null : companySymbols.getId());
|
||||||
if (companySymbols != null) {
|
if (companySymbols != null) {
|
||||||
company = companyImdg.getSingleObjectByID(companySymbols.getCompanyId());
|
company = companyImdg.getSingleObjectByID(companySymbols.getCompanyId());
|
||||||
|
|
|
||||||
|
|
@ -73,7 +73,7 @@ class Sdf08ServiceTest extends AbstractServiceTest {
|
||||||
BaseRequest<Object> baseRequest = (BaseRequest<Object>) producerRecord.getValue().value();
|
BaseRequest<Object> baseRequest = (BaseRequest<Object>) producerRecord.getValue().value();
|
||||||
|
|
||||||
ExportToFileRequest exportToFileRequest = (ExportToFileRequest) baseRequest.getRequestPayload();
|
ExportToFileRequest exportToFileRequest = (ExportToFileRequest) baseRequest.getRequestPayload();
|
||||||
SDf08 resultsSDf08 = sdf08Imdg.getSingleObjectBySQL(String.format("generationId = %s and id != null", exportToFileRequest.getSdfGroupId()));
|
SDf08 resultsSDf08 = sdf08Imdg.getFirstObjectBySQL(String.format("generationId = %s and id != null", exportToFileRequest.getSdfGroupId()));
|
||||||
RequestInfo resultRequestInfo = requestInfoImdg.getSingleObjectByID(baseRequest.getId());
|
RequestInfo resultRequestInfo = requestInfoImdg.getSingleObjectByID(baseRequest.getId());
|
||||||
|
|
||||||
assertNotNull(baseRequest);
|
assertNotNull(baseRequest);
|
||||||
|
|
|
||||||
|
|
@ -101,9 +101,9 @@ class Sdf16ExecutorTest extends AbstractServiceTest {
|
||||||
|
|
||||||
BaseRequest<Object> baseRequest = (BaseRequest<Object>) producerRecord.getValue().value();
|
BaseRequest<Object> baseRequest = (BaseRequest<Object>) producerRecord.getValue().value();
|
||||||
NotificationNewRequest notificationNewRequest = (NotificationNewRequest) baseRequest.getRequestPayload();
|
NotificationNewRequest notificationNewRequest = (NotificationNewRequest) baseRequest.getRequestPayload();
|
||||||
Statement resultStatement = statementImdg.getSingleObjectByFieldValues(Map.of("account", acc));
|
Statement resultStatement = statementImdg.getFirstObjectByFieldValues(Map.of("account", acc));
|
||||||
SDf17 resultSdf17 = sdf17Imdg.getSingleObjectByFieldValues(Map.of("account", acc));
|
SDf17 resultSdf17 = sdf17Imdg.getFirstObjectByFieldValues(Map.of("account", acc));
|
||||||
AccountBalance resultAccountBalance = accountBalanceImdg.getSingleObjectByFieldValues(Map.of("account", acc));
|
AccountBalance resultAccountBalance = accountBalanceImdg.getFirstObjectByFieldValues(Map.of("account", acc));
|
||||||
|
|
||||||
assertEquals(Consts.NOTIFICATION_NEW, producerRecord.getValue().topic());
|
assertEquals(Consts.NOTIFICATION_NEW, producerRecord.getValue().topic());
|
||||||
assertEquals(notificationNewRequest.getObjectId(), resultStatement.getId());
|
assertEquals(notificationNewRequest.getObjectId(), resultStatement.getId());
|
||||||
|
|
@ -176,7 +176,7 @@ class Sdf16ExecutorTest extends AbstractServiceTest {
|
||||||
|
|
||||||
//BalanceNotEnough
|
//BalanceNotEnough
|
||||||
sdf16.setSum(new BigDecimal(-1700));
|
sdf16.setSum(new BigDecimal(-1700));
|
||||||
AccountBalance balance = accountBalanceImdg.getSingleObjectByFieldValues(Map.of("account", sdf16.getAccount(),
|
AccountBalance balance = accountBalanceImdg.getFirstObjectByFieldValues(Map.of("account", sdf16.getAccount(),
|
||||||
"accountType", AccountType.Clrn.getKey()));
|
"accountType", AccountType.Clrn.getKey()));
|
||||||
if (balance != null) accountBalanceImdg.delete(balance);
|
if (balance != null) accountBalanceImdg.delete(balance);
|
||||||
else balance = getTestAccountBalance(ID, account, company);
|
else balance = getTestAccountBalance(ID, account, company);
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
|
||||||
import static org.junit.jupiter.api.Assertions.*;
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||||
@Deprecated // sDf16 was deleted
|
@Deprecated // sDf16 was deleted
|
||||||
class Sdf16ValidationRuleTest {
|
class Sdf16ValidationRuleTest {
|
||||||
|
|
||||||
|
|
@ -36,7 +36,7 @@ class Sdf16ValidationRuleTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T getSingleObjectBySQL(String sql) {
|
public T getFirstObjectBySQL(String sql) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,7 @@ public class SortingConfig {
|
||||||
@Bean
|
@Bean
|
||||||
public Function<Long, ClearingCategory> clearingMemberCategoryProvider() {
|
public Function<Long, ClearingCategory> clearingMemberCategoryProvider() {
|
||||||
return companyId -> {
|
return companyId -> {
|
||||||
ClearingMemberCategory category = clearingCategoryImdg.getSingleObjectByFieldValues(
|
ClearingMemberCategory category = clearingCategoryImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("companyId", companyId));
|
Map.of("companyId", companyId));
|
||||||
return IEnumKey.getEnumByKey(ClearingCategory.class,
|
return IEnumKey.getEnumByKey(ClearingCategory.class,
|
||||||
category.getClearingMemberCategory());
|
category.getClearingMemberCategory());
|
||||||
|
|
|
||||||
|
|
@ -143,7 +143,7 @@ public class Clearing {
|
||||||
log.trace("executionDeposit {} was updated DENIED", execDeposit.getId());
|
log.trace("executionDeposit {} was updated DENIED", execDeposit.getId());
|
||||||
//также необходимо установить статус DEND встречной сделке контрагента этой компании, которая выбирается из executionDeposit по ключу:
|
//также необходимо установить статус DEND встречной сделке контрагента этой компании, которая выбирается из executionDeposit по ключу:
|
||||||
//securityId И чтобы сделка была компании категории clearingMemberCategory.clearingMemberCategory ≠ той категории, сделка которой обрабатывается в настоящий момент.
|
//securityId И чтобы сделка была компании категории clearingMemberCategory.clearingMemberCategory ≠ той категории, сделка которой обрабатывается в настоящий момент.
|
||||||
ExecutionDeposit matchedExecDeposit = executionDepositImdg.getSingleObjectBySQL(
|
ExecutionDeposit matchedExecDeposit = executionDepositImdg.getFirstObjectBySQL(
|
||||||
"exchangeExecutionId = " + execDeposit.getExchangeExecutionId()
|
"exchangeExecutionId = " + execDeposit.getExchangeExecutionId()
|
||||||
+ " AND side != '" + execDeposit.getSide() + "'");
|
+ " AND side != '" + execDeposit.getSide() + "'");
|
||||||
if (matchedExecDeposit != null) {
|
if (matchedExecDeposit != null) {
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ public class PaymentUpdateBySdf04 {
|
||||||
log.warn("sdf04.id={} cannot parse docnm_ref={} as payment id", sDf04.getId(), sDf04.getDocnm_ref());
|
log.warn("sdf04.id={} cannot parse docnm_ref={} as payment id", sDf04.getId(), sDf04.getDocnm_ref());
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
PaymentInstruction payment = paymentImdgs.getSingleObjectByFieldValues(Map.of("id", paymentId));
|
PaymentInstruction payment = paymentImdgs.getFirstObjectByFieldValues(Map.of("id", paymentId));
|
||||||
if ("OK!".equals(sDf04.getImp_result())) {
|
if ("OK!".equals(sDf04.getImp_result())) {
|
||||||
payment.setTransactionStatus(TransactionStatus.ok.getKey());
|
payment.setTransactionStatus(TransactionStatus.ok.getKey());
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ public class RegistryService {
|
||||||
//todo для компани всегда один объект TradingClearingRegistry? пока предполагаю что да и нужно добавить такую проверку(в ТЗ ее нет);
|
//todo для компани всегда один объект TradingClearingRegistry? пока предполагаю что да и нужно добавить такую проверку(в ТЗ ее нет);
|
||||||
//todo see TradingClearingRegistryService.tradingClearingRegistryNew
|
//todo see TradingClearingRegistryService.tradingClearingRegistryNew
|
||||||
|
|
||||||
TradingClearingRegistry tcrByCompanyId = tradingClearingRegistryImdg.getSingleObjectBySQL(byCompanySqlPredicate);
|
TradingClearingRegistry tcrByCompanyId = tradingClearingRegistryImdg.getFirstObjectBySQL(byCompanySqlPredicate);
|
||||||
if (tcrByCompanyId != null) {
|
if (tcrByCompanyId != null) {
|
||||||
log.trace("Found tradingClearingRegistry with id: {}", tcrByCompanyId.getId());
|
log.trace("Found tradingClearingRegistry with id: {}", tcrByCompanyId.getId());
|
||||||
Registry registry = new Registry();
|
Registry registry = new Registry();
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ public class Sdf03Creator {
|
||||||
String c_acc_deb = null;
|
String c_acc_deb = null;
|
||||||
String c_acc_cred = null;
|
String c_acc_cred = null;
|
||||||
if (AccountType.Info.equals(creditAccType) ^ AccountType.Info.equals(debAccType)) {
|
if (AccountType.Info.equals(creditAccType) ^ AccountType.Info.equals(debAccType)) {
|
||||||
Account anltAcc = accountImdg.getSingleObjectBySQL("accountType = '%s' and status = '%s'"
|
Account anltAcc = accountImdg.getFirstObjectBySQL("accountType = '%s' and status = '%s'"
|
||||||
.formatted(AccountType.Anlt.getKey(), Status.Active.getKey()));
|
.formatted(AccountType.Anlt.getKey(), Status.Active.getKey()));
|
||||||
if (anltAcc == null) {
|
if (anltAcc == null) {
|
||||||
throw new IllegalStateException("SDF03 creation error: paymentInstruction.creditLeg_accountId="
|
throw new IllegalStateException("SDF03 creation error: paymentInstruction.creditLeg_accountId="
|
||||||
|
|
|
||||||
|
|
@ -207,7 +207,7 @@ public class SdfCreatorBySTLDPayment {
|
||||||
}
|
}
|
||||||
|
|
||||||
ClearingCategory getClearingCategory(PaymentInstruction paymentInstruction) {
|
ClearingCategory getClearingCategory(PaymentInstruction paymentInstruction) {
|
||||||
ClearingMemberCategory category = clearingMemberCategoryImdg.getSingleObjectByFieldValues(
|
ClearingMemberCategory category = clearingMemberCategoryImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("companyId", paymentInstruction.getSenderId()));
|
Map.of("companyId", paymentInstruction.getSenderId()));
|
||||||
if (category == null) {
|
if (category == null) {
|
||||||
log.trace("ClearingMemberCategory not found by paymentInstruction[{}].companyId={}",
|
log.trace("ClearingMemberCategory not found by paymentInstruction[{}].companyId={}",
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ public class LiabilitiesClaimsAssetsCreator {
|
||||||
Long companyId,
|
Long companyId,
|
||||||
Long securityId,
|
Long securityId,
|
||||||
LocalDate dt) {
|
LocalDate dt) {
|
||||||
LiabilitiesClaimsAssets asset = assetsImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsAssets asset = assetsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountId,
|
Map.of("accountId", accountId,
|
||||||
"companyId", companyId,
|
"companyId", companyId,
|
||||||
"securityId", securityId,
|
"securityId", securityId,
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ public class LiabilitiesClaimsMoneyCreator {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Optional<LiabilitiesClaimsMoney> searchLcmBySettlementDate(Long accountId, Long companyId, LocalDate settlementDate) {
|
public Optional<LiabilitiesClaimsMoney> searchLcmBySettlementDate(Long accountId, Long companyId, LocalDate settlementDate) {
|
||||||
LiabilitiesClaimsMoney liabilitiesClaimsMoney = liabilitiesClaimsMoneyImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsMoney liabilitiesClaimsMoney = liabilitiesClaimsMoneyImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountId, "companyId", companyId, "settlementDate", settlementDate));
|
Map.of("accountId", accountId, "companyId", companyId, "settlementDate", settlementDate));
|
||||||
return Optional.ofNullable(liabilitiesClaimsMoney);
|
return Optional.ofNullable(liabilitiesClaimsMoney);
|
||||||
}
|
}
|
||||||
|
|
@ -80,7 +80,7 @@ public class LiabilitiesClaimsMoneyCreator {
|
||||||
}
|
}
|
||||||
|
|
||||||
public Optional<LiabilitiesClaimsMoney> searchLcmByRefundDate(Long accountId, Long companyId, LocalDate refundDate) {
|
public Optional<LiabilitiesClaimsMoney> searchLcmByRefundDate(Long accountId, Long companyId, LocalDate refundDate) {
|
||||||
LiabilitiesClaimsMoney liabilitiesClaimsMoney = liabilitiesClaimsMoneyImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsMoney liabilitiesClaimsMoney = liabilitiesClaimsMoneyImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountId, "companyId", companyId, "settlementDate", refundDate));
|
Map.of("accountId", accountId, "companyId", companyId, "settlementDate", refundDate));
|
||||||
return Optional.ofNullable(liabilitiesClaimsMoney);
|
return Optional.ofNullable(liabilitiesClaimsMoney);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ public class PaymentInstructionBuilder {
|
||||||
Registry registry = registryLM.get();
|
Registry registry = registryLM.get();
|
||||||
paymentInstruction.setSenderId(registry.getCompanyId());
|
paymentInstruction.setSenderId(registry.getCompanyId());
|
||||||
|
|
||||||
CompanySymbols companySymbols = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
CompanySymbols companySymbols = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", registry.getCompanyId(),
|
"companyId", registry.getCompanyId(),
|
||||||
"companySymbol", CompanySymbol.BIC.getKey()));
|
"companySymbol", CompanySymbol.BIC.getKey()));
|
||||||
|
|
||||||
|
|
@ -101,7 +101,7 @@ public class PaymentInstructionBuilder {
|
||||||
|
|
||||||
CompanySymbols companySymbols = null;
|
CompanySymbols companySymbols = null;
|
||||||
if (registry.getCounterPartyId() != null) {
|
if (registry.getCounterPartyId() != null) {
|
||||||
companySymbols = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
companySymbols = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", registry.getCompanyId(),
|
"companyId", registry.getCompanyId(),
|
||||||
"companySymbol", CompanySymbol.BIC.getKey())
|
"companySymbol", CompanySymbol.BIC.getKey())
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -247,7 +247,7 @@ public class PaymentInstructionBuilderFinalMkrDeals {
|
||||||
if (companyId == null) {
|
if (companyId == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
CompanySymbols cSymbol = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
CompanySymbols cSymbol = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", companyId,
|
"companyId", companyId,
|
||||||
"companySymbol", symbol.getKey()));
|
"companySymbol", symbol.getKey()));
|
||||||
if (cSymbol == null) {
|
if (cSymbol == null) {
|
||||||
|
|
@ -261,7 +261,7 @@ public class PaymentInstructionBuilderFinalMkrDeals {
|
||||||
if (companyId == null) {
|
if (companyId == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of(
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", companyId,
|
"companyId", companyId,
|
||||||
"accountType", accountType.getKey(),
|
"accountType", accountType.getKey(),
|
||||||
"status", accountStatus.getKey(),
|
"status", accountStatus.getKey(),
|
||||||
|
|
|
||||||
|
|
@ -542,7 +542,7 @@ public class PaymentInstructionCreator {
|
||||||
criteria.put("senderId", lca.getCompanyId());
|
criteria.put("senderId", lca.getCompanyId());
|
||||||
criteria.put("paymentPurpose", paymentPurpose(lca.getContract()));
|
criteria.put("paymentPurpose", paymentPurpose(lca.getContract()));
|
||||||
criteria.put("settlementDate", lca.getSettlementDate());
|
criteria.put("settlementDate", lca.getSettlementDate());
|
||||||
PaymentInstruction payment1 = paymentInstructionImdg.getSingleObjectByFieldValues(criteria);
|
PaymentInstruction payment1 = paymentInstructionImdg.getFirstObjectByFieldValues(criteria);
|
||||||
return payment1;
|
return payment1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -601,7 +601,7 @@ public class PaymentInstructionCreator {
|
||||||
if (companyId == null) {
|
if (companyId == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
CompanySymbols cSymbol = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
CompanySymbols cSymbol = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", companyId,
|
"companyId", companyId,
|
||||||
"companySymbol", symbol.getKey()));
|
"companySymbol", symbol.getKey()));
|
||||||
if (cSymbol == null) {
|
if (cSymbol == null) {
|
||||||
|
|
@ -615,7 +615,7 @@ public class PaymentInstructionCreator {
|
||||||
if (companyId == null) {
|
if (companyId == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of(
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", companyId,
|
"companyId", companyId,
|
||||||
"accountType", accountType.getKey(),
|
"accountType", accountType.getKey(),
|
||||||
"accountStatus", accountStatus.getKey(),
|
"accountStatus", accountStatus.getKey(),
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,7 @@ public class RegistryBuilder {
|
||||||
|
|
||||||
AccountType accType = IEnumKey.getEnumByKey(AccountType.class, account.getAccountType());
|
AccountType accType = IEnumKey.getEnumByKey(AccountType.class, account.getAccountType());
|
||||||
if (AccountType.Clrn.equals(accType)) {
|
if (AccountType.Clrn.equals(accType)) {
|
||||||
ClearingAccount accountForStatement = clearingAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", statement.getAccountId()));
|
ClearingAccount accountForStatement = clearingAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", statement.getAccountId()));
|
||||||
if (accountForStatement != null) {
|
if (accountForStatement != null) {
|
||||||
rgs.setRegistryCapacity(accountForStatement.getClearingAccountType());
|
rgs.setRegistryCapacity(accountForStatement.getClearingAccountType());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -116,7 +116,7 @@ public class ExecutionDepositComponent {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
MoneyFlowSide excDepSide = sTrdSide.equals(Side.BUY) ? MoneyFlowSide.BUY : MoneyFlowSide.SELL;
|
MoneyFlowSide excDepSide = sTrdSide.equals(Side.BUY) ? MoneyFlowSide.BUY : MoneyFlowSide.SELL;
|
||||||
return executionDepositImdg.getSingleObjectByFieldValues(
|
return executionDepositImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("tradingDate", sTrd.getTradeDate(),
|
Map.of("tradingDate", sTrd.getTradeDate(),
|
||||||
"exchangeExecutionId", sTrd.getTradeNum(),
|
"exchangeExecutionId", sTrd.getTradeNum(),
|
||||||
"side", excDepSide.getKey())) != null;
|
"side", excDepSide.getKey())) != null;
|
||||||
|
|
@ -173,7 +173,7 @@ public class ExecutionDepositComponent {
|
||||||
Company company = validator.getStored(ValidationStored.STradesCompany);
|
Company company = validator.getStored(ValidationStored.STradesCompany);
|
||||||
Company counterCompany = validator.getStored(ValidationStored.STradesCounterCompany);
|
Company counterCompany = validator.getStored(ValidationStored.STradesCounterCompany);
|
||||||
TradingClearingRegistry rgstr = validator.getStored(ValidationStored.STradesTradingClearingRegistry);
|
TradingClearingRegistry rgstr = validator.getStored(ValidationStored.STradesTradingClearingRegistry);
|
||||||
Listing listing = listingImdg.getSingleObjectByFieldValues(Map.of("securityId", security.getId()));
|
Listing listing = listingImdg.getFirstObjectByFieldValues(Map.of("securityId", security.getId()));
|
||||||
|
|
||||||
ExecutionDeposit eDeposit = new ExecutionDeposit();
|
ExecutionDeposit eDeposit = new ExecutionDeposit();
|
||||||
final Instant now = Instant.now();
|
final Instant now = Instant.now();
|
||||||
|
|
|
||||||
|
|
@ -110,7 +110,7 @@ public class ExecutionFondComponent {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
Side excDepSide = sTrdSide.equals(Side.BUY) ? Side.BUY : Side.SELL;
|
Side excDepSide = sTrdSide.equals(Side.BUY) ? Side.BUY : Side.SELL;
|
||||||
return executionFondImdg.getSingleObjectByFieldValues(
|
return executionFondImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("tradingDate", sTrd.getTradeDate(),
|
Map.of("tradingDate", sTrd.getTradeDate(),
|
||||||
"exchangeExecutionId", sTrd.getTradeNum(),
|
"exchangeExecutionId", sTrd.getTradeNum(),
|
||||||
"side", excDepSide.getKey())) != null;
|
"side", excDepSide.getKey())) != null;
|
||||||
|
|
@ -167,7 +167,7 @@ public class ExecutionFondComponent {
|
||||||
Company company = validator.getStored(ValidationStored.STradesCompany);
|
Company company = validator.getStored(ValidationStored.STradesCompany);
|
||||||
Company counterCompany = validator.getStored(ValidationStored.STradesCounterCompany);
|
Company counterCompany = validator.getStored(ValidationStored.STradesCounterCompany);
|
||||||
TradingClearingRegistry rgstr = validator.getStored(ValidationStored.STradesTradingClearingRegistry);
|
TradingClearingRegistry rgstr = validator.getStored(ValidationStored.STradesTradingClearingRegistry);
|
||||||
ClientCode clientCode = clientCodeImdg.getSingleObjectByFieldValues(Map.of("code", sTrades.getClientCode()));
|
ClientCode clientCode = clientCodeImdg.getFirstObjectByFieldValues(Map.of("code", sTrades.getClientCode()));
|
||||||
|
|
||||||
ExecutionFond eFond = new ExecutionFond();
|
ExecutionFond eFond = new ExecutionFond();
|
||||||
final Instant now = Instant.now();
|
final Instant now = Instant.now();
|
||||||
|
|
@ -179,7 +179,7 @@ public class ExecutionFondComponent {
|
||||||
eFond.setTradingClearingRegistryId(rgstr.getId());
|
eFond.setTradingClearingRegistryId(rgstr.getId());
|
||||||
|
|
||||||
//todo можем ли просто переложить sTrades.getClassCode() или все такие искать, одно и тоже же
|
//todo можем ли просто переложить sTrades.getClassCode() или все такие искать, одно и тоже же
|
||||||
ru.clearing.classes.statics.data.misc.Market market = marketImdg.getSingleObjectBySQL("code = '%s'".formatted(sTrades.getClassCode()));
|
ru.clearing.classes.statics.data.misc.Market market = marketImdg.getFirstObjectBySQL("code = '%s'".formatted(sTrades.getClassCode()));
|
||||||
eFond.setMarket(sTrades.getClassCode());
|
eFond.setMarket(sTrades.getClassCode());
|
||||||
|
|
||||||
eFond.setPrice(sTrades.getPrice());
|
eFond.setPrice(sTrades.getPrice());
|
||||||
|
|
|
||||||
|
|
@ -242,7 +242,7 @@ public class Sdf01Executor extends AbstractExecutor<SDf01> {
|
||||||
stmt.setInSDfId(sdf01.getId());
|
stmt.setInSDfId(sdf01.getId());
|
||||||
stmt.setInOutSDfType(InOutSDfType.type1.getKey());
|
stmt.setInOutSDfType(InOutSDfType.type1.getKey());
|
||||||
stmt.setClearingDate(LocalDate.now());
|
stmt.setClearingDate(LocalDate.now());
|
||||||
Currency currency = currencyImdg.getSingleObjectByFieldValues(Map.of("currencyCode", CurrencyCode.RUB.getKey()));
|
Currency currency = currencyImdg.getFirstObjectByFieldValues(Map.of("currencyCode", CurrencyCode.RUB.getKey()));
|
||||||
if (currency != null) {
|
if (currency != null) {
|
||||||
stmt.setSecurityId(currency.getId());
|
stmt.setSecurityId(currency.getId());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ public class Sdf04Executor extends AbstractExecutor<SDf04> {
|
||||||
//обычно мы ищем по группу sdf04, здесь как будто всегда только одна запись, todo нужно прочекать этот момент
|
//обычно мы ищем по группу sdf04, здесь как будто всегда только одна запись, todo нужно прочекать этот момент
|
||||||
log.debug("Process sdf04 record; sdf04.id: {}", sdf04.getId());
|
log.debug("Process sdf04 record; sdf04.id: {}", sdf04.getId());
|
||||||
Collection<Registry> registries;
|
Collection<Registry> registries;
|
||||||
Account anltAcc = accountImdg.getSingleObjectBySQL("account = '%s' and accountType = '%s'"
|
Account anltAcc = accountImdg.getFirstObjectBySQL("account = '%s' and accountType = '%s'"
|
||||||
.formatted(sdf04.getC_acc_deb(), AccountType.Anlt.getKey()));
|
.formatted(sdf04.getC_acc_deb(), AccountType.Anlt.getKey()));
|
||||||
//если сдф04 не по аналитическому счету, выбираем по тому c_acc_deb что пришло
|
//если сдф04 не по аналитическому счету, выбираем по тому c_acc_deb что пришло
|
||||||
if (anltAcc == null) {
|
if (anltAcc == null) {
|
||||||
|
|
|
||||||
|
|
@ -148,7 +148,7 @@ public class Sdf06Executor {
|
||||||
}
|
}
|
||||||
Company company = validator.getStored(ValidationStored.Sdf06Company);
|
Company company = validator.getStored(ValidationStored.Sdf06Company);
|
||||||
Account account = validator.getStored(ValidationStored.Sdf06Account);
|
Account account = validator.getStored(ValidationStored.Sdf06Account);
|
||||||
TradingClearingRegistry tcr = tradingClearingRegistryImdg.getSingleObjectByFieldValues(
|
TradingClearingRegistry tcr = tradingClearingRegistryImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("moneyAccountId", account.getId())
|
Map.of("moneyAccountId", account.getId())
|
||||||
);
|
);
|
||||||
//проверка существует ли statement пока убрал
|
//проверка существует ли statement пока убрал
|
||||||
|
|
|
||||||
|
|
@ -230,9 +230,9 @@ public class Sdf08Executor extends AbstractExecutor<SDf08> {
|
||||||
stmt.setInSDfId(sdf08.getId());
|
stmt.setInSDfId(sdf08.getId());
|
||||||
stmt.setInOutSDfType(InOutSDfType.type08.getKey());
|
stmt.setInOutSDfType(InOutSDfType.type08.getKey());
|
||||||
stmt.setClearingDate(LocalDate.now());
|
stmt.setClearingDate(LocalDate.now());
|
||||||
Security security = fixedIncomeSecurityImdg.getSingleObjectByFieldValues(Map.of("securitySymbol", sdf08.getSecurityCode()));
|
Security security = fixedIncomeSecurityImdg.getFirstObjectByFieldValues(Map.of("securitySymbol", sdf08.getSecurityCode()));
|
||||||
if (security == null) {
|
if (security == null) {
|
||||||
security = equitySecurityImdg.getSingleObjectByFieldValues(Map.of("securitySymbol", sdf08.getSecurityCode()));
|
security = equitySecurityImdg.getFirstObjectByFieldValues(Map.of("securitySymbol", sdf08.getSecurityCode()));
|
||||||
}
|
}
|
||||||
if (security != null) {
|
if (security != null) {
|
||||||
stmt.setSecurityId(security.getId());
|
stmt.setSecurityId(security.getId());
|
||||||
|
|
@ -266,7 +266,7 @@ public class Sdf08Executor extends AbstractExecutor<SDf08> {
|
||||||
rgs.setAccount(account.getAccount());
|
rgs.setAccount(account.getAccount());
|
||||||
rgs.setRegistryDesignation(RegistryDesignation.A.getKey());
|
rgs.setRegistryDesignation(RegistryDesignation.A.getKey());
|
||||||
rgs.setRegistryInstrumentType(RegistryInstrumentType.S.getKey());
|
rgs.setRegistryInstrumentType(RegistryInstrumentType.S.getKey());
|
||||||
DepoAccount depoAccount = depoAccountImdg.getSingleObjectByFieldValues(Map.of("accountId", statement.getAccountId()));
|
DepoAccount depoAccount = depoAccountImdg.getFirstObjectByFieldValues(Map.of("accountId", statement.getAccountId()));
|
||||||
if (depoAccount != null) {
|
if (depoAccount != null) {
|
||||||
rgs.setRegistryCapacity(depoAccount.getDepoAccountType());
|
rgs.setRegistryCapacity(depoAccount.getDepoAccountType());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ public class Sdf13Executor extends AbstractExecutor<SDf13> {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected SDf12 selectSdf12bySdf13(SDf13 sDf13) {
|
protected SDf12 selectSdf12bySdf13(SDf13 sDf13) {
|
||||||
SDf12 sdf12 = sdf12Imdg.getSingleObjectByFieldValues(Map.of("outDocument", sDf13.getInDocument()));
|
SDf12 sdf12 = sdf12Imdg.getFirstObjectByFieldValues(Map.of("outDocument", sDf13.getInDocument()));
|
||||||
return sdf12;
|
return sdf12;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -415,7 +415,7 @@ public class Sdf57Executor extends AbstractExecutor<SDf57> {
|
||||||
statement.setComment(sdf57.getSpecif());
|
statement.setComment(sdf57.getSpecif());
|
||||||
statement.setAccountId(accountDeb.getId());
|
statement.setAccountId(accountDeb.getId());
|
||||||
|
|
||||||
Currency currency = currencyImdg.getSingleObjectByFieldValues(Map.of("currencyCode", "RUB"));
|
Currency currency = currencyImdg.getFirstObjectByFieldValues(Map.of("currencyCode", "RUB"));
|
||||||
if (currency != null) {
|
if (currency != null) {
|
||||||
statement.setSecurityId(currency.getId());
|
statement.setSecurityId(currency.getId());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -109,7 +109,7 @@ public class SdfLegacyExecutor extends AbstractExecutor<SDf01> {
|
||||||
sdf02Imdg.insert(createErrorSdf02(sdf01, error.get(), generationIdForGroup));
|
sdf02Imdg.insert(createErrorSdf02(sdf01, error.get(), generationIdForGroup));
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
Statement statement = statementImdg.getSingleObjectByFieldValues(Map.of("account", sdf01.getAccount()));
|
Statement statement = statementImdg.getFirstObjectByFieldValues(Map.of("account", sdf01.getAccount()));
|
||||||
if (statement == null) {
|
if (statement == null) {
|
||||||
statement = createFlow(sdf01,
|
statement = createFlow(sdf01,
|
||||||
company,
|
company,
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ public enum ExecutionDepositValidationRule implements IValidationRule<ImdgValida
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<ExecutionDeposit> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<ExecutionDeposit> context) {
|
||||||
ExecutionDeposit validatedObject = context.getValidatedObject();
|
ExecutionDeposit validatedObject = context.getValidatedObject();
|
||||||
Imdg<Relation> relationImdg = context.obtainMap(IMDGDistributedNames.Map_Relation, Relation.class);
|
Imdg<Relation> relationImdg = context.obtainMap(IMDGDistributedNames.Map_Relation, Relation.class);
|
||||||
Relation relation = relationImdg.getSingleObjectByFieldValues(Map.of("consumerId", validatedObject.getCompanyId()));
|
Relation relation = relationImdg.getFirstObjectByFieldValues(Map.of("consumerId", validatedObject.getCompanyId()));
|
||||||
if (relation == null || !ServiceStatus.Active.equalsByKey(relation.getServiceStatus())) {
|
if (relation == null || !ServiceStatus.Active.equalsByKey(relation.getServiceStatus())) {
|
||||||
return of(ClearingErrorInternal.ClearingNotAllowed);
|
return of(ClearingErrorInternal.ClearingNotAllowed);
|
||||||
}
|
}
|
||||||
|
|
@ -52,7 +52,7 @@ public enum ExecutionDepositValidationRule implements IValidationRule<ImdgValida
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<ExecutionDeposit> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<ExecutionDeposit> context) {
|
||||||
ExecutionDeposit validatedObject = context.getValidatedObject();
|
ExecutionDeposit validatedObject = context.getValidatedObject();
|
||||||
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
Company company = companyImdg.getSingleObjectByFieldValues(Map.of("id", validatedObject.getCompanyId()));
|
Company company = companyImdg.getFirstObjectByFieldValues(Map.of("id", validatedObject.getCompanyId()));
|
||||||
if (company == null || !WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus())) {
|
if (company == null || !WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus())) {
|
||||||
return of(ClearingErrorInternal.CompanyNotActive);
|
return of(ClearingErrorInternal.CompanyNotActive);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ public enum RegistryStep3ValidationRule implements IValidationRule<ImdgValidatio
|
||||||
if (session == null) {
|
if (session == null) {
|
||||||
return "null";
|
return "null";
|
||||||
} else {
|
} else {
|
||||||
SectionDictionary section = sectionDictionaryImdg.getSingleObjectBySQL("code ='" + session.getSection() + "'");
|
SectionDictionary section = sectionDictionaryImdg.getFirstObjectBySQL("code ='" + session.getSection() + "'");
|
||||||
if (section == null) {
|
if (section == null) {
|
||||||
return "null";
|
return "null";
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -47,7 +47,7 @@ public enum RegistryStep3ValidationRule implements IValidationRule<ImdgValidatio
|
||||||
Imdg<Relation> relationImdg = context.obtainMap(IMDGDistributedNames.Map_Relation, Relation.class);
|
Imdg<Relation> relationImdg = context.obtainMap(IMDGDistributedNames.Map_Relation, Relation.class);
|
||||||
Imdg<Session> sessionImdg = context.obtainMap(IMDGDistributedNames.Map_Session, Session.class);
|
Imdg<Session> sessionImdg = context.obtainMap(IMDGDistributedNames.Map_Session, Session.class);
|
||||||
Session activeSession = sessionImdg.getSingleObjectByID(validatedObject.getSessionId());
|
Session activeSession = sessionImdg.getSingleObjectByID(validatedObject.getSessionId());
|
||||||
Relation relation = relationImdg.getSingleObjectByFieldValues(Map.of(
|
Relation relation = relationImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"consumerId", validatedObject.getCompanyId(),
|
"consumerId", validatedObject.getCompanyId(),
|
||||||
"service", activeSession.getSection()));
|
"service", activeSession.getSection()));
|
||||||
if (relation == null || (!ServiceStatus.Active.equalsByKey(relation.getServiceStatus()) && !ServiceStatus.Reopened.equalsByKey(relation.getServiceStatus()))) {
|
if (relation == null || (!ServiceStatus.Active.equalsByKey(relation.getServiceStatus()) && !ServiceStatus.Reopened.equalsByKey(relation.getServiceStatus()))) {
|
||||||
|
|
@ -62,7 +62,7 @@ public enum RegistryStep3ValidationRule implements IValidationRule<ImdgValidatio
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<Registry> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<Registry> context) {
|
||||||
Registry validatedObject = context.getValidatedObject();
|
Registry validatedObject = context.getValidatedObject();
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectBySQL("id = %d".formatted(validatedObject.getAccountId()));
|
Account account = accountImdg.getFirstObjectBySQL("id = %d".formatted(validatedObject.getAccountId()));
|
||||||
if (account == null || (!IEnumKey.contains(account.getStatus(), ServiceStatus.Active, ServiceStatus.Reopened))) {
|
if (account == null || (!IEnumKey.contains(account.getStatus(), ServiceStatus.Active, ServiceStatus.Reopened))) {
|
||||||
return of(ClearingError.AccountNotActive, validatedObject.getAccountId());
|
return of(ClearingError.AccountNotActive, validatedObject.getAccountId());
|
||||||
}
|
}
|
||||||
|
|
@ -77,7 +77,7 @@ public enum RegistryStep3ValidationRule implements IValidationRule<ImdgValidatio
|
||||||
if (validatedObject.getCompanyId() == null) {
|
if (validatedObject.getCompanyId() == null) {
|
||||||
return of(ClearingError.CompanyNotActive, validatedObject.getCompanyId());
|
return of(ClearingError.CompanyNotActive, validatedObject.getCompanyId());
|
||||||
}
|
}
|
||||||
Company company = companyImdg.getSingleObjectBySQL("id = %d".formatted(validatedObject.getCompanyId()));
|
Company company = companyImdg.getFirstObjectBySQL("id = %d".formatted(validatedObject.getCompanyId()));
|
||||||
if (company == null || !WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus())) {
|
if (company == null || !WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus())) {
|
||||||
return of(ClearingError.CompanyNotActive, validatedObject.getCompanyId());
|
return of(ClearingError.CompanyNotActive, validatedObject.getCompanyId());
|
||||||
}
|
}
|
||||||
|
|
@ -92,7 +92,7 @@ public enum RegistryStep3ValidationRule implements IValidationRule<ImdgValidatio
|
||||||
return of(ClearingError.TradingClearingRegistryNotActive, validatedObject.getTradingClearingRegistryId());
|
return of(ClearingError.TradingClearingRegistryNotActive, validatedObject.getTradingClearingRegistryId());
|
||||||
}
|
}
|
||||||
Imdg<TradingClearingRegistry> tradingClearingRegistryImdg = context.obtainMap(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
Imdg<TradingClearingRegistry> tradingClearingRegistryImdg = context.obtainMap(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
||||||
TradingClearingRegistry tcr = tradingClearingRegistryImdg.getSingleObjectBySQL("id = " + validatedObject.getTradingClearingRegistryId());
|
TradingClearingRegistry tcr = tradingClearingRegistryImdg.getFirstObjectBySQL("id = " + validatedObject.getTradingClearingRegistryId());
|
||||||
if (tcr == null || !(ServiceStatus.Active.equalsByKey(tcr.getStatus()) || ServiceStatus.Reopened.equalsByKey(tcr.getStatus())))
|
if (tcr == null || !(ServiceStatus.Active.equalsByKey(tcr.getStatus()) || ServiceStatus.Reopened.equalsByKey(tcr.getStatus())))
|
||||||
return of(ClearingError.TradingClearingRegistryNotActive, validatedObject.getTradingClearingRegistryId());
|
return of(ClearingError.TradingClearingRegistryNotActive, validatedObject.getTradingClearingRegistryId());
|
||||||
return empty();
|
return empty();
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ public enum STradesValidationRule implements IValidationRule<ImdgValidationConte
|
||||||
return of(ClearingError.SecurityNotFound, validatedObject.getSecCode());
|
return of(ClearingError.SecurityNotFound, validatedObject.getSecCode());
|
||||||
}
|
}
|
||||||
Imdg<Security> securityImdg = context.obtainMap(IMDGDistributedNames.Map_Security, Security.class);
|
Imdg<Security> securityImdg = context.obtainMap(IMDGDistributedNames.Map_Security, Security.class);
|
||||||
Security security = securityImdg.getSingleObjectByFieldValues(Map.of("securitySymbol", validatedObject.getSecCode()));
|
Security security = securityImdg.getFirstObjectByFieldValues(Map.of("securitySymbol", validatedObject.getSecCode()));
|
||||||
if (security == null) {
|
if (security == null) {
|
||||||
return of(ClearingError.SecurityNotFound, validatedObject.getSecCode());
|
return of(ClearingError.SecurityNotFound, validatedObject.getSecCode());
|
||||||
}
|
}
|
||||||
|
|
@ -48,7 +48,7 @@ public enum STradesValidationRule implements IValidationRule<ImdgValidationConte
|
||||||
String secCode = validatedObject.getSecCode().trim();
|
String secCode = validatedObject.getSecCode().trim();
|
||||||
secCode = secCode.substring(0, Math.min(7, secCode.length()));
|
secCode = secCode.substring(0, Math.min(7, secCode.length()));
|
||||||
Imdg<MoneyMarketSecurity> securityImdg = context.obtainMap(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class);
|
Imdg<MoneyMarketSecurity> securityImdg = context.obtainMap(IMDGDistributedNames.Map_MoneyMarketSecurity, MoneyMarketSecurity.class);
|
||||||
Security security = securityImdg.getSingleObjectByFieldValues(Map.of("securitySymbol", secCode));
|
Security security = securityImdg.getFirstObjectByFieldValues(Map.of("securitySymbol", secCode));
|
||||||
if (security == null) {
|
if (security == null) {
|
||||||
return of(ClearingError.SecurityNotFound, secCode);
|
return of(ClearingError.SecurityNotFound, secCode);
|
||||||
}
|
}
|
||||||
|
|
@ -66,7 +66,7 @@ public enum STradesValidationRule implements IValidationRule<ImdgValidationConte
|
||||||
return of(ClearingError.CompanyNotFound, validatedObject.getFirmId());
|
return of(ClearingError.CompanyNotFound, validatedObject.getFirmId());
|
||||||
}
|
}
|
||||||
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
Company company = companyImdg.getSingleObjectByFieldValues(Map.of("tradingCode", validatedObject.getFirmId()));
|
Company company = companyImdg.getFirstObjectByFieldValues(Map.of("tradingCode", validatedObject.getFirmId()));
|
||||||
if (company == null) {
|
if (company == null) {
|
||||||
return of(ClearingError.CompanyNotFound, validatedObject.getFirmId());
|
return of(ClearingError.CompanyNotFound, validatedObject.getFirmId());
|
||||||
}
|
}
|
||||||
|
|
@ -82,7 +82,7 @@ public enum STradesValidationRule implements IValidationRule<ImdgValidationConte
|
||||||
return of(ClearingError.CompanyNotFound, validatedObject.getCpFirmId());
|
return of(ClearingError.CompanyNotFound, validatedObject.getCpFirmId());
|
||||||
}
|
}
|
||||||
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
Company company = companyImdg.getSingleObjectByFieldValues(Map.of("tradingCode", validatedObject.getCpFirmId()));
|
Company company = companyImdg.getFirstObjectByFieldValues(Map.of("tradingCode", validatedObject.getCpFirmId()));
|
||||||
if (company == null) {
|
if (company == null) {
|
||||||
return of(ClearingError.CompanyNotFound, validatedObject.getCpFirmId());
|
return of(ClearingError.CompanyNotFound, validatedObject.getCpFirmId());
|
||||||
}
|
}
|
||||||
|
|
@ -105,7 +105,7 @@ public enum STradesValidationRule implements IValidationRule<ImdgValidationConte
|
||||||
return of(ClearingError.CompanyNotFound, validatedObject.getSecCode());
|
return of(ClearingError.CompanyNotFound, validatedObject.getSecCode());
|
||||||
}
|
}
|
||||||
Imdg<TradingClearingRegistry> registryImdg = context.obtainMap(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
Imdg<TradingClearingRegistry> registryImdg = context.obtainMap(IMDGDistributedNames.Map_TradingClearingRegistry, TradingClearingRegistry.class);
|
||||||
TradingClearingRegistry tcRegister = registryImdg.getSingleObjectByFieldValues(
|
TradingClearingRegistry tcRegister = registryImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("code", validatedObject.getAccount().trim(),
|
Map.of("code", validatedObject.getAccount().trim(),
|
||||||
"companyId", ((Company) context.getStoredObject(ValidationStored.STradesCompany)).getId()
|
"companyId", ((Company) context.getStoredObject(ValidationStored.STradesCompany)).getId()
|
||||||
));
|
));
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ public enum Sdf01NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
of(ClearingError.CompanyNotFoundB, sdf01.getDeal());
|
of(ClearingError.CompanyNotFoundB, sdf01.getDeal());
|
||||||
}
|
}
|
||||||
|
|
||||||
Company company = companyImdg.getSingleObjectBySQL("tradingCode = '" + sdf01.getDeal() + "'");
|
Company company = companyImdg.getFirstObjectBySQL("tradingCode = '" + sdf01.getDeal() + "'");
|
||||||
if (company == null) {
|
if (company == null) {
|
||||||
return of(ClearingError.CompanyNotFoundB, sdf01.getDeal());
|
return of(ClearingError.CompanyNotFoundB, sdf01.getDeal());
|
||||||
}
|
}
|
||||||
|
|
@ -51,7 +51,7 @@ public enum Sdf01NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<SDf01> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<SDf01> context) {
|
||||||
SDf01 sdf01 = context.getValidatedObject();
|
SDf01 sdf01 = context.getValidatedObject();
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account acc = accountImdg.getSingleObjectBySQL("account = '" + sdf01.getAccount()
|
Account acc = accountImdg.getFirstObjectBySQL("account = '" + sdf01.getAccount()
|
||||||
+ "' and accountType='" + ru.spcex.platform.enumeration.AccountType.Clrn.getKey() + "'");
|
+ "' and accountType='" + ru.spcex.platform.enumeration.AccountType.Clrn.getKey() + "'");
|
||||||
if (acc == null) {
|
if (acc == null) {
|
||||||
return of (ClearingErrorInternal.AccountNotPresent, sdf01.getAccount());
|
return of (ClearingErrorInternal.AccountNotPresent, sdf01.getAccount());
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ public enum Sdf01ValidationRule implements IValidationRule<ImdgValidationContext
|
||||||
return of(ClearingError.CompanyNotFound);
|
return of(ClearingError.CompanyNotFound);
|
||||||
}
|
}
|
||||||
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
Company company = companyImdg.getSingleObjectByFieldValues(Map.of("tradingCode", sdf01.getDeal()));
|
Company company = companyImdg.getFirstObjectByFieldValues(Map.of("tradingCode", sdf01.getDeal()));
|
||||||
if (company == null) {
|
if (company == null) {
|
||||||
return of(ClearingError.CompanyNotFound);
|
return of(ClearingError.CompanyNotFound);
|
||||||
}
|
}
|
||||||
|
|
@ -42,7 +42,7 @@ public enum Sdf01ValidationRule implements IValidationRule<ImdgValidationContext
|
||||||
return of(ClearingError.AccountNotPresent);
|
return of(ClearingError.AccountNotPresent);
|
||||||
}
|
}
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of("account", sdf01.getAccount(),
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of("account", sdf01.getAccount(),
|
||||||
"accountType", AccountType.Clrn.getKey()));
|
"accountType", AccountType.Clrn.getKey()));
|
||||||
if (account == null) {
|
if (account == null) {
|
||||||
return of(ClearingError.AccountNotPresent);
|
return of(ClearingError.AccountNotPresent);
|
||||||
|
|
|
||||||
|
|
@ -40,11 +40,11 @@ public enum Sdf06NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
|
|
||||||
CompanySymbols companySymbols = null;
|
CompanySymbols companySymbols = null;
|
||||||
if (sdf06.getInn() != null) { //TextUtil.isEmpty
|
if (sdf06.getInn() != null) { //TextUtil.isEmpty
|
||||||
companySymbols = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
companySymbols = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companySymbol", CompanySymbol.INN.getKey(),
|
"companySymbol", CompanySymbol.INN.getKey(),
|
||||||
"companySymbolValue", sdf06.getInn()));
|
"companySymbolValue", sdf06.getInn()));
|
||||||
} else if (sdf06.getBic() != null) {
|
} else if (sdf06.getBic() != null) {
|
||||||
companySymbols = companySymbolsImdg.getSingleObjectByFieldValues(Map.of(
|
companySymbols = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"companySymbol", CompanySymbol.BIC.getKey(),
|
"companySymbol", CompanySymbol.BIC.getKey(),
|
||||||
"companySymbolValue", sdf06.getBic()));
|
"companySymbolValue", sdf06.getBic()));
|
||||||
}
|
}
|
||||||
|
|
@ -71,7 +71,7 @@ public enum Sdf06NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
return of(ClearingError.AccountNotFoundB, sdf06.getAccount());
|
return of(ClearingError.AccountNotFoundB, sdf06.getAccount());
|
||||||
}
|
}
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account account = accountImdg.getSingleObjectByFieldValues(Map.of(
|
Account account = accountImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"account", sdf06.getAccount(),
|
"account", sdf06.getAccount(),
|
||||||
"accountType", AccountType.Clrn.getKey()));
|
"accountType", AccountType.Clrn.getKey()));
|
||||||
if (account == null) {
|
if (account == null) {
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@ public enum Sdf08NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
of(ClearingError.CompanyNotFoundB, sdf08.getClientName());
|
of(ClearingError.CompanyNotFoundB, sdf08.getClientName());
|
||||||
}
|
}
|
||||||
|
|
||||||
Company company = companyImdg.getSingleObjectBySQL("fullName = '" + sdf08.getClientName() + "'");
|
Company company = companyImdg.getFirstObjectBySQL("fullName = '" + sdf08.getClientName() + "'");
|
||||||
if (company == null) {
|
if (company == null) {
|
||||||
return of(ClearingError.CompanyNotFoundB, sdf08.getClientName());
|
return of(ClearingError.CompanyNotFoundB, sdf08.getClientName());
|
||||||
}
|
}
|
||||||
|
|
@ -39,7 +39,7 @@ public enum Sdf08NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<SDf08> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<SDf08> context) {
|
||||||
SDf08 sdf08 = context.getValidatedObject();
|
SDf08 sdf08 = context.getValidatedObject();
|
||||||
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
Imdg<Account> accountImdg = context.obtainMap(IMDGDistributedNames.Map_Account, Account.class);
|
||||||
Account acc = accountImdg.getSingleObjectByFieldValues(Map.of(
|
Account acc = accountImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"account", sdf08.getDepoCode()
|
"account", sdf08.getDepoCode()
|
||||||
, "accountType",ru.spcex.platform.enumeration.AccountType.Depo.getKey()));
|
, "accountType",ru.spcex.platform.enumeration.AccountType.Depo.getKey()));
|
||||||
if (acc == null) {
|
if (acc == null) {
|
||||||
|
|
|
||||||
|
|
@ -24,11 +24,11 @@ public enum Sdf57ValidationRule implements IValidationRule<ImdgValidationContext
|
||||||
Optional<Company> companyCredFound = Optional.empty();
|
Optional<Company> companyCredFound = Optional.empty();
|
||||||
|
|
||||||
if (!TextUtil.isEmpty(sdf57.getDeal_deb())) {
|
if (!TextUtil.isEmpty(sdf57.getDeal_deb())) {
|
||||||
companyDebFound = Optional.ofNullable(companyImdg.getSingleObjectBySQL("tradingCode = '" + sdf57.getDeal_deb() + "'"));
|
companyDebFound = Optional.ofNullable(companyImdg.getFirstObjectBySQL("tradingCode = '" + sdf57.getDeal_deb() + "'"));
|
||||||
companyDebFound.ifPresent(companyDeb -> context.storeObject(ValidationStored.Sdf57CompanyDeb, companyDeb));
|
companyDebFound.ifPresent(companyDeb -> context.storeObject(ValidationStored.Sdf57CompanyDeb, companyDeb));
|
||||||
}
|
}
|
||||||
if (!TextUtil.isEmpty(sdf57.getDeal_cred())) {
|
if (!TextUtil.isEmpty(sdf57.getDeal_cred())) {
|
||||||
companyCredFound = Optional.ofNullable(companyImdg.getSingleObjectBySQL("tradingCode = '" + sdf57.getDeal_cred() + "'"));
|
companyCredFound = Optional.ofNullable(companyImdg.getFirstObjectBySQL("tradingCode = '" + sdf57.getDeal_cred() + "'"));
|
||||||
companyCredFound.ifPresent(companyCred -> context.storeObject(ValidationStored.Sdf57CompanyCred, companyCred));
|
companyCredFound.ifPresent(companyCred -> context.storeObject(ValidationStored.Sdf57CompanyCred, companyCred));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -47,12 +47,12 @@ public enum Sdf57ValidationRule implements IValidationRule<ImdgValidationContext
|
||||||
Optional<Account> accountDebFound = Optional.empty();
|
Optional<Account> accountDebFound = Optional.empty();
|
||||||
Optional<Account> accountCredFound = Optional.empty();
|
Optional<Account> accountCredFound = Optional.empty();
|
||||||
if (!TextUtil.isEmpty(sdf57.getAcc_deb())) {
|
if (!TextUtil.isEmpty(sdf57.getAcc_deb())) {
|
||||||
accountDebFound = Optional.ofNullable(accountImdg.getSingleObjectBySQL("account = '" + sdf57.getAcc_deb() + "'"));
|
accountDebFound = Optional.ofNullable(accountImdg.getFirstObjectBySQL("account = '" + sdf57.getAcc_deb() + "'"));
|
||||||
accountDebFound.ifPresent(accountDeb -> context.storeObject(ValidationStored.Sdf57AccountDeb, accountDeb));
|
accountDebFound.ifPresent(accountDeb -> context.storeObject(ValidationStored.Sdf57AccountDeb, accountDeb));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!TextUtil.isEmpty(sdf57.getAcc_kr())) {
|
if (!TextUtil.isEmpty(sdf57.getAcc_kr())) {
|
||||||
accountCredFound = Optional.ofNullable(accountImdg.getSingleObjectBySQL("account = '" + sdf57.getAcc_kr() + "'"));
|
accountCredFound = Optional.ofNullable(accountImdg.getFirstObjectBySQL("account = '" + sdf57.getAcc_kr() + "'"));
|
||||||
accountCredFound.ifPresent(accountCred -> context.storeObject(ValidationStored.Sdf57AccountCred, accountCred));
|
accountCredFound.ifPresent(accountCred -> context.storeObject(ValidationStored.Sdf57AccountCred, accountCred));
|
||||||
}
|
}
|
||||||
if (accountDebFound.isEmpty() && accountCredFound.isEmpty()) {
|
if (accountDebFound.isEmpty() && accountCredFound.isEmpty()) {
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,7 @@ public abstract class AbstractSession {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void initSessionIfPresent() {
|
protected void initSessionIfPresent() {
|
||||||
Session session = sessionImdg.getSingleObjectByFieldValues(Map.of(
|
Session session = sessionImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"sessionType", sessionType().getKey(),
|
"sessionType", sessionType().getKey(),
|
||||||
"section", section().getKey(),
|
"section", section().getKey(),
|
||||||
"workflowStatus", SessionStatus.ACTV.getKey())
|
"workflowStatus", SessionStatus.ACTV.getKey())
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,7 @@ public class BalanceRevise implements ISessionStage {
|
||||||
stmt.getAccount(),
|
stmt.getAccount(),
|
||||||
stmt.getSecurityId()
|
stmt.getSecurityId()
|
||||||
);
|
);
|
||||||
Registry rgsAMT = registryImdg.getSingleObjectBySQL(registrySqlAMT);
|
Registry rgsAMT = registryImdg.getFirstObjectBySQL(registrySqlAMT);
|
||||||
rgsAMT.setCheckBalance(stmt.getAmount());
|
rgsAMT.setCheckBalance(stmt.getAmount());
|
||||||
rgsAMT.setDiffBalance(safeBD(rgsAMT.getBalance()).subtract(safeBD(rgsAMT.getCheckBalance())));
|
rgsAMT.setDiffBalance(safeBD(rgsAMT.getBalance()).subtract(safeBD(rgsAMT.getCheckBalance())));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -127,7 +127,7 @@ public class FormingPaymentInstructionDealsFinalMkr implements ISessionStage {
|
||||||
Collection<Registry> registries = selectRegistries();
|
Collection<Registry> registries = selectRegistries();
|
||||||
log.debug("found registries.size() = {}", registries.size());
|
log.debug("found registries.size() = {}", registries.size());
|
||||||
//клиринговый счет, через который будут проводиться сделки
|
//клиринговый счет, через который будут проводиться сделки
|
||||||
Account tranAcc = accountImdg.getSingleObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
Account tranAcc = accountImdg.getFirstObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
||||||
.formatted(AccountType.Tran.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
.formatted(AccountType.Tran.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
||||||
if (tranAcc == null) {
|
if (tranAcc == null) {
|
||||||
return new StageResult<>(
|
return new StageResult<>(
|
||||||
|
|
|
||||||
|
|
@ -208,7 +208,7 @@ public class FormingPaymentInstructionDepositReturn implements ISessionStage {
|
||||||
|
|
||||||
Optional<Registry> dmtClnr = searchDmtClrn(lm_t);
|
Optional<Registry> dmtClnr = searchDmtClrn(lm_t);
|
||||||
if (dmtClnr.isPresent()) {
|
if (dmtClnr.isPresent()) {
|
||||||
Account tranAcc = accountImdg.getSingleObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
Account tranAcc = accountImdg.getFirstObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
||||||
.formatted(AccountType.Tran.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
.formatted(AccountType.Tran.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
||||||
if (tranAcc == null) {
|
if (tranAcc == null) {
|
||||||
return new StageResult<>(
|
return new StageResult<>(
|
||||||
|
|
@ -278,7 +278,7 @@ public class FormingPaymentInstructionDepositReturn implements ISessionStage {
|
||||||
String sqlCondition = String.format("(%s) and companyId = %d",
|
String sqlCondition = String.format("(%s) and companyId = %d",
|
||||||
RegistryCodeSqlBuilder.getInstance(DM_X).build(),
|
RegistryCodeSqlBuilder.getInstance(DM_X).build(),
|
||||||
rgs.getCounterPartyId());
|
rgs.getCounterPartyId());
|
||||||
Registry dmx = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry dmx = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(dmx);
|
return Optional.ofNullable(dmx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -292,7 +292,7 @@ public class FormingPaymentInstructionDepositReturn implements ISessionStage {
|
||||||
AccountType.Info.getKey(),
|
AccountType.Info.getKey(),
|
||||||
rgs.getCompanyId(),
|
rgs.getCompanyId(),
|
||||||
rgs.getCounterPartyId());
|
rgs.getCounterPartyId());
|
||||||
Registry dmt = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry dmt = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(dmt);
|
return Optional.ofNullable(dmt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -149,7 +149,7 @@ public class FormingPaymentInstructionReturnMkr implements ISessionStage {
|
||||||
}
|
}
|
||||||
Optional<Registry> dmtClnr = searchDmtClrn(lm_t);
|
Optional<Registry> dmtClnr = searchDmtClrn(lm_t);
|
||||||
if (dmtClnr.isPresent()) {
|
if (dmtClnr.isPresent()) {
|
||||||
Account tranAcc = accountImdg.getSingleObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
Account tranAcc = accountImdg.getFirstObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
||||||
.formatted(AccountType.Tran.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
.formatted(AccountType.Tran.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
||||||
if (tranAcc == null) {
|
if (tranAcc == null) {
|
||||||
return new StageResult<>(
|
return new StageResult<>(
|
||||||
|
|
@ -216,7 +216,7 @@ public class FormingPaymentInstructionReturnMkr implements ISessionStage {
|
||||||
String sqlCondition = String.format("(%s) and companyId = %d",
|
String sqlCondition = String.format("(%s) and companyId = %d",
|
||||||
RegistryCodeSqlBuilder.getInstance(DM_X).build(),
|
RegistryCodeSqlBuilder.getInstance(DM_X).build(),
|
||||||
rgs.getCounterPartyId());
|
rgs.getCounterPartyId());
|
||||||
Registry dmx = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry dmx = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(dmx);
|
return Optional.ofNullable(dmx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -124,7 +124,7 @@ public class FormingPaymentInstructionSecondaryT0 implements ISessionStage {
|
||||||
Collection<Registry> registries = selectRegistries();
|
Collection<Registry> registries = selectRegistries();
|
||||||
log.debug("found registries.size() = {}", registries.size());
|
log.debug("found registries.size() = {}", registries.size());
|
||||||
//клиринговый счет, через который будут проводиться сделки
|
//клиринговый счет, через который будут проводиться сделки
|
||||||
Account dtrnAcc = accountImdg.getSingleObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
Account dtrnAcc = accountImdg.getFirstObjectBySQL("accountType = '%s' and status = '%s' and processingSign = '%s'"
|
||||||
.formatted(AccountType.Dtrn.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
.formatted(AccountType.Dtrn.getKey(), AccountStatus.ACTIVE.getKey(), Allowed.ALLOWED.getKey()));
|
||||||
if (dtrnAcc == null) {
|
if (dtrnAcc == null) {
|
||||||
return new StageResult<>(
|
return new StageResult<>(
|
||||||
|
|
|
||||||
|
|
@ -113,7 +113,7 @@ public class InspectionObligations implements ISessionStage {
|
||||||
}
|
}
|
||||||
String sqlAssetRegistryCondition = searchAssetsByObligationSql(obligation);
|
String sqlAssetRegistryCondition = searchAssetsByObligationSql(obligation);
|
||||||
log.debug("search asset by registry.id={} sql {}", obligation.getId(), sqlAssetRegistryCondition);
|
log.debug("search asset by registry.id={} sql {}", obligation.getId(), sqlAssetRegistryCondition);
|
||||||
Registry asset = registryImdg.getSingleObjectBySQL(sqlAssetRegistryCondition);
|
Registry asset = registryImdg.getFirstObjectBySQL(sqlAssetRegistryCondition);
|
||||||
if (asset == null) {
|
if (asset == null) {
|
||||||
log.warn("Not found asset by registry.id={}", obligation.getId());
|
log.warn("Not found asset by registry.id={}", obligation.getId());
|
||||||
isUncovered = true;
|
isUncovered = true;
|
||||||
|
|
|
||||||
|
|
@ -200,7 +200,7 @@ public class InspectionObligationsDepositReturn implements ISessionStage {
|
||||||
String sqlCondition = String.format("(%s) and companyId = %d",
|
String sqlCondition = String.format("(%s) and companyId = %d",
|
||||||
RegistryCodeSqlBuilder.getInstance(DM_X).build(),
|
RegistryCodeSqlBuilder.getInstance(DM_X).build(),
|
||||||
rgs.getCounterPartyId());
|
rgs.getCounterPartyId());
|
||||||
Registry dmx = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry dmx = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(dmx);
|
return Optional.ofNullable(dmx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -213,7 +213,7 @@ public class InspectionObligationsDepositReturn implements ISessionStage {
|
||||||
AccountType.Info.getKey(),
|
AccountType.Info.getKey(),
|
||||||
rgs.getCompanyId(),
|
rgs.getCompanyId(),
|
||||||
rgs.getCounterPartyId());
|
rgs.getCounterPartyId());
|
||||||
Registry dmt = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry dmt = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(dmt);
|
return Optional.ofNullable(dmt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -226,7 +226,7 @@ public class InspectionObligationsDepositReturn implements ISessionStage {
|
||||||
AccountType.Clrn.getKey(),
|
AccountType.Clrn.getKey(),
|
||||||
rgs.getCompanyId(),
|
rgs.getCompanyId(),
|
||||||
rgs.getCounterPartyId());
|
rgs.getCounterPartyId());
|
||||||
Registry dmt = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry dmt = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(dmt);
|
return Optional.ofNullable(dmt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -237,7 +237,7 @@ public class InspectionObligationsDepositReturn implements ISessionStage {
|
||||||
RegistryCodeSqlBuilder.getInstance(AM_F).build(),
|
RegistryCodeSqlBuilder.getInstance(AM_F).build(),
|
||||||
obligation.getTradingClearingRegistryId(),
|
obligation.getTradingClearingRegistryId(),
|
||||||
obligation.getCompanyId());
|
obligation.getCompanyId());
|
||||||
Registry amf = registryImdg.getSingleObjectBySQL(sqlCondition);
|
Registry amf = registryImdg.getFirstObjectBySQL(sqlCondition);
|
||||||
return Optional.ofNullable(amf);
|
return Optional.ofNullable(amf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -101,7 +101,7 @@ public class RegistryDepoBuilder implements IRegistryBuilder {
|
||||||
if ((isOSelling || isTBuying) && !secondLeg || (isOBuying || isTSelling) && secondLeg) {
|
if ((isOSelling || isTBuying) && !secondLeg || (isOBuying || isTSelling) && secondLeg) {
|
||||||
reg.setRegistryInstrumentType(RegistryInstrumentType.M.getKey());
|
reg.setRegistryInstrumentType(RegistryInstrumentType.M.getKey());
|
||||||
reg.setBalanceDimension(BalanceDimension.MONY.getKey());
|
reg.setBalanceDimension(BalanceDimension.MONY.getKey());
|
||||||
Currency currency = currencyImdg.getSingleObjectByFieldValues(Map.of("currencyCode", exec.getSettlementCurrency()));
|
Currency currency = currencyImdg.getFirstObjectByFieldValues(Map.of("currencyCode", exec.getSettlementCurrency()));
|
||||||
reg.setSecurityId(currency.getId());
|
reg.setSecurityId(currency.getId());
|
||||||
reg.setSecuritySymbol(currency.getCurrencyCode());
|
reg.setSecuritySymbol(currency.getCurrencyCode());
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -156,7 +156,7 @@ public class RegistryDepoBuilder implements IRegistryBuilder {
|
||||||
|
|
||||||
private Long groupId() {
|
private Long groupId() {
|
||||||
LocalDate now = LocalDate.now();
|
LocalDate now = LocalDate.now();
|
||||||
Market market = marketImdg.getSingleObjectBySQL("code = '" + exec.getMarket() + "'");
|
Market market = marketImdg.getFirstObjectBySQL("code = '" + exec.getMarket() + "'");
|
||||||
return Long.valueOf(now.format(yyyyMMdd) + exec.getExchangeExecutionId() + market.getId());
|
return Long.valueOf(now.format(yyyyMMdd) + exec.getExchangeExecutionId() + market.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -167,7 +167,7 @@ public class RegistryDepoBuilder implements IRegistryBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private Company searchCompany() {
|
private Company searchCompany() {
|
||||||
return companyImdg.getSingleObjectBySQL("id = " + exec.getCompanyId());
|
return companyImdg.getFirstObjectBySQL("id = " + exec.getCompanyId());
|
||||||
}
|
}
|
||||||
|
|
||||||
private TradingClearingRegistry searchTradingClearingRegistry() {
|
private TradingClearingRegistry searchTradingClearingRegistry() {
|
||||||
|
|
|
||||||
|
|
@ -99,7 +99,7 @@ public class RegistryFondBuilder implements IRegistryBuilder {
|
||||||
account = accountImdg.getSingleObjectByID(tcr.getMoneyAccountId());
|
account = accountImdg.getSingleObjectByID(tcr.getMoneyAccountId());
|
||||||
reg.setRegistryInstrumentType(RegistryInstrumentType.M.getKey());
|
reg.setRegistryInstrumentType(RegistryInstrumentType.M.getKey());
|
||||||
reg.setBalanceDimension(BalanceDimension.MONY.getKey()); //fixme add second leg code branch
|
reg.setBalanceDimension(BalanceDimension.MONY.getKey()); //fixme add second leg code branch
|
||||||
Currency currency = currencyImdg.getSingleObjectByFieldValues(Map.of("currencyCode", exec.getSettlementCurrency()));
|
Currency currency = currencyImdg.getFirstObjectByFieldValues(Map.of("currencyCode", exec.getSettlementCurrency()));
|
||||||
reg.setSecurityId(currency.getId());
|
reg.setSecurityId(currency.getId());
|
||||||
reg.setSecuritySymbol(currency.getCurrencyCode());
|
reg.setSecuritySymbol(currency.getCurrencyCode());
|
||||||
capacityByAccount = defineCapacityByAccountType(account.getAccountType(), tcr.getMoneyAccountId());
|
capacityByAccount = defineCapacityByAccountType(account.getAccountType(), tcr.getMoneyAccountId());
|
||||||
|
|
@ -155,7 +155,7 @@ public class RegistryFondBuilder implements IRegistryBuilder {
|
||||||
|
|
||||||
private Long groupId() {
|
private Long groupId() {
|
||||||
LocalDate now = LocalDate.now();
|
LocalDate now = LocalDate.now();
|
||||||
Market market = marketImdg.getSingleObjectBySQL("code = '" + exec.getMarket() + "'");
|
Market market = marketImdg.getFirstObjectBySQL("code = '" + exec.getMarket() + "'");
|
||||||
return Long.valueOf(now.format(yyyyMMdd) + exec.getExchangeExecutionId() + market.getId());
|
return Long.valueOf(now.format(yyyyMMdd) + exec.getExchangeExecutionId() + market.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -166,7 +166,7 @@ public class RegistryFondBuilder implements IRegistryBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
private Company searchCompany() {
|
private Company searchCompany() {
|
||||||
return companyImdg.getSingleObjectBySQL("id = " + exec.getCompanyId());
|
return companyImdg.getFirstObjectBySQL("id = " + exec.getCompanyId());
|
||||||
}
|
}
|
||||||
|
|
||||||
private TradingClearingRegistry searchTradingClearingRegistry() {
|
private TradingClearingRegistry searchTradingClearingRegistry() {
|
||||||
|
|
|
||||||
|
|
@ -142,9 +142,9 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
assertEquals(Task.createOrder.topic(), producerRecord.getValue().topic());
|
assertEquals(Task.createOrder.topic(), producerRecord.getValue().topic());
|
||||||
|
|
||||||
//First LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
//First LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
||||||
LiabilitiesClaimsAssets resultFirstClaimsAssets = liabilitiesClaimsAssetsImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsAssets resultFirstClaimsAssets = liabilitiesClaimsAssetsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
||||||
LiabilitiesClaimsMoney resultFirstClaimsMoney = liabilitiesClaimsMoneyImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsMoney resultFirstClaimsMoney = liabilitiesClaimsMoneyImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
||||||
LiabilitiesClaimsAssets predictableFirstClaimsAssets = lbltsClmsAssetsCreator.createFirstLegLCA(category, executionDeposit);
|
LiabilitiesClaimsAssets predictableFirstClaimsAssets = lbltsClmsAssetsCreator.createFirstLegLCA(category, executionDeposit);
|
||||||
predictableFirstClaimsAssets.setId(resultFirstClaimsAssets.getId());
|
predictableFirstClaimsAssets.setId(resultFirstClaimsAssets.getId());
|
||||||
|
|
@ -155,9 +155,9 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
LIABILITIES_CLAIMS_ASSETS_MATCHER.assertMatch(resultFirstClaimsAssets, predictableFirstClaimsAssets);
|
LIABILITIES_CLAIMS_ASSETS_MATCHER.assertMatch(resultFirstClaimsAssets, predictableFirstClaimsAssets);
|
||||||
LIABILITIES_CLAIMS_MONEY_MATCHER.assertMatch(resultFirstClaimsMoney, predictableFirstClaimsMoney);
|
LIABILITIES_CLAIMS_MONEY_MATCHER.assertMatch(resultFirstClaimsMoney, predictableFirstClaimsMoney);
|
||||||
//Second LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
//Second LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
||||||
LiabilitiesClaimsAssets resultSecondClaimsAssets = liabilitiesClaimsAssetsImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsAssets resultSecondClaimsAssets = liabilitiesClaimsAssetsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
||||||
LiabilitiesClaimsMoney resultSecondClaimsMoney = liabilitiesClaimsMoneyImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsMoney resultSecondClaimsMoney = liabilitiesClaimsMoneyImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
||||||
LiabilitiesClaimsAssets predictableSecondClaimsAssets = lbltsClmsAssetsCreator.createSecondLegLCA(category, executionDeposit);
|
LiabilitiesClaimsAssets predictableSecondClaimsAssets = lbltsClmsAssetsCreator.createSecondLegLCA(category, executionDeposit);
|
||||||
predictableSecondClaimsAssets.setId(resultSecondClaimsAssets.getId());
|
predictableSecondClaimsAssets.setId(resultSecondClaimsAssets.getId());
|
||||||
|
|
@ -173,7 +173,7 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
predictablePaymentInstruction.setDocumentNumber(resultPaymentInstruction.getDocumentNumber());
|
predictablePaymentInstruction.setDocumentNumber(resultPaymentInstruction.getDocumentNumber());
|
||||||
PAYMENT_INSTRUCTION_MATCHER.assertMatch(resultPaymentInstruction, predictablePaymentInstruction);
|
PAYMENT_INSTRUCTION_MATCHER.assertMatch(resultPaymentInstruction, predictablePaymentInstruction);
|
||||||
//ExecutionDeposit
|
//ExecutionDeposit
|
||||||
ExecutionDeposit resultExecutionDeposit = executionDepositImdg.getSingleObjectByFieldValues(
|
ExecutionDeposit resultExecutionDeposit = executionDepositImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "securityId", securityIdI1));
|
Map.of("accountId", accountIdI1, "securityId", securityIdI1));
|
||||||
executionDeposit.setSessionId(resultExecutionDeposit.getSessionId());
|
executionDeposit.setSessionId(resultExecutionDeposit.getSessionId());
|
||||||
EXECUTION_DEPOSIT_MATCHER.assertMatch(resultExecutionDeposit, executionDeposit);
|
EXECUTION_DEPOSIT_MATCHER.assertMatch(resultExecutionDeposit, executionDeposit);
|
||||||
|
|
@ -237,9 +237,9 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
assertEquals(Task.createOrder.topic(), producerRecord.getValue().topic());
|
assertEquals(Task.createOrder.topic(), producerRecord.getValue().topic());
|
||||||
|
|
||||||
//First LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
//First LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
||||||
LiabilitiesClaimsAssets resultFirstClaimsAssets = liabilitiesClaimsAssetsImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsAssets resultFirstClaimsAssets = liabilitiesClaimsAssetsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
||||||
LiabilitiesClaimsMoney resultFirstClaimsMoney = liabilitiesClaimsMoneyImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsMoney resultFirstClaimsMoney = liabilitiesClaimsMoneyImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
Map.of("accountId", accountIdI1, "settlementDate", firstSettlementDateI1));
|
||||||
predictableFirstClaimsAssets.setPaymentId(resultFirstClaimsAssets.getPaymentId());
|
predictableFirstClaimsAssets.setPaymentId(resultFirstClaimsAssets.getPaymentId());
|
||||||
predictableFirstClaimsAssets.setLiabilitiesClaimsMoneyId(resultFirstClaimsMoney.getId());
|
predictableFirstClaimsAssets.setLiabilitiesClaimsMoneyId(resultFirstClaimsMoney.getId());
|
||||||
|
|
@ -248,9 +248,9 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
LIABILITIES_CLAIMS_ASSETS_MATCHER.assertMatch(resultFirstClaimsAssets, predictableFirstClaimsAssets);
|
LIABILITIES_CLAIMS_ASSETS_MATCHER.assertMatch(resultFirstClaimsAssets, predictableFirstClaimsAssets);
|
||||||
LIABILITIES_CLAIMS_MONEY_MATCHER.assertMatch(resultFirstClaimsMoney, predictableFirstClaimsMoney);
|
LIABILITIES_CLAIMS_MONEY_MATCHER.assertMatch(resultFirstClaimsMoney, predictableFirstClaimsMoney);
|
||||||
//Second LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
//Second LiabilitiesClaimsAssets && LiabilitiesClaimsMoney
|
||||||
LiabilitiesClaimsAssets resultSecondClaimsAssets = liabilitiesClaimsAssetsImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsAssets resultSecondClaimsAssets = liabilitiesClaimsAssetsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
||||||
LiabilitiesClaimsMoney resultSecondClaimsMoney = liabilitiesClaimsMoneyImdg.getSingleObjectByFieldValues(
|
LiabilitiesClaimsMoney resultSecondClaimsMoney = liabilitiesClaimsMoneyImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
Map.of("accountId", accountIdI1, "settlementDate", secondSettlementDateI2));
|
||||||
|
|
||||||
predictableSecondClaimsAssets.setLiabilitiesClaimsMoneyId(resultSecondClaimsMoney.getId());
|
predictableSecondClaimsAssets.setLiabilitiesClaimsMoneyId(resultSecondClaimsMoney.getId());
|
||||||
|
|
@ -265,7 +265,7 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
predictablePaymentInstruction.setDocumentNumber(resultPaymentInstruction.getDocumentNumber());
|
predictablePaymentInstruction.setDocumentNumber(resultPaymentInstruction.getDocumentNumber());
|
||||||
PAYMENT_INSTRUCTION_MATCHER.assertMatch(resultPaymentInstruction, predictablePaymentInstruction);
|
PAYMENT_INSTRUCTION_MATCHER.assertMatch(resultPaymentInstruction, predictablePaymentInstruction);
|
||||||
//ExecutionDeposit
|
//ExecutionDeposit
|
||||||
ExecutionDeposit resultExecutionDeposit = executionDepositImdg.getSingleObjectByFieldValues(
|
ExecutionDeposit resultExecutionDeposit = executionDepositImdg.getFirstObjectByFieldValues(
|
||||||
Map.of("accountId", accountIdI1, "securityId", securityIdI1));
|
Map.of("accountId", accountIdI1, "securityId", securityIdI1));
|
||||||
executionDeposit.setSessionId(resultExecutionDeposit.getSessionId());
|
executionDeposit.setSessionId(resultExecutionDeposit.getSessionId());
|
||||||
EXECUTION_DEPOSIT_MATCHER.assertMatch(resultExecutionDeposit, executionDeposit);
|
EXECUTION_DEPOSIT_MATCHER.assertMatch(resultExecutionDeposit, executionDeposit);
|
||||||
|
|
@ -417,7 +417,7 @@ class ClearingServiceTest extends AbstractClearingTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
assertEquals(Task.createOrder.topic(), producerRecord.getValue().topic());
|
assertEquals(Task.createOrder.topic(), producerRecord.getValue().topic());
|
||||||
ExecutionDeposit resultExecutionDeposit = executionDepositImdg.getSingleObjectBySQL("settlementCurrency = 'settlementCurrency'");
|
ExecutionDeposit resultExecutionDeposit = executionDepositImdg.getFirstObjectBySQL("settlementCurrency = 'settlementCurrency'");
|
||||||
executionDeposit.setUpdated(resultExecutionDeposit.getUpdated());
|
executionDeposit.setUpdated(resultExecutionDeposit.getUpdated());
|
||||||
executionDeposit.setCoverageStatus(Allowed.DENIED.getKey());
|
executionDeposit.setCoverageStatus(Allowed.DENIED.getKey());
|
||||||
EXECUTION_DEPOSIT_MATCHER.assertMatch(resultExecutionDeposit, executionDeposit);
|
EXECUTION_DEPOSIT_MATCHER.assertMatch(resultExecutionDeposit, executionDeposit);
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import ru.clearing.classes.statics.data.company.CompanyRoleSet;
|
import ru.clearing.classes.statics.data.company.CompanyRoleSet;
|
||||||
import ru.spcex.clearing.company.error.CompanyErrors;
|
import ru.spcex.clearing.company.error.CompanyErrors;
|
||||||
import ru.spcex.clearing.util.services.RequestHelper;
|
|
||||||
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.Consts;
|
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
|
|
@ -18,6 +17,7 @@ import ru.spcex.clearing.platform.messaging.domain.cud.company.CompanyRoleSetNew
|
||||||
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
||||||
import ru.spcex.clearing.util.security.UserRoleVerification;
|
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||||
|
import ru.spcex.clearing.util.services.RequestHelper;
|
||||||
import ru.spcex.clearing.validation.common.ValidationHelper;
|
import ru.spcex.clearing.validation.common.ValidationHelper;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgId;
|
import ru.spcex.platform.imdg.api.ImdgId;
|
||||||
|
|
@ -87,7 +87,7 @@ public class CompanyRoleSetService extends QueueConsumer implements Initializing
|
||||||
// if (requestInfoUpdate != null) return requestInfoUpdate;
|
// if (requestInfoUpdate != null) return requestInfoUpdate;
|
||||||
}
|
}
|
||||||
//todo какие проверки нужны? 1. есть компания, 2. есть справочники
|
//todo какие проверки нужны? 1. есть компания, 2. есть справочники
|
||||||
CompanyRoleSet newRole = companyRoleSetMap.getSingleObjectByFieldValues(Map.of(
|
CompanyRoleSet newRole = companyRoleSetMap.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", req.getCompanyId(),
|
"companyId", req.getCompanyId(),
|
||||||
"companyRole", req.getCompanyRole()
|
"companyRole", req.getCompanyRole()
|
||||||
));
|
));
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,10 @@ import ru.spcex.platform.utils.error.ValidationException;
|
||||||
import ru.spcex.platform.utils.validation.IValidator;
|
import ru.spcex.platform.utils.validation.IValidator;
|
||||||
|
|
||||||
import java.time.Instant;
|
import java.time.Instant;
|
||||||
import java.util.*;
|
import java.util.Collection;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.Optional;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
|
@ -261,7 +264,7 @@ public class RelationService extends QueueConsumer implements InitializingBean {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
Imdg<Relation> currentRelationMap = tx == null ? relationMap : tx.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
Imdg<Relation> currentRelationMap = tx == null ? relationMap : tx.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
||||||
Relation existRelation = currentRelationMap.getSingleObjectByFieldValues(Map.of(
|
Relation existRelation = currentRelationMap.getFirstObjectByFieldValues(Map.of(
|
||||||
"consumerId", consumerId,
|
"consumerId", consumerId,
|
||||||
"service", svc
|
"service", svc
|
||||||
));
|
));
|
||||||
|
|
@ -562,7 +565,7 @@ public class RelationService extends QueueConsumer implements InitializingBean {
|
||||||
protected void createNewRelation(ImdgTransaction transaction, Long companyId, ClearingMemberCategory clearingMemberCategory) {
|
protected void createNewRelation(ImdgTransaction transaction, Long companyId, ClearingMemberCategory clearingMemberCategory) {
|
||||||
Objects.requireNonNull(companyId, "companyId");
|
Objects.requireNonNull(companyId, "companyId");
|
||||||
Imdg<Relation> relationMap = transaction.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
Imdg<Relation> relationMap = transaction.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
||||||
Company company = transaction.getImdg(IMDGDistributedNames.Map_Company, Company.class).getSingleObjectByFieldValues(Map.of("id", companyId));
|
Company company = transaction.getImdg(IMDGDistributedNames.Map_Company, Company.class).getFirstObjectByFieldValues(Map.of("id", companyId));
|
||||||
|
|
||||||
WorkflowStatus workflowStatus = getEnumByKey(WorkflowStatus.class, company.getWorkflowStatus());
|
WorkflowStatus workflowStatus = getEnumByKey(WorkflowStatus.class, company.getWorkflowStatus());
|
||||||
String serviceStatus = null;
|
String serviceStatus = null;
|
||||||
|
|
@ -656,7 +659,7 @@ public class RelationService extends QueueConsumer implements InitializingBean {
|
||||||
|
|
||||||
protected void cancelingOfAgreementUpdateRelation(ImdgTransaction transaction, Long companyId) {
|
protected void cancelingOfAgreementUpdateRelation(ImdgTransaction transaction, Long companyId) {
|
||||||
Imdg<Relation> relationMap = transaction.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
Imdg<Relation> relationMap = transaction.getImdg(IMDGDistributedNames.Map_Relation, Relation.class);
|
||||||
Relation relation = relationMap.getSingleObjectByFieldValues(Map.of("consumerId", companyId));
|
Relation relation = relationMap.getFirstObjectByFieldValues(Map.of("consumerId", companyId));
|
||||||
if (relation == null) {
|
if (relation == null) {
|
||||||
log.warn("Relation with consumerId={} not found", companyId);
|
log.warn("Relation with consumerId={} not found", companyId);
|
||||||
return;
|
return;
|
||||||
|
|
|
||||||
|
|
@ -115,7 +115,7 @@ class ClearingMemberCategoryServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
ClearingMemberCategory resultNew = memberCategoryImdg.getSingleObjectBySQL(String.format("clearingMemberCategory = %s", clearingMemberCategory));
|
ClearingMemberCategory resultNew = memberCategoryImdg.getFirstObjectBySQL(String.format("clearingMemberCategory = %s", clearingMemberCategory));
|
||||||
predictableClearingMemberCategory.setId(resultNew.getId());
|
predictableClearingMemberCategory.setId(resultNew.getId());
|
||||||
MEMBER_CATEGORY_MATCHER.assertMatch(resultNew, predictableClearingMemberCategory);
|
MEMBER_CATEGORY_MATCHER.assertMatch(resultNew, predictableClearingMemberCategory);
|
||||||
}
|
}
|
||||||
|
|
@ -180,7 +180,7 @@ class ClearingMemberCategoryServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(id, mockProducer);
|
waitingSendAndCheckRecord(id, mockProducer);
|
||||||
|
|
||||||
ClearingMemberCategory resultDeleting = memberCategoryImdg.getSingleObjectBySQL(String.format("clearingMemberCategory = %s", clearingMemberCategory));
|
ClearingMemberCategory resultDeleting = memberCategoryImdg.getFirstObjectBySQL(String.format("clearingMemberCategory = %s", clearingMemberCategory));
|
||||||
Assertions.assertNull(resultDeleting);
|
Assertions.assertNull(resultDeleting);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -135,7 +135,7 @@ class CompanyServiceTest {
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
//Company resultDeleting = companyImdg.getSingleObjectByID(ID);
|
//Company resultDeleting = companyImdg.getSingleObjectByID(ID);
|
||||||
Company resultDeleting = companyImdg.getSingleObjectBySQL("id=" + ID);
|
Company resultDeleting = companyImdg.getFirstObjectBySQL("id=" + ID);
|
||||||
Assertions.assertEquals(WorkflowStatus.Blocked.getKey(), resultDeleting.getWorkflowStatus());
|
Assertions.assertEquals(WorkflowStatus.Blocked.getKey(), resultDeleting.getWorkflowStatus());
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
@ -177,7 +177,7 @@ class CompanyServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
Company resultNew = companyImdg.getSingleObjectByFieldValues(Map.of("ShortName", "ClrIPO"));
|
Company resultNew = companyImdg.getFirstObjectByFieldValues(Map.of("ShortName", "ClrIPO"));
|
||||||
Assertions.assertNotNull(resultNew);
|
Assertions.assertNotNull(resultNew);
|
||||||
Assertions.assertEquals("ClrIPO", resultNew.getShortName());
|
Assertions.assertEquals("ClrIPO", resultNew.getShortName());
|
||||||
Assertions.assertEquals(WorkflowStatus.Active.getKey(), resultNew.getWorkflowStatus());
|
Assertions.assertEquals(WorkflowStatus.Active.getKey(), resultNew.getWorkflowStatus());
|
||||||
|
|
@ -213,7 +213,7 @@ class CompanyServiceTest {
|
||||||
String.valueOf(CompanyErrors.CompanyWithCompanySymbolAlreadyExist.getId()),
|
String.valueOf(CompanyErrors.CompanyWithCompanySymbolAlreadyExist.getId()),
|
||||||
Arrays.asList("CIO", "test_value"));
|
Arrays.asList("CIO", "test_value"));
|
||||||
|
|
||||||
Company resultNew = companyImdg.getSingleObjectByFieldValues(Map.of("ShortName", "ClrIPO"));
|
Company resultNew = companyImdg.getFirstObjectByFieldValues(Map.of("ShortName", "ClrIPO"));
|
||||||
Assertions.assertNull(resultNew);
|
Assertions.assertNull(resultNew);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -135,7 +135,7 @@ class CompanySymbolServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
CompanySymbols resultUpdating = companySymbolsImdg.getSingleObjectBySQL(String.format("companySymbolValue = %s", companySymbolValue));
|
CompanySymbols resultUpdating = companySymbolsImdg.getFirstObjectBySQL(String.format("companySymbolValue = %s", companySymbolValue));
|
||||||
COMPANY_SYMBOL_MATCHER.assertMatch(resultUpdating, predictableCompanySymbols);
|
COMPANY_SYMBOL_MATCHER.assertMatch(resultUpdating, predictableCompanySymbols);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -154,7 +154,7 @@ class ProfileDocumentServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
ProfileDocument resultNew = profileDocumentMap.getSingleObjectBySQL(String.format("companyId = %d", COMPANY_ID));
|
ProfileDocument resultNew = profileDocumentMap.getFirstObjectBySQL(String.format("companyId = %d", COMPANY_ID));
|
||||||
predictableProfileDocument.setId(resultNew.getId());
|
predictableProfileDocument.setId(resultNew.getId());
|
||||||
PROFILE_DOCUMENT_MATCHER.assertMatch(resultNew, predictableProfileDocument);
|
PROFILE_DOCUMENT_MATCHER.assertMatch(resultNew, predictableProfileDocument);
|
||||||
}
|
}
|
||||||
|
|
@ -215,7 +215,7 @@ class ProfileDocumentServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
ProfileDocument resultUpdate = profileDocumentMap.getSingleObjectBySQL(String.format("companyId = %d", COMPANY_ID));
|
ProfileDocument resultUpdate = profileDocumentMap.getFirstObjectBySQL(String.format("companyId = %d", COMPANY_ID));
|
||||||
// predictableProfileDocument.setId(resultUpdate.getId());
|
// predictableProfileDocument.setId(resultUpdate.getId());
|
||||||
PROFILE_DOCUMENT_MATCHER.assertMatch(resultUpdate, predictableProfileDocument);
|
PROFILE_DOCUMENT_MATCHER.assertMatch(resultUpdate, predictableProfileDocument);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -129,7 +129,7 @@ class RelationServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
Relation resultNew = relationMap.getSingleObjectBySQL("serviceStatus=ACTV"); // String.format("supplierId = %d", COMPANY_ID));
|
Relation resultNew = relationMap.getFirstObjectBySQL("serviceStatus=ACTV"); // String.format("supplierId = %d", COMPANY_ID));
|
||||||
predictableRelation.setId(resultNew.getId());
|
predictableRelation.setId(resultNew.getId());
|
||||||
RELATION_MATCHER.assertMatch(resultNew, predictableRelation);
|
RELATION_MATCHER.assertMatch(resultNew, predictableRelation);
|
||||||
}
|
}
|
||||||
|
|
@ -168,7 +168,7 @@ class RelationServiceTest {
|
||||||
|
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
Relation resultUpdate = relationMap.getSingleObjectBySQL(String.format("id = %d", RELATION_ID));
|
Relation resultUpdate = relationMap.getFirstObjectBySQL(String.format("id = %d", RELATION_ID));
|
||||||
// predictableProfileDocument.setId(resultUpdate.getId());
|
// predictableProfileDocument.setId(resultUpdate.getId());
|
||||||
RELATION_MATCHER.assertMatch(resultUpdate, predictableRelation);
|
RELATION_MATCHER.assertMatch(resultUpdate, predictableRelation);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -84,8 +84,8 @@ public class AdmittedLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
private void insertAdmittedLiabilitiesRegister(Registry registry) {
|
private void insertAdmittedLiabilitiesRegister(Registry registry) {
|
||||||
log.trace("Started generating AdmittedLiabilitiesRegister entity...");
|
log.trace("Started generating AdmittedLiabilitiesRegister entity...");
|
||||||
AdmittedLiabilitiesRegister admittedLiabilitiesRegister = new AdmittedLiabilitiesRegister();
|
AdmittedLiabilitiesRegister admittedLiabilitiesRegister = new AdmittedLiabilitiesRegister();
|
||||||
Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 1L));
|
Company company = companyMap.getFirstObjectByFieldValues(Map.of("id", 1L));
|
||||||
Security security = securityMap.getSingleObjectByFieldValues(Map.of("id", registry.getSecurityId()));
|
Security security = securityMap.getFirstObjectByFieldValues(Map.of("id", registry.getSecurityId()));
|
||||||
String securitySymbol = security != null ? security.getSecuritySymbol() : null;
|
String securitySymbol = security != null ? security.getSecuritySymbol() : null;
|
||||||
String securityFullName = security != null ? security.getShortName() : null;
|
String securityFullName = security != null ? security.getShortName() : null;
|
||||||
String companyFullName = security != null ? company.getFullName() : null;
|
String companyFullName = security != null ? company.getFullName() : null;
|
||||||
|
|
|
||||||
|
|
@ -85,8 +85,8 @@ public class CoveredLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
private void insertCoveredLiabilitiesRegister(Registry registry) {
|
private void insertCoveredLiabilitiesRegister(Registry registry) {
|
||||||
log.trace("insert CoveredLiabilitiesRegister in map...");
|
log.trace("insert CoveredLiabilitiesRegister in map...");
|
||||||
CoveredLiabilitiesRegister coveredLiabilitiesRegister = new CoveredLiabilitiesRegister();
|
CoveredLiabilitiesRegister coveredLiabilitiesRegister = new CoveredLiabilitiesRegister();
|
||||||
Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 1L));
|
Company company = companyMap.getFirstObjectByFieldValues(Map.of("id", 1L));
|
||||||
Security security = securityMap.getSingleObjectByFieldValues(Map.of("id", registry.getSecurityId()));
|
Security security = securityMap.getFirstObjectByFieldValues(Map.of("id", registry.getSecurityId()));
|
||||||
String securitySymbol = security != null ? security.getSecuritySymbol() : null;
|
String securitySymbol = security != null ? security.getSecuritySymbol() : null;
|
||||||
String securityFullName = security != null ? security.getShortName() : null;
|
String securityFullName = security != null ? security.getShortName() : null;
|
||||||
String companyFullName = security != null ? company.getFullName() : null;
|
String companyFullName = security != null ? company.getFullName() : null;
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ public class DepoPaymentInstructionRegisterService extends QueueConsumer impleme
|
||||||
Collection<PaymentInstruction> paymentInstructionBySessionId =
|
Collection<PaymentInstruction> paymentInstructionBySessionId =
|
||||||
paymentInstructionMap.getCollectionObjectsByFieldValues(fieldValues);
|
paymentInstructionMap.getCollectionObjectsByFieldValues(fieldValues);
|
||||||
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
||||||
DepoPaymentInstructionRegister depoPaymentInstructionRegister = depoPaymentInstructionRegisterMap.getSingleObjectByFieldValues(Map.of(
|
DepoPaymentInstructionRegister depoPaymentInstructionRegister = depoPaymentInstructionRegisterMap.getFirstObjectByFieldValues(Map.of(
|
||||||
"companyId", paymentInstruction.getSenderId(),
|
"companyId", paymentInstruction.getSenderId(),
|
||||||
"sessionId", paymentInstruction.getSessionId())
|
"sessionId", paymentInstruction.getSessionId())
|
||||||
);
|
);
|
||||||
|
|
@ -85,8 +85,8 @@ 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();
|
||||||
TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getSingleObjectByFieldValues(Map.of("companyId", paymentInstruction.getSenderId()));
|
TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getFirstObjectByFieldValues(Map.of("companyId", paymentInstruction.getSenderId()));
|
||||||
InOutDirectionDictionary inOutDirectionDictionary = InOutDirectionDictionaryMap.getSingleObjectByFieldValues(Map.of("code", paymentInstruction.getCreditLeg_direction()));
|
InOutDirectionDictionary inOutDirectionDictionary = InOutDirectionDictionaryMap.getFirstObjectByFieldValues(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());
|
||||||
|
|
|
||||||
|
|
@ -90,11 +90,11 @@ public class ExcludeLiabilitiesRegisterService extends QueueConsumer implements
|
||||||
log.trace("Started generating ExcludeLiabilitiesRegister entity...");
|
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.getFirstObjectByFieldValues(Map.of("clearingDate", registry.getSessionId()));
|
||||||
LocalDate validToDate = TimeUtil.toLocalDate(sessionBySessionId.getUpdated());
|
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.getFirstObjectByFieldValues(innPredicates);
|
||||||
MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getSingleObjectByFieldValues(Map.of("securityId", registry.getSecurityId()));
|
MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getFirstObjectByFieldValues(Map.of("securityId", registry.getSecurityId()));
|
||||||
|
|
||||||
excludeLiabilitiesRegister.setSessionId(registry.getSessionId());
|
excludeLiabilitiesRegister.setSessionId(registry.getSessionId());
|
||||||
excludeLiabilitiesRegister.setValidFromDate(sessionBySessionId.getClearingDate());
|
excludeLiabilitiesRegister.setValidFromDate(sessionBySessionId.getClearingDate());
|
||||||
|
|
|
||||||
|
|
@ -169,25 +169,25 @@ public class ExecutionRegisterService extends QueueConsumer implements Initializ
|
||||||
|
|
||||||
private Optional<CompanySymbols> getCompanySymbolsByCompanyIdAndCompanySymbol(String companySymbol, Long companyId) {
|
private Optional<CompanySymbols> getCompanySymbolsByCompanyIdAndCompanySymbol(String companySymbol, Long companyId) {
|
||||||
Map<String, ? extends Comparable<?>> fieldValues = Map.of("companySymbol", companySymbol, "companyId", companyId);
|
Map<String, ? extends Comparable<?>> fieldValues = Map.of("companySymbol", companySymbol, "companyId", companyId);
|
||||||
CompanySymbols companySymbols = companySymbolsMap.getSingleObjectByFieldValues(fieldValues);
|
CompanySymbols companySymbols = companySymbolsMap.getFirstObjectByFieldValues(fieldValues);
|
||||||
return Optional.ofNullable(companySymbols);
|
return Optional.ofNullable(companySymbols);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Optional<CompanySymbols> getCompanySymbolsByCompanyId(Long companyId) {
|
private Optional<CompanySymbols> getCompanySymbolsByCompanyId(Long companyId) {
|
||||||
Map<String, ? extends Comparable<?>> fieldValues = Map.of("companyId", companyId);
|
Map<String, ? extends Comparable<?>> fieldValues = Map.of("companyId", companyId);
|
||||||
CompanySymbols companySymbols = companySymbolsMap.getSingleObjectByFieldValues(fieldValues);
|
CompanySymbols companySymbols = companySymbolsMap.getFirstObjectByFieldValues(fieldValues);
|
||||||
return Optional.ofNullable(companySymbols);
|
return Optional.ofNullable(companySymbols);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Optional<TradingClearingRegistry> getTradingClearingRegistryByCompanyId(Long companyId) {
|
private Optional<TradingClearingRegistry> getTradingClearingRegistryByCompanyId(Long companyId) {
|
||||||
Map<String, ? extends Comparable<?>> fieldValues = Map.of("companyId", companyId);
|
Map<String, ? extends Comparable<?>> fieldValues = Map.of("companyId", companyId);
|
||||||
TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getSingleObjectByFieldValues(fieldValues);
|
TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getFirstObjectByFieldValues(fieldValues);
|
||||||
return Optional.ofNullable(tradingClearingRegistry);
|
return Optional.ofNullable(tradingClearingRegistry);
|
||||||
}
|
}
|
||||||
|
|
||||||
private Optional<TradingClearingRegistry> getTradingClearingRegistryByCode(String code) {
|
private Optional<TradingClearingRegistry> getTradingClearingRegistryByCode(String code) {
|
||||||
Map<String, ? extends Comparable<?>> fieldValues = Map.of("code", code);
|
Map<String, ? extends Comparable<?>> fieldValues = Map.of("code", code);
|
||||||
TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getSingleObjectByFieldValues(fieldValues);
|
TradingClearingRegistry tradingClearingRegistry = tradingClearingRegistryMap.getFirstObjectByFieldValues(fieldValues);
|
||||||
return Optional.ofNullable(tradingClearingRegistry);
|
return Optional.ofNullable(tradingClearingRegistry);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -85,20 +85,20 @@ public class LiabilitiesRegisterService extends QueueConsumer implements Initial
|
||||||
private void insertLiabilitiesRegister(Registry registry) {
|
private void insertLiabilitiesRegister(Registry registry) {
|
||||||
log.trace("Started generating LiabilitiesRegister entity...");
|
log.trace("Started generating LiabilitiesRegister entity...");
|
||||||
LiabilitiesRegister liabilitiesRegister = new LiabilitiesRegister();
|
LiabilitiesRegister liabilitiesRegister = new LiabilitiesRegister();
|
||||||
Session session = sessionMap.getSingleObjectByFieldValues(
|
Session session = sessionMap.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"id",
|
"id",
|
||||||
registry.getCompanyId()
|
registry.getCompanyId()
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
CompanySymbols companySymbols = companySymbolsMap.getSingleObjectByFieldValues(
|
CompanySymbols companySymbols = companySymbolsMap.getFirstObjectByFieldValues(
|
||||||
Map.of("companyId",
|
Map.of("companyId",
|
||||||
registry.getCompanyId(),
|
registry.getCompanyId(),
|
||||||
"companySymbol",
|
"companySymbol",
|
||||||
"INN"
|
"INN"
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getSingleObjectByFieldValues(
|
MoneyMarketSecurity moneyMarketSecurity = moneyMarketSecurityMap.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"securityId",
|
"securityId",
|
||||||
registry.getSecurityId()
|
registry.getSecurityId()
|
||||||
|
|
|
||||||
|
|
@ -84,22 +84,22 @@ public class MoneyBalanceRegisterService extends QueueConsumer implements Initia
|
||||||
private void insertMoneyBalanceRegister(Registry registry) {
|
private void insertMoneyBalanceRegister(Registry registry) {
|
||||||
log.trace("Started generating MoneyBalanceRegister entity...");
|
log.trace("Started generating MoneyBalanceRegister entity...");
|
||||||
MoneyBalanceRegister moneyBalanceRegister = new MoneyBalanceRegister();
|
MoneyBalanceRegister moneyBalanceRegister = new MoneyBalanceRegister();
|
||||||
Registry registryForRemainderSum = registryMap.getSingleObjectBySQL(getSqlForRemainderSum(registry.getCompanyId(), registry.getAccount()));
|
Registry registryForRemainderSum = registryMap.getFirstObjectBySQL(getSqlForRemainderSum(registry.getCompanyId(), registry.getAccount()));
|
||||||
Registry registryForBlockedSum = registryMap.getSingleObjectBySQL(getSqlForBlockedSum(registry.getCompanyId(), registry.getAccount()));
|
Registry registryForBlockedSum = registryMap.getFirstObjectBySQL(getSqlForBlockedSum(registry.getCompanyId(), registry.getAccount()));
|
||||||
Registry registryForUnblockedSum = registryMap.getSingleObjectBySQL(getSqlForUnblockedSum(registry.getCompanyId(), registry.getAccount()));
|
Registry registryForUnblockedSum = registryMap.getFirstObjectBySQL(getSqlForUnblockedSum(registry.getCompanyId(), registry.getAccount()));
|
||||||
Company company = companyMap.getSingleObjectByFieldValues(Map.of("id", 2L));
|
Company company = companyMap.getFirstObjectByFieldValues(Map.of("id", 2L));
|
||||||
CompanySymbols companySymbol = companySymbolsMap.getSingleObjectByFieldValues(Map.of("companyId", registry.getCompanyId()));
|
CompanySymbols companySymbol = companySymbolsMap.getFirstObjectByFieldValues(Map.of("companyId", registry.getCompanyId()));
|
||||||
String setHouseName = company != null ? company.getShortName() : null;
|
String setHouseName = company != null ? company.getShortName() : null;
|
||||||
String inn = companySymbol != null ? companySymbol.getCompanySymbolValue() : null;
|
String inn = companySymbol != null ? companySymbol.getCompanySymbolValue() : null;
|
||||||
String accountType = registry.getAccountType();
|
String accountType = registry.getAccountType();
|
||||||
String account = null;
|
String account = null;
|
||||||
String infoAccount = null;
|
String infoAccount = null;
|
||||||
if ("CLRN".equalsIgnoreCase(accountType)) {
|
if ("CLRN".equalsIgnoreCase(accountType)) {
|
||||||
Account accountValue = accountMap.getSingleObjectByFieldValues(Map.of("companyId", registry.getCompanyId(), "accountType", "INFO"));
|
Account accountValue = accountMap.getFirstObjectByFieldValues(Map.of("companyId", registry.getCompanyId(), "accountType", "INFO"));
|
||||||
account = registry.getAccount();
|
account = registry.getAccount();
|
||||||
infoAccount = accountValue != null ? accountValue.getAccount() : null;
|
infoAccount = accountValue != null ? accountValue.getAccount() : null;
|
||||||
} else if ("INFO".equalsIgnoreCase(accountType)) {
|
} else if ("INFO".equalsIgnoreCase(accountType)) {
|
||||||
Account accountValue = accountMap.getSingleObjectByFieldValues(Map.of("companyId", registry.getCompanyId(), "accountType", "CLRN"));
|
Account accountValue = accountMap.getFirstObjectByFieldValues(Map.of("companyId", registry.getCompanyId(), "accountType", "CLRN"));
|
||||||
account = accountValue != null ? accountValue.getAccount() : null;
|
account = accountValue != null ? accountValue.getAccount() : null;
|
||||||
infoAccount = registry.getAccount();
|
infoAccount = registry.getAccount();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@ public class MoneyPaymentInstructionRegisterService extends QueueConsumer implem
|
||||||
paymentInstructionMap.getCollectionObjectsByFieldValues(fieldValuesSessionId);
|
paymentInstructionMap.getCollectionObjectsByFieldValues(fieldValuesSessionId);
|
||||||
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
for (PaymentInstruction paymentInstruction : paymentInstructionBySessionId) {
|
||||||
Map<String, ? extends Comparable<?>> fieldValuesCompanyIdSessionId = getFieldValuesOrThrowException(Map.of("senderId", paymentInstruction.getSenderId(), "date", paymentInstruction.getClearingDate()));
|
Map<String, ? extends Comparable<?>> fieldValuesCompanyIdSessionId = getFieldValuesOrThrowException(Map.of("senderId", paymentInstruction.getSenderId(), "date", paymentInstruction.getClearingDate()));
|
||||||
MoneyPaymentInstructionRegister moneyPaymentInstructionRegister = moneyPaymentInstructionRegisterMap.getSingleObjectByFieldValues(fieldValuesCompanyIdSessionId);
|
MoneyPaymentInstructionRegister moneyPaymentInstructionRegister = moneyPaymentInstructionRegisterMap.getFirstObjectByFieldValues(fieldValuesCompanyIdSessionId);
|
||||||
if (moneyPaymentInstructionRegister == null) {
|
if (moneyPaymentInstructionRegister == null) {
|
||||||
insertMoneyPaymentInstructionRegister(paymentInstruction);
|
insertMoneyPaymentInstructionRegister(paymentInstruction);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ public abstract class ExecutedDealReportBuilderCommon<P> extends CSVReportBuilde
|
||||||
|
|
||||||
STrades sTrade = null;
|
STrades sTrade = null;
|
||||||
if (executionFond.getSide() != null && executionFond.getExchangeExecutionId() != null) {
|
if (executionFond.getSide() != null && executionFond.getExchangeExecutionId() != null) {
|
||||||
sTrade = sTradesImdg.getSingleObjectByFieldValues(
|
sTrade = sTradesImdg.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"tradeNum", executionFond.getExchangeExecutionId(),
|
"tradeNum", executionFond.getExchangeExecutionId(),
|
||||||
"operation", executionFond.getSide()
|
"operation", executionFond.getSide()
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,7 @@ public class UnfulfilledDealReportBuilder extends CSVReportBuilder<SessionIdPara
|
||||||
Company company = companyImdg.getSingleObjectByID(executionFond.getCompanyId());
|
Company company = companyImdg.getSingleObjectByID(executionFond.getCompanyId());
|
||||||
if (!WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus())) continue;;
|
if (!WorkflowStatus.Active.equalsByKey(company.getWorkflowStatus())) continue;;
|
||||||
|
|
||||||
STrades sTrade = sTradesImdg.getSingleObjectByFieldValues(
|
STrades sTrade = sTradesImdg.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"settleCode", executionFond.getSettlementCode(),
|
"settleCode", executionFond.getSettlementCode(),
|
||||||
"operation", executionFond.getSide()
|
"operation", executionFond.getSide()
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,7 @@ public class KSRepCashRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
||||||
ksRepCashRegistersReport.setCloseBalance(registry.getCloseBalance());
|
ksRepCashRegistersReport.setCloseBalance(registry.getCloseBalance());
|
||||||
ksRepCashRegistersReport.setRemarks("");
|
ksRepCashRegistersReport.setRemarks("");
|
||||||
|
|
||||||
RegistryCodeDictionary registryCodeDictionary = registryCodeDictionaryImdg.getSingleObjectByFieldValues(Map.of("code", registry.getRegistryCode()));
|
RegistryCodeDictionary registryCodeDictionary = registryCodeDictionaryImdg.getFirstObjectByFieldValues(Map.of("code", registry.getRegistryCode()));
|
||||||
if (registryCodeDictionary != null) ksRepCashRegistersReport.setRegisterName(registryCodeDictionary.getName());
|
if (registryCodeDictionary != null) ksRepCashRegistersReport.setRegisterName(registryCodeDictionary.getName());
|
||||||
|
|
||||||
if (registry.getSettledCredit() != null) {
|
if (registry.getSettledCredit() != null) {
|
||||||
|
|
|
||||||
|
|
@ -96,7 +96,7 @@ public class KSRepDepoRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
||||||
ksRepDepoRegistersReport.setCloseQuantity(registry.getCloseBalance());
|
ksRepDepoRegistersReport.setCloseQuantity(registry.getCloseBalance());
|
||||||
ksRepDepoRegistersReport.setRemarks(null);
|
ksRepDepoRegistersReport.setRemarks(null);
|
||||||
|
|
||||||
RegistryCodeDictionary registryCodeDescription = registryCodeDictionaryImdg.getSingleObjectByFieldValues(Map.of("code", registry.getRegistryCode()));
|
RegistryCodeDictionary registryCodeDescription = registryCodeDictionaryImdg.getFirstObjectByFieldValues(Map.of("code", registry.getRegistryCode()));
|
||||||
if (registryCodeDescription != null) ksRepDepoRegistersReport.setRegisterName(registryCodeDescription.getName());
|
if (registryCodeDescription != null) ksRepDepoRegistersReport.setRegisterName(registryCodeDescription.getName());
|
||||||
|
|
||||||
if (registry.getSettledCredit() != null) {
|
if (registry.getSettledCredit() != null) {
|
||||||
|
|
|
||||||
|
|
@ -66,21 +66,21 @@ public class KSRepFirmDetailsReportBuilder extends CSVReportBuilder<EmptyParams,
|
||||||
rows = new ArrayList<>(companies.size());
|
rows = new ArrayList<>(companies.size());
|
||||||
for (Company company : companies) {
|
for (Company company : companies) {
|
||||||
try {
|
try {
|
||||||
CompanySymbols innCompanySymbol = companySymbolsImdg.getSingleObjectByFieldValues(
|
CompanySymbols innCompanySymbol = companySymbolsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"companyId", company.getId(),
|
"companyId", company.getId(),
|
||||||
"companySymbol", CompanySymbol.INN.getKey()
|
"companySymbol", CompanySymbol.INN.getKey()
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
CompanySymbols cppCompanySymbol = companySymbolsImdg.getSingleObjectByFieldValues(
|
CompanySymbols cppCompanySymbol = companySymbolsImdg.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"companyId", company.getId(),
|
"companyId", company.getId(),
|
||||||
"companySymbol", CompanySymbol.CPP.getKey()
|
"companySymbol", CompanySymbol.CPP.getKey()
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
ProfileDocument profileDocument = profileDocumentImdg.getSingleObjectByFieldValues(
|
ProfileDocument profileDocument = profileDocumentImdg.getFirstObjectByFieldValues(
|
||||||
Map.of(
|
Map.of(
|
||||||
"companyId", company.getId(),
|
"companyId", company.getId(),
|
||||||
"documentType", DocumentTypes.cntr.getKey()
|
"documentType", DocumentTypes.cntr.getKey()
|
||||||
|
|
|
||||||
|
|
@ -152,7 +152,7 @@ public class ClearingCalendarService extends QueueConsumer implements Initializi
|
||||||
boolean isWeekend = Arrays.asList(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY).contains(currentDate.getDayOfWeek());
|
boolean isWeekend = Arrays.asList(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY).contains(currentDate.getDayOfWeek());
|
||||||
if (isValidWorkday(clearingCalendar, isWeekend)) {
|
if (isValidWorkday(clearingCalendar, isWeekend)) {
|
||||||
for (PlannerTemplate plannerTemplate : plannerTemplateMap.getAllValues()) {
|
for (PlannerTemplate plannerTemplate : plannerTemplateMap.getAllValues()) {
|
||||||
PlannerAllToday plannerAllToday = plannerAllTodayMap.getSingleObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
PlannerAllToday plannerAllToday = plannerAllTodayMap.getFirstObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
||||||
if (plannerAllToday == null) {
|
if (plannerAllToday == null) {
|
||||||
plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
||||||
plannerAllTodayMap.insert(plannerAllToday);
|
plannerAllTodayMap.insert(plannerAllToday);
|
||||||
|
|
|
||||||
|
|
@ -160,7 +160,7 @@ public class PlannerService extends QueueConsumer implements InitializingBean {
|
||||||
public void cudPlannerAllToday(Planner planner) {
|
public void cudPlannerAllToday(Planner planner) {
|
||||||
if (planner.getTaskStatus().equalsIgnoreCase(Status.Active.getKey())) {
|
if (planner.getTaskStatus().equalsIgnoreCase(Status.Active.getKey())) {
|
||||||
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(planner).build();
|
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(planner).build();
|
||||||
PlannerAllToday oldPlannerAllToday = plannerAllTodayMap.getSingleObjectBySQL(String.format("parentId = %s", planner.getId()));
|
PlannerAllToday oldPlannerAllToday = plannerAllTodayMap.getFirstObjectBySQL(String.format("parentId = %s", planner.getId()));
|
||||||
if (oldPlannerAllToday != null) {
|
if (oldPlannerAllToday != null) {
|
||||||
plannerAllToday.setId(oldPlannerAllToday.getId());
|
plannerAllToday.setId(oldPlannerAllToday.getId());
|
||||||
plannerAllTodayMap.insert(plannerAllToday);
|
plannerAllTodayMap.insert(plannerAllToday);
|
||||||
|
|
|
||||||
|
|
@ -138,7 +138,7 @@ public class PlannerTemplateService extends QueueConsumer implements Initializin
|
||||||
|
|
||||||
if (todayWorkDay()) {
|
if (todayWorkDay()) {
|
||||||
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
||||||
PlannerAllToday oldPlannerAllToday = plannerAllTodayMap.getSingleObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
PlannerAllToday oldPlannerAllToday = plannerAllTodayMap.getFirstObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
||||||
if (oldPlannerAllToday != null) {
|
if (oldPlannerAllToday != null) {
|
||||||
plannerAllToday.setId(oldPlannerAllToday.getId());
|
plannerAllToday.setId(oldPlannerAllToday.getId());
|
||||||
plannerAllTodayMap.insert(plannerAllToday);
|
plannerAllTodayMap.insert(plannerAllToday);
|
||||||
|
|
@ -164,7 +164,7 @@ public class PlannerTemplateService extends QueueConsumer implements Initializin
|
||||||
PlannerTemplate plannerTemplate = plannerTemplateMap.getSingleObjectByID(req.getId());
|
PlannerTemplate plannerTemplate = plannerTemplateMap.getSingleObjectByID(req.getId());
|
||||||
|
|
||||||
if (todayWorkDay()) {
|
if (todayWorkDay()) {
|
||||||
PlannerAllToday plannerAllToday = plannerAllTodayMap.getSingleObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
PlannerAllToday plannerAllToday = plannerAllTodayMap.getFirstObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
||||||
if (plannerAllToday != null) {
|
if (plannerAllToday != null) {
|
||||||
plannerAllTodayMap.delete(plannerAllToday);
|
plannerAllTodayMap.delete(plannerAllToday);
|
||||||
addToPlannerQueue(TaskManager.Process.delete, plannerAllToday);
|
addToPlannerQueue(TaskManager.Process.delete, plannerAllToday);
|
||||||
|
|
|
||||||
|
|
@ -158,14 +158,14 @@ public abstract class AbstractServiceTest {
|
||||||
|
|
||||||
protected void checkPlannerAllTodayByPlannerTemplate(PlannerTemplate plannerTemplate) {
|
protected void checkPlannerAllTodayByPlannerTemplate(PlannerTemplate plannerTemplate) {
|
||||||
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
||||||
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getSingleObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getFirstObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
||||||
plannerAllToday.setId(plannerAllTodayRes.getId());
|
plannerAllToday.setId(plannerAllTodayRes.getId());
|
||||||
PLANNER_ALL_TODAY_MATCHER.assertMatch(plannerAllTodayRes, plannerAllToday);
|
PLANNER_ALL_TODAY_MATCHER.assertMatch(plannerAllTodayRes, plannerAllToday);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void checkPlannerAllTodayByPlanner(Planner planner) {
|
protected void checkPlannerAllTodayByPlanner(Planner planner) {
|
||||||
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(planner).build();
|
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(planner).build();
|
||||||
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getSingleObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getFirstObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
||||||
plannerAllToday.setId(plannerAllTodayRes.getId());
|
plannerAllToday.setId(plannerAllTodayRes.getId());
|
||||||
PLANNER_ALL_TODAY_MATCHER.assertMatch(plannerAllTodayRes, plannerAllToday);
|
PLANNER_ALL_TODAY_MATCHER.assertMatch(plannerAllTodayRes, plannerAllToday);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -77,7 +77,7 @@ class ClearingCalendarServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
ClearingCalendar clearingCalendarRes = clearingCalendarImdg.getSingleObjectBySQL(String.format("companyId = %s", clearingCalendar.getCompanyId()));
|
ClearingCalendar clearingCalendarRes = clearingCalendarImdg.getFirstObjectBySQL(String.format("companyId = %s", clearingCalendar.getCompanyId()));
|
||||||
clearingCalendar.setId(clearingCalendarRes.getId());
|
clearingCalendar.setId(clearingCalendarRes.getId());
|
||||||
CLEARING_CALENDAR_MATCHER.assertMatch(clearingCalendarRes, clearingCalendar);
|
CLEARING_CALENDAR_MATCHER.assertMatch(clearingCalendarRes, clearingCalendar);
|
||||||
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
||||||
|
|
@ -115,7 +115,7 @@ class ClearingCalendarServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
ClearingCalendar clearingCalendarRes = clearingCalendarImdg.getSingleObjectBySQL(String.format("companyId = %s", clearingCalendar.getCompanyId()));
|
ClearingCalendar clearingCalendarRes = clearingCalendarImdg.getFirstObjectBySQL(String.format("companyId = %s", clearingCalendar.getCompanyId()));
|
||||||
clearingCalendar.setId(clearingCalendarRes.getId());
|
clearingCalendar.setId(clearingCalendarRes.getId());
|
||||||
CLEARING_CALENDAR_MATCHER.assertMatch(clearingCalendarRes, clearingCalendar);
|
CLEARING_CALENDAR_MATCHER.assertMatch(clearingCalendarRes, clearingCalendar);
|
||||||
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
||||||
|
|
@ -150,9 +150,9 @@ class ClearingCalendarServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(id, mockProducer);
|
waitingSendAndCheckRecord(id, mockProducer);
|
||||||
|
|
||||||
ClearingCalendar plannerTemplateRes = clearingCalendarImdg.getSingleObjectBySQL(String.format("companyId = %s", clearingCalendar.getCompanyId()));
|
ClearingCalendar plannerTemplateRes = clearingCalendarImdg.getFirstObjectBySQL(String.format("companyId = %s", clearingCalendar.getCompanyId()));
|
||||||
assertNull(plannerTemplateRes);
|
assertNull(plannerTemplateRes);
|
||||||
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getSingleObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getFirstObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
||||||
assertNull(plannerAllTodayRes);
|
assertNull(plannerAllTodayRes);
|
||||||
|
|
||||||
//добавим в clearingCalendarImdg валидный clearingCalendar на случай если тесты plannerTemplate еще не отработали
|
//добавим в clearingCalendarImdg валидный clearingCalendar на случай если тесты plannerTemplate еще не отработали
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,7 @@ class LauncherServiceTest extends AbstractServiceTest {
|
||||||
BASE_REQUEST_MATCHER.assertMatch(baseRequestResult, predictableBaseRequest);
|
BASE_REQUEST_MATCHER.assertMatch(baseRequestResult, predictableBaseRequest);
|
||||||
|
|
||||||
|
|
||||||
Launcher launcherReq = launcherMap.getSingleObjectBySQL(String.format("senderId = %s", launcher.getSenderId()));
|
Launcher launcherReq = launcherMap.getFirstObjectBySQL(String.format("senderId = %s", launcher.getSenderId()));
|
||||||
launcher.setId(launcherReq.getId());
|
launcher.setId(launcherReq.getId());
|
||||||
LAUNCHER_MATCHER.assertMatch(launcherReq, launcher);
|
LAUNCHER_MATCHER.assertMatch(launcherReq, launcher);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,7 @@ class PlannerServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
Planner plannerReq = plannerImdg.getSingleObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
Planner plannerReq = plannerImdg.getFirstObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
||||||
planner.setId(plannerReq.getId());
|
planner.setId(plannerReq.getId());
|
||||||
PLANNER_MATCHER.assertMatch(plannerReq, planner);
|
PLANNER_MATCHER.assertMatch(plannerReq, planner);
|
||||||
checkPlannerAllTodayByPlanner(planner);
|
checkPlannerAllTodayByPlanner(planner);
|
||||||
|
|
@ -107,7 +107,7 @@ class PlannerServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(planner.getId(), mockProducer);
|
waitingSendAndCheckRecord(planner.getId(), mockProducer);
|
||||||
|
|
||||||
Planner plannerReq = plannerImdg.getSingleObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
Planner plannerReq = plannerImdg.getFirstObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
||||||
planner.setId(plannerReq.getId());
|
planner.setId(plannerReq.getId());
|
||||||
PLANNER_MATCHER.assertMatch(plannerReq, planner);
|
PLANNER_MATCHER.assertMatch(plannerReq, planner);
|
||||||
checkPlannerAllTodayByPlanner(planner);
|
checkPlannerAllTodayByPlanner(planner);
|
||||||
|
|
@ -139,9 +139,9 @@ class PlannerServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(plannerId, mockProducer);
|
waitingSendAndCheckRecord(plannerId, mockProducer);
|
||||||
|
|
||||||
Planner plannerReq = plannerImdg.getSingleObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
Planner plannerReq = plannerImdg.getFirstObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
||||||
assertNull(plannerReq);
|
assertNull(plannerReq);
|
||||||
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getSingleObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getFirstObjectBySQL(String.format("companyId = %s", planner.getCompanyId()));
|
||||||
assertNull(plannerAllTodayRes);
|
assertNull(plannerAllTodayRes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -166,7 +166,7 @@ class PlannerServiceTest extends AbstractServiceTest {
|
||||||
planner.setTaskStatus(Status.Cancel.getKey());
|
planner.setTaskStatus(Status.Cancel.getKey());
|
||||||
plannerAllTodayImdg.insert(PlannerAllTodayBuilder.builder().append(planner).build());
|
plannerAllTodayImdg.insert(PlannerAllTodayBuilder.builder().append(planner).build());
|
||||||
plannerService.cudPlannerAllToday(planner);
|
plannerService.cudPlannerAllToday(planner);
|
||||||
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getSingleObjectBySQL(String.format("parentId = %s", planner.getId()));
|
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getFirstObjectBySQL(String.format("parentId = %s", planner.getId()));
|
||||||
assertNull(plannerAllTodayRes);
|
assertNull(plannerAllTodayRes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -63,7 +63,7 @@ class PlannerTemplateServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
PlannerTemplate plannerTemplateRes = plannerTemplateImdg.getSingleObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
PlannerTemplate plannerTemplateRes = plannerTemplateImdg.getFirstObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
||||||
plannerTemplate.setId(plannerTemplateRes.getId());
|
plannerTemplate.setId(plannerTemplateRes.getId());
|
||||||
PLANNER_TEMPLATE_MATCHER.assertMatch(plannerTemplateRes, plannerTemplate);
|
PLANNER_TEMPLATE_MATCHER.assertMatch(plannerTemplateRes, plannerTemplate);
|
||||||
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
||||||
|
|
@ -98,7 +98,7 @@ class PlannerTemplateServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(ID, mockProducer);
|
waitingSendAndCheckRecord(ID, mockProducer);
|
||||||
|
|
||||||
PlannerTemplate plannerTemplateRes = plannerTemplateImdg.getSingleObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
PlannerTemplate plannerTemplateRes = plannerTemplateImdg.getFirstObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
||||||
plannerTemplate.setId(plannerTemplateRes.getId());
|
plannerTemplate.setId(plannerTemplateRes.getId());
|
||||||
PLANNER_TEMPLATE_MATCHER.assertMatch(plannerTemplateRes, plannerTemplate);
|
PLANNER_TEMPLATE_MATCHER.assertMatch(plannerTemplateRes, plannerTemplate);
|
||||||
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
checkPlannerAllTodayByPlannerTemplate(plannerTemplate);
|
||||||
|
|
@ -129,9 +129,9 @@ class PlannerTemplateServiceTest extends AbstractServiceTest {
|
||||||
//ASSERT
|
//ASSERT
|
||||||
waitingSendAndCheckRecord(id, mockProducer);
|
waitingSendAndCheckRecord(id, mockProducer);
|
||||||
|
|
||||||
PlannerTemplate plannerTemplateRes = plannerTemplateImdg.getSingleObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
PlannerTemplate plannerTemplateRes = plannerTemplateImdg.getFirstObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
||||||
assertNull(plannerTemplateRes);
|
assertNull(plannerTemplateRes);
|
||||||
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getSingleObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
PlannerAllToday plannerAllTodayRes = plannerAllTodayImdg.getFirstObjectBySQL(String.format("companyId = %s", plannerTemplate.getCompanyId()));
|
||||||
assertNull(plannerAllTodayRes);
|
assertNull(plannerAllTodayRes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -297,7 +297,7 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
||||||
Map<String, Comparable<?>> query = new HashMap<>();
|
Map<String, Comparable<?>> query = new HashMap<>();
|
||||||
query.put("securityId", byRequest.getSecurityId());
|
query.put("securityId", byRequest.getSecurityId());
|
||||||
query.put("market", byRequest.getMarket());
|
query.put("market", byRequest.getMarket());
|
||||||
Listing existListing = listingImdg.getSingleObjectByFieldValues(query);
|
Listing existListing = listingImdg.getFirstObjectByFieldValues(query);
|
||||||
if (existListing == null)
|
if (existListing == null)
|
||||||
log.trace("Listing not found by query {}", query);
|
log.trace("Listing not found by query {}", query);
|
||||||
else
|
else
|
||||||
|
|
@ -308,7 +308,7 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
||||||
CouponPeriod findCouponPeriod(CouponPeriodNewRequest byRequest) {
|
CouponPeriod findCouponPeriod(CouponPeriodNewRequest byRequest) {
|
||||||
if (byRequest.getSecurityId() == null)
|
if (byRequest.getSecurityId() == null)
|
||||||
return null;
|
return null;
|
||||||
CouponPeriod existCouponPeriod = couponPeriodImdg.getSingleObjectByFieldValues(Map.of("securityId", byRequest.getSecurityId()));
|
CouponPeriod existCouponPeriod = couponPeriodImdg.getFirstObjectByFieldValues(Map.of("securityId", byRequest.getSecurityId()));
|
||||||
|
|
||||||
if (existCouponPeriod == null)
|
if (existCouponPeriod == null)
|
||||||
log.trace("CouponPeriod not found by securityId={}", byRequest.getSecurityId());
|
log.trace("CouponPeriod not found by securityId={}", byRequest.getSecurityId());
|
||||||
|
|
@ -325,7 +325,7 @@ public class GatewaySecurityService extends QueueConsumer implements Initializin
|
||||||
log.error("Not a number \"{}\": {}", byRequest.getSecuritySymbol(), nan.toString());
|
log.error("Not a number \"{}\": {}", byRequest.getSecuritySymbol(), nan.toString());
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
FixedIncomeCashFlow existFixedIncomeCashFlow = fixedIncomeCashFlowImdg.getSingleObjectByFieldValues(Map.of("securityId", securityId));
|
FixedIncomeCashFlow existFixedIncomeCashFlow = fixedIncomeCashFlowImdg.getFirstObjectByFieldValues(Map.of("securityId", securityId));
|
||||||
if (existFixedIncomeCashFlow == null)
|
if (existFixedIncomeCashFlow == null)
|
||||||
log.trace("FixedIncomeCashFlow not found by securityId={}", securityId);
|
log.trace("FixedIncomeCashFlow not found by securityId={}", securityId);
|
||||||
else
|
else
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ 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 org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeCashFlow;
|
|
||||||
import ru.clearing.classes.statics.data.misc.Listing;
|
import ru.clearing.classes.statics.data.misc.Listing;
|
||||||
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;
|
||||||
|
|
@ -21,7 +20,6 @@ import ru.spcex.clearing.platform.messaging.service.RequestInfo;
|
||||||
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
||||||
import ru.spcex.clearing.platform.messaging.service.Status;
|
import ru.spcex.clearing.platform.messaging.service.Status;
|
||||||
import ru.spcex.clearing.securities.component.ListingBuilder;
|
import ru.spcex.clearing.securities.component.ListingBuilder;
|
||||||
import ru.spcex.clearing.securities.errors.SecuritiesError;
|
|
||||||
import ru.spcex.clearing.securities.validation.ValidationProvider;
|
import ru.spcex.clearing.securities.validation.ValidationProvider;
|
||||||
import ru.spcex.clearing.util.security.UserRoleVerification;
|
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||||
import ru.spcex.clearing.util.services.RequestHelper;
|
import ru.spcex.clearing.util.services.RequestHelper;
|
||||||
|
|
@ -222,7 +220,7 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
|
||||||
Imdg<Listing> listingTxMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
Imdg<Listing> listingTxMap = transaction.getImdg(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||||
|
|
||||||
moneyMarketSecurityTxMap.update(mms);
|
moneyMarketSecurityTxMap.update(mms);
|
||||||
Listing listing = listingTxMap.getSingleObjectByFieldValues(Map.of("securityId", mms.getId()));
|
Listing listing = listingTxMap.getFirstObjectByFieldValues(Map.of("securityId", mms.getId()));
|
||||||
if (listing == null) {
|
if (listing == null) {
|
||||||
log.error("MoneyMarketSecurityUpdateRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
log.error("MoneyMarketSecurityUpdateRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
||||||
return null;
|
return null;
|
||||||
|
|
@ -270,7 +268,7 @@ public class MoneyMarketSecurityService extends QueueConsumer implements Initial
|
||||||
mms.setWorkflowStatus(WorkflowStatus.Blocked.getKey());
|
mms.setWorkflowStatus(WorkflowStatus.Blocked.getKey());
|
||||||
mms.setUpdated(updateTime);
|
mms.setUpdated(updateTime);
|
||||||
moneyMarketSecurityTxMap.update(mms);
|
moneyMarketSecurityTxMap.update(mms);
|
||||||
Listing listing = listingTxMap.getSingleObjectByFieldValues(Map.of("securityId", mms.getId()));
|
Listing listing = listingTxMap.getFirstObjectByFieldValues(Map.of("securityId", mms.getId()));
|
||||||
if (listing == null) {
|
if (listing == null) {
|
||||||
log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
log.error("CommonDeleteRequest id {} couldn't find listing with securityId {}", req.getId(), mms.getId());
|
||||||
return null;
|
return null;
|
||||||
|
|
|
||||||
|
|
@ -7,9 +7,10 @@ import ru.clearing.platform.dictionary.CurrencyCodeDictionary;
|
||||||
import ru.clearing.platform.dictionary.WorkflowStatusDictionary;
|
import ru.clearing.platform.dictionary.WorkflowStatusDictionary;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest;
|
import ru.spcex.clearing.platform.messaging.domain.cud.common.CommonDeleteRequest;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.*;
|
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.ListingNewRequest;
|
||||||
import ru.spcex.clearing.util.security.SecuritySelector;
|
import ru.spcex.clearing.platform.messaging.domain.cud.securitites.ListingUpdateRequest;
|
||||||
import ru.spcex.clearing.securities.errors.SecuritiesError;
|
import ru.spcex.clearing.securities.errors.SecuritiesError;
|
||||||
|
import ru.spcex.clearing.util.security.SecuritySelector;
|
||||||
import ru.spcex.clearing.validation.common.rules.DictionaryPresentRule;
|
import ru.spcex.clearing.validation.common.rules.DictionaryPresentRule;
|
||||||
import ru.spcex.clearing.validation.common.rules.IdPresentRule;
|
import ru.spcex.clearing.validation.common.rules.IdPresentRule;
|
||||||
import ru.spcex.clearing.validation.common.rules.SpecialIdPresentRule;
|
import ru.spcex.clearing.validation.common.rules.SpecialIdPresentRule;
|
||||||
|
|
@ -200,7 +201,7 @@ public class ListingValidationProvider {
|
||||||
String market = marketGetter.apply(validatedObject);
|
String market = marketGetter.apply(validatedObject);
|
||||||
if (market == null) return empty();
|
if (market == null) return empty();
|
||||||
Imdg<Listing> listingImdg = context.obtainMap(IMDGDistributedNames.Map_Listing, Listing.class);
|
Imdg<Listing> listingImdg = context.obtainMap(IMDGDistributedNames.Map_Listing, Listing.class);
|
||||||
Listing fromMap = listingImdg.getSingleObjectByFieldValues(Map.of(
|
Listing fromMap = listingImdg.getFirstObjectByFieldValues(Map.of(
|
||||||
"securityId", securityId,
|
"securityId", securityId,
|
||||||
"market", market,
|
"market", market,
|
||||||
"workflowStatus", WorkflowStatus.Active.getKey()
|
"workflowStatus", WorkflowStatus.Active.getKey()
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ public enum CouponPeriodNewValidationRule implements IValidationRule<ImdgValidat
|
||||||
return of(SecuritiesError.RequiredFieldIsEmpty, "securityId");
|
return of(SecuritiesError.RequiredFieldIsEmpty, "securityId");
|
||||||
}
|
}
|
||||||
Imdg<SpcexObjectBase> imdgDictionary = context.obtainMap(IMDGDistributedNames.Map_CouponPeriod, SpcexObjectBase.class);
|
Imdg<SpcexObjectBase> imdgDictionary = context.obtainMap(IMDGDistributedNames.Map_CouponPeriod, SpcexObjectBase.class);
|
||||||
SpcexObjectBase couponPeriod = imdgDictionary.getSingleObjectByFieldValues(Map.of(
|
SpcexObjectBase couponPeriod = imdgDictionary.getFirstObjectByFieldValues(Map.of(
|
||||||
"securityId", action.getSecurityId()));
|
"securityId", action.getSecurityId()));
|
||||||
if (couponPeriod != null) {
|
if (couponPeriod != null) {
|
||||||
return of(SecuritiesError.CouponPeriodAlreadyExists, "securityId");
|
return of(SecuritiesError.CouponPeriodAlreadyExists, "securityId");
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ public enum CouponPeriodUpdateValidationRule implements IValidationRule<ImdgVali
|
||||||
return of(SecuritiesError.RequiredFieldIsEmpty, "securityId");
|
return of(SecuritiesError.RequiredFieldIsEmpty, "securityId");
|
||||||
}
|
}
|
||||||
Imdg<SpcexObjectBase> imdgDictionary = context.obtainMap(IMDGDistributedNames.Map_CouponPeriod, SpcexObjectBase.class);
|
Imdg<SpcexObjectBase> imdgDictionary = context.obtainMap(IMDGDistributedNames.Map_CouponPeriod, SpcexObjectBase.class);
|
||||||
SpcexObjectBase currency = imdgDictionary.getSingleObjectByFieldValues(Map.of(
|
SpcexObjectBase currency = imdgDictionary.getFirstObjectByFieldValues(Map.of(
|
||||||
"securityId", action.getSecurityId()));
|
"securityId", action.getSecurityId()));
|
||||||
if (currency == null) {
|
if (currency == null) {
|
||||||
return of(SecuritiesError.CouponPeriodNotFound, "securityId");
|
return of(SecuritiesError.CouponPeriodNotFound, "securityId");
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ public enum CurrencyNewValidationRule implements IValidationRule<ImdgValidationC
|
||||||
return of(SecuritiesError.RequiredFieldIsEmpty, "currencyCode");
|
return of(SecuritiesError.RequiredFieldIsEmpty, "currencyCode");
|
||||||
}
|
}
|
||||||
Imdg<SpcexObjectBase> imdgDictionary = context.obtainMap(IMDGDistributedNames.Map_Currency, SpcexObjectBase.class);
|
Imdg<SpcexObjectBase> imdgDictionary = context.obtainMap(IMDGDistributedNames.Map_Currency, SpcexObjectBase.class);
|
||||||
SpcexObjectBase currency = imdgDictionary.getSingleObjectByFieldValues(Map.of(
|
SpcexObjectBase currency = imdgDictionary.getFirstObjectByFieldValues(Map.of(
|
||||||
"currencyCode", action.getCurrencyCode()));
|
"currencyCode", action.getCurrencyCode()));
|
||||||
if (currency != null) {
|
if (currency != null) {
|
||||||
return of(SecuritiesError.CurrencyAlreadyExists, "currencyCode");
|
return of(SecuritiesError.CurrencyAlreadyExists, "currencyCode");
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue