SDF06 поиск компании по deal
This commit is contained in:
parent
7279fdf743
commit
8ecb0b7c9e
1 changed files with 4 additions and 20 deletions
|
|
@ -4,14 +4,12 @@ import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import ru.clearing.classes.statics.data.account.Account;
|
import ru.clearing.classes.statics.data.account.Account;
|
||||||
import ru.clearing.classes.statics.data.company.Company;
|
import ru.clearing.classes.statics.data.company.Company;
|
||||||
import ru.clearing.classes.statics.data.company.CompanySymbols;
|
|
||||||
import ru.clearing.classes.statics.data.misc.Session;
|
import ru.clearing.classes.statics.data.misc.Session;
|
||||||
import ru.clearing.classes.statics.data.registry.Registry;
|
import ru.clearing.classes.statics.data.registry.Registry;
|
||||||
import ru.clearing.classes.statics.data.sdf.SDf06;
|
import ru.clearing.classes.statics.data.sdf.SDf06;
|
||||||
import ru.spcex.clearing.error.ClearingError;
|
import ru.spcex.clearing.error.ClearingError;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.platform.enumeration.AccountType;
|
import ru.spcex.platform.enumeration.AccountType;
|
||||||
import ru.spcex.platform.enumeration.CompanySymbol;
|
|
||||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
|
|
@ -35,27 +33,13 @@ public enum Sdf06NewValidationRule implements IValidationRule<ImdgValidationCont
|
||||||
@Override
|
@Override
|
||||||
public Optional<EnumMessage> validate(ImdgValidationContext<SDf06> context) {
|
public Optional<EnumMessage> validate(ImdgValidationContext<SDf06> context) {
|
||||||
SDf06 sdf06 = context.getValidatedObject();
|
SDf06 sdf06 = context.getValidatedObject();
|
||||||
Imdg<CompanySymbols> companySymbolsImdg = context.obtainMap(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
|
|
||||||
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
Imdg<Company> companyImdg = context.obtainMap(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
|
if (TextUtil.isEmpty(sdf06.getDeal())) {
|
||||||
CompanySymbols companySymbols = null;
|
return of(ClearingError.CompanyNotFoundB, sdf06.getDeal());
|
||||||
if (sdf06.getInn() != null) { //TextUtil.isEmpty
|
|
||||||
companySymbols = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
|
||||||
"companySymbol", CompanySymbol.INN.getKey(),
|
|
||||||
"companySymbolValue", sdf06.getInn()));
|
|
||||||
} else if (sdf06.getBic() != null) {
|
|
||||||
companySymbols = companySymbolsImdg.getFirstObjectByFieldValues(Map.of(
|
|
||||||
"companySymbol", CompanySymbol.BIC.getKey(),
|
|
||||||
"companySymbolValue", sdf06.getBic()));
|
|
||||||
}
|
}
|
||||||
if (companySymbols == null) {
|
Company company = companyImdg.getFirstObjectBySQL("tradingCode = '" + sdf06.getDeal() + "'");
|
||||||
return of(ClearingError.CompanyNotFoundB, "inn=" + sdf06.getInn() + "/bic=" + sdf06.getBic());
|
|
||||||
}
|
|
||||||
Company company = companyImdg.getSingleObjectByID(companySymbols.getCompanyId());
|
|
||||||
if (company == null) {
|
if (company == null) {
|
||||||
return of(ClearingError.CompanyNotFoundB, "inn=" + sdf06.getInn()
|
return of(ClearingError.CompanyNotFoundB, sdf06.getDeal());
|
||||||
+ "/bic=" + sdf06.getBic()
|
|
||||||
+ "/companyId=" + companySymbols.getCompanyId());
|
|
||||||
}
|
}
|
||||||
context.storeObject(ValidationStored.Sdf06Company, company);
|
context.storeObject(ValidationStored.Sdf06Company, company);
|
||||||
return empty();
|
return empty();
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue