This commit is contained in:
parent
02c7669d9f
commit
47bcf7acc8
3 changed files with 43 additions and 0 deletions
|
|
@ -258,6 +258,26 @@ public class RegistryService {
|
||||||
|
|
||||||
Stream.of(assets.a__t(), assets.a__b(), assets.a__f())
|
Stream.of(assets.a__t(), assets.a__b(), assets.a__f())
|
||||||
.forEach(a -> {
|
.forEach(a -> {
|
||||||
|
RegistryTradingParams rgsCde = RegistryTradingParams.of(
|
||||||
|
a.getRegistryDesignation(),
|
||||||
|
a.getRegistryInstrumentType(),
|
||||||
|
a.getRegistryCapacity(),
|
||||||
|
a.getRegistryUnit());
|
||||||
|
Collection<Registry> assetFound = this.assets.searchByParamsWithoutStatusCondition(
|
||||||
|
a.getAccount(),
|
||||||
|
a.getSecuritySymbol(),
|
||||||
|
a.getCompanyId(),
|
||||||
|
rgsCde
|
||||||
|
);
|
||||||
|
if (!assetFound.isEmpty()) {
|
||||||
|
String idsFound = assetFound
|
||||||
|
.stream()
|
||||||
|
.map(Registry::getId)
|
||||||
|
.map(Object::toString)
|
||||||
|
.collect(Collectors.joining(";", "[", "]"));
|
||||||
|
log.debug("TCR#id={} account#id={} company#id={}: {} asset already present: (#id={}), skipping;",
|
||||||
|
tcr.getId(), acc.getId(), cmp.getId(), a.getRegistryCode(), idsFound);
|
||||||
|
}
|
||||||
a.setRegistryStatus(RegistryStatus.PROC.getKey());
|
a.setRegistryStatus(RegistryStatus.PROC.getKey());
|
||||||
registryImdg.insert(a);
|
registryImdg.insert(a);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -135,6 +135,20 @@ public class AssetTBFProcessing {
|
||||||
return rgsImdg.getCollectionObjectsByPredicate(d__iPrdct);
|
return rgsImdg.getCollectionObjectsByPredicate(d__iPrdct);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Collection<Registry> searchByParamsWithoutStatusCondition(String account,
|
||||||
|
String securitySymbol,
|
||||||
|
Long companyId,
|
||||||
|
RegistryTradingParams params) {
|
||||||
|
ImdgPredicateBuilder pb = rgsImdg.predicateBuilder();
|
||||||
|
ImdgPredicate d__iPrdct = pb.and(
|
||||||
|
pb.equals("account", account),
|
||||||
|
pb.equals("securitySymbol", securitySymbol),
|
||||||
|
pb.equals("companyId", companyId),
|
||||||
|
pb.sql(RegistryCodeSqlBuilder.getInstance(params).build())
|
||||||
|
);
|
||||||
|
return rgsImdg.getCollectionObjectsByPredicate(d__iPrdct);
|
||||||
|
}
|
||||||
|
|
||||||
public void processByAm_b(Registry am_b, BigDecimal sum) {
|
public void processByAm_b(Registry am_b, BigDecimal sum) {
|
||||||
Optional<Registry> am_f = rgsMng.findRegByUnit(am_b.getCompanyId(),
|
Optional<Registry> am_f = rgsMng.findRegByUnit(am_b.getCompanyId(),
|
||||||
am_b.getAccountId(),
|
am_b.getAccountId(),
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,15 @@ public record RegistryTradingParams(RegistryDesignation registryDesignation,
|
||||||
return isEqualDesignation && isEqualInstrumentType && isEqualCapacity && isEqualUnit;
|
return isEqualDesignation && isEqualInstrumentType && isEqualCapacity && isEqualUnit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static RegistryTradingParams of(String dsgn, String insType, String cap, String unit) {
|
||||||
|
return new RegistryTradingParams(
|
||||||
|
IEnumKey.getEnumByKey(RegistryDesignation.class, dsgn),
|
||||||
|
IEnumKey.getEnumByKey(RegistryInstrumentType.class, insType),
|
||||||
|
IEnumKey.getEnumByKey(RegistryCapacity.class, cap),
|
||||||
|
IEnumKey.getEnumByKey(RegistryUnit.class, unit)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
public RegistryTradingParams dsgn(RegistryDesignation registryDesignation) {
|
public RegistryTradingParams dsgn(RegistryDesignation registryDesignation) {
|
||||||
return new RegistryTradingParams(registryDesignation,
|
return new RegistryTradingParams(registryDesignation,
|
||||||
registryInstrumentType,
|
registryInstrumentType,
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue