identification funds AM*T search bigfix
This commit is contained in:
parent
d636a6b0ce
commit
f2f94ca3e2
2 changed files with 19 additions and 4 deletions
|
|
@ -371,9 +371,16 @@ public class RegistryService {
|
||||||
IValidator validator = identificationFundsVal.apply(payload);
|
IValidator validator = identificationFundsVal.apply(payload);
|
||||||
Optional<EnumMessage> err = validator.tillFirstError();
|
Optional<EnumMessage> err = validator.tillFirstError();
|
||||||
if (err.isPresent()) {
|
if (err.isPresent()) {
|
||||||
log.error("IdentificationFundsRequest.id={} validation error: {}",
|
log.error("IdentificationFundsRequest.id={} " +
|
||||||
req.getId(),
|
"balance={} " +
|
||||||
msgResolver.resolve(err.get()));
|
"tradingClearingRegistryId={} " +
|
||||||
|
"companyId={} " +
|
||||||
|
"validation error: {}",
|
||||||
|
req.getId(),
|
||||||
|
payload != null ? payload.getBalance() : null,
|
||||||
|
payload != null ? payload.getTradingClearingRegistryId() : null,
|
||||||
|
payload != null ? payload.getCompanyId() : null,
|
||||||
|
msgResolver.resolve(err.get()));
|
||||||
return reqHelp.error(req.getId(), err.get());
|
return reqHelp.error(req.getId(), err.get());
|
||||||
}
|
}
|
||||||
Registry dmau = validator.getStored(Stored.PresentById);
|
Registry dmau = validator.getStored(Stored.PresentById);
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.service.AssetTrio;
|
import ru.spcex.clearing.service.AssetTrio;
|
||||||
import ru.spcex.clearing.session.stage.util.RegistryUtil;
|
import ru.spcex.clearing.session.stage.util.RegistryUtil;
|
||||||
import ru.spcex.platform.enumeration.BalanceDimension;
|
import ru.spcex.platform.enumeration.BalanceDimension;
|
||||||
|
import ru.spcex.platform.enumeration.CurrencyCode;
|
||||||
import ru.spcex.platform.enumeration.RegistryDesignation;
|
import ru.spcex.platform.enumeration.RegistryDesignation;
|
||||||
import ru.spcex.platform.enumeration.RegistryInstrumentType;
|
import ru.spcex.platform.enumeration.RegistryInstrumentType;
|
||||||
import ru.spcex.platform.enumeration.RegistryStatus;
|
import ru.spcex.platform.enumeration.RegistryStatus;
|
||||||
|
|
@ -30,6 +31,7 @@ import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||||
import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
||||||
import static ru.spcex.platform.utils.number.BigDecimalUtil.safeBD;
|
import static ru.spcex.platform.utils.number.BigDecimalUtil.safeBD;
|
||||||
|
import ru.spcex.platform.utils.text.TextUtil;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class AssetTBFProcessing {
|
public class AssetTBFProcessing {
|
||||||
|
|
@ -282,12 +284,18 @@ public class AssetTBFProcessing {
|
||||||
log.error("company.id={}, account.id={} - account not found", companyId, accountId);
|
log.error("company.id={}, account.id={} - account not found", companyId, accountId);
|
||||||
return Optional.empty();
|
return Optional.empty();
|
||||||
}
|
}
|
||||||
|
String currency;
|
||||||
|
if (TextUtil.isEmpty(account.getCurrency())) {
|
||||||
|
currency = CurrencyCode.RUB.getKey();
|
||||||
|
} else {
|
||||||
|
currency = account.getCurrency();
|
||||||
|
}
|
||||||
ImdgPredicateBuilder pb = rgsImdg.predicateBuilder();
|
ImdgPredicateBuilder pb = rgsImdg.predicateBuilder();
|
||||||
Function<RegistryTradingParams, ImdgPredicate> prdct = rgsCode -> pb.and(
|
Function<RegistryTradingParams, ImdgPredicate> prdct = rgsCode -> pb.and(
|
||||||
pb.sql(RegistryCodeSqlBuilder.getInstance(rgsCode).build()),
|
pb.sql(RegistryCodeSqlBuilder.getInstance(rgsCode).build()),
|
||||||
pb.equals("companyId", companyId),
|
pb.equals("companyId", companyId),
|
||||||
pb.equals("accountId", accountId),
|
pb.equals("accountId", accountId),
|
||||||
pb.equals("securitySymbol", account.getCurrency())
|
pb.equals("securitySymbol", currency)
|
||||||
);
|
);
|
||||||
Registry amf = rgsImdg.getFirstObjectByPredicate(prdct.apply(AM_F));
|
Registry amf = rgsImdg.getFirstObjectByPredicate(prdct.apply(AM_F));
|
||||||
Registry amb = rgsImdg.getFirstObjectByPredicate(prdct.apply(AM_B));
|
Registry amb = rgsImdg.getFirstObjectByPredicate(prdct.apply(AM_B));
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue