rename and new stages for companies request
This commit is contained in:
parent
d0409a243e
commit
53fab62830
17 changed files with 222 additions and 175 deletions
|
|
@ -3,7 +3,7 @@ package ru.spcex.clearing.gatewayapi.config;
|
|||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import ru.spcex.clearing.gatewayapi.logic.Stage;
|
||||
import ru.spcex.clearing.gatewayapi.logic.listings.*;
|
||||
import ru.spcex.clearing.gatewayapi.logic.listings_fond.*;
|
||||
import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
||||
|
|
@ -14,8 +14,8 @@ import java.util.List;
|
|||
public class PipelineConfiguration {
|
||||
|
||||
@Bean
|
||||
public List<Stage<ListingsRequestParam>> listingsRequestPipeline(ImdgProvider imdgProvider, KafkaSender kafkaSender) {
|
||||
List<Stage<ListingsRequestParam>> pipeline = new ArrayList<>();
|
||||
public List<Stage<FondListingsRequestParam>> listingsRequestPipeline(ImdgProvider imdgProvider, KafkaSender kafkaSender) {
|
||||
List<Stage<FondListingsRequestParam>> pipeline = new ArrayList<>();
|
||||
pipeline.add(new PrepareSecurities());
|
||||
pipeline.add(new PrepareIssuerCompanies());
|
||||
pipeline.add(new ValidateIncomeSecurities());
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import ru.spcex.clearing.gatewayapi.request.CompaniesRequest;
|
||||
import ru.spcex.clearing.gatewayapi.request.ListingsRequest;
|
||||
import ru.spcex.clearing.gatewayapi.request.FondListingsRequest;
|
||||
import ru.spcex.clearing.gatewayapi.response.CommonResponse;
|
||||
|
||||
@Controller
|
||||
|
|
@ -26,13 +26,13 @@ public class GatewayController {
|
|||
@ApiResponse(code = 400, message = "Ошибка валидации", response = CommonResponse.class)
|
||||
})
|
||||
@RequestMapping(
|
||||
path = "/listings",
|
||||
path = "/listing_fond",
|
||||
method = RequestMethod.POST,
|
||||
consumes = MediaType.APPLICATION_JSON_VALUE,
|
||||
produces = MediaType.APPLICATION_JSON_VALUE
|
||||
)
|
||||
@ResponseBody
|
||||
public CommonResponse listings(@RequestBody ListingsRequest request) {
|
||||
public CommonResponse listings(@RequestBody FondListingsRequest request) {
|
||||
// todo pack it to abstract class
|
||||
CommonResponse commonResponse = new CommonResponse();
|
||||
commonResponse.setId(request.getId());
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import java.util.List;
|
|||
|
||||
public class CompaniesRequestParam {
|
||||
private final CompaniesRequest companiesRequest;
|
||||
private final List<MemberCompany> memberCompanyList = new ArrayList<>();
|
||||
private List<MemberCompany> memberCompanyList = new ArrayList<>();
|
||||
|
||||
public CompaniesRequestParam(CompaniesRequest companiesRequest) {
|
||||
this.companiesRequest = companiesRequest;
|
||||
|
|
@ -21,4 +21,8 @@ public class CompaniesRequestParam {
|
|||
public List<MemberCompany> getMemberCompanyList() {
|
||||
return memberCompanyList;
|
||||
}
|
||||
|
||||
public void setMemberCompanyList(List<MemberCompany> memberCompanyList) {
|
||||
this.memberCompanyList = memberCompanyList;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,6 +11,7 @@ import java.util.HashMap;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PrepareMemberCompanies extends Stage<CompaniesRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
|
@ -105,6 +106,14 @@ public class PrepareMemberCompanies extends Stage<CompaniesRequestParam> {
|
|||
memberCompany.getClientList().add(client);
|
||||
}
|
||||
|
||||
List<MemberCompany> filteredIssuerCompany = companyList.stream()
|
||||
.filter(memberCompany -> !memberCompany.isInvalidData())
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// todo check list is empty
|
||||
|
||||
param.setMemberCompanyList(filteredIssuerCompany);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,34 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.companies;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import ru.spcex.clearing.gatewayapi.logic.ProcessResult;
|
||||
import ru.spcex.clearing.gatewayapi.logic.Stage;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.MemberCompany;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ValidateMemberCompanies extends Stage<CompaniesRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
@Override
|
||||
public ProcessResult process(CompaniesRequestParam param) {
|
||||
List<MemberCompany> memberCompanyList = param.getMemberCompanyList();
|
||||
|
||||
for (MemberCompany company : memberCompanyList) {
|
||||
if (company.isInvalidData()) continue;
|
||||
|
||||
if (StringUtils.isEmpty(company.getShortName())) {
|
||||
log.warn("Empty or null shortName for company (UUID = {}), skipped", company.getId());
|
||||
company.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
// todo in progress...
|
||||
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
|
||||
import ru.spcex.clearing.gatewayapi.request.ListingsRequest;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IssuerCompany;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class ListingsRequestParam {
|
||||
private ListingsRequest listingsRequest;
|
||||
private List<IncomeSecurity> securities = new ArrayList<>();
|
||||
private List<IssuerCompany> issuerCompanyList = new ArrayList<>();
|
||||
|
||||
public ListingsRequestParam(ListingsRequest listingsRequest) {
|
||||
this.listingsRequest = listingsRequest;
|
||||
}
|
||||
|
||||
|
||||
public ListingsRequest getListingsRequest() {
|
||||
return listingsRequest;
|
||||
}
|
||||
|
||||
public List<IncomeSecurity> getSecurities() {
|
||||
return securities;
|
||||
}
|
||||
|
||||
public List<IssuerCompany> getIssuerCompanyList() {
|
||||
return issuerCompanyList;
|
||||
}
|
||||
|
||||
public void setListingsRequest(ListingsRequest listingsRequest) {
|
||||
this.listingsRequest = listingsRequest;
|
||||
}
|
||||
|
||||
public void setSecurities(List<IncomeSecurity> securities) {
|
||||
this.securities = securities;
|
||||
}
|
||||
|
||||
public void setIssuerCompanyList(List<IssuerCompany> issuerCompanyList) {
|
||||
this.issuerCompanyList = issuerCompanyList;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -21,7 +21,7 @@ import java.util.Map;
|
|||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class CheckCompanyExist extends Stage<ListingsRequestParam> {
|
||||
public class CheckCompanyExist extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
private final Imdg<Company> companyImdg;
|
||||
|
|
@ -35,7 +35,7 @@ public class CheckCompanyExist extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<IssuerCompany> companyList = param.getIssuerCompanyList();
|
||||
|
||||
for (IssuerCompany company : companyList) {
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -10,8 +10,8 @@ import ru.clearing.classes.statics.data.misc.Listing;
|
|||
import ru.spcex.clearing.gatewayapi.logic.ProcessResult;
|
||||
import ru.spcex.clearing.gatewayapi.logic.Stage;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.CouponSchedule;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.FondSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeListing;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.Nominal;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.platform.enumeration.InstrumentType;
|
||||
|
|
@ -22,7 +22,7 @@ import java.util.Collection;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
||||
public class CheckSecurityExist extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
private final Imdg<EquitySecurity> equitySecurityImdg;
|
||||
|
|
@ -40,12 +40,12 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
List<IncomeSecurity> securities = param.getSecurities();
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<FondSecurity> securities = param.getSecurities();
|
||||
|
||||
for (IncomeSecurity incomeSecurity : securities) {
|
||||
String instrumentType = incomeSecurity.getInstrumentType();
|
||||
String securitySymbol = incomeSecurity.getSecuritySymbol();
|
||||
for (FondSecurity fondSecurity : securities) {
|
||||
String instrumentType = fondSecurity.getInstrumentType();
|
||||
String securitySymbol = fondSecurity.getSecuritySymbol();
|
||||
if (InstrumentType.BOND.equalsByKey(instrumentType)) {
|
||||
Collection<FixedIncomeSecurity> fixedIncomeSecurities = fixedIncomeSecurityImdg.getCollectionObjectsByFieldValues(
|
||||
Map.of("securitySymbol", securitySymbol)
|
||||
|
|
@ -57,10 +57,10 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
securitySymbol,
|
||||
fixedIncomeSecurity.getId());
|
||||
}
|
||||
incomeSecurity.setAlreadyExist(true);
|
||||
incomeSecurity.setMapId(fixedIncomeSecurity.getId());
|
||||
fondSecurity.setAlreadyExist(true);
|
||||
fondSecurity.setMapId(fixedIncomeSecurity.getId());
|
||||
} else {
|
||||
incomeSecurity.setAlreadyExist(false);
|
||||
fondSecurity.setAlreadyExist(false);
|
||||
}
|
||||
} else if (InstrumentType.EQTY.equalsByKey(instrumentType)) {
|
||||
Collection<EquitySecurity> equitySecurities = equitySecurityImdg.getCollectionObjectsByFieldValues(
|
||||
|
|
@ -73,23 +73,23 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
securitySymbol,
|
||||
equitySecurity.getId());
|
||||
}
|
||||
incomeSecurity.setAlreadyExist(true);
|
||||
incomeSecurity.setMapId(equitySecurity.getId());
|
||||
fondSecurity.setAlreadyExist(true);
|
||||
fondSecurity.setMapId(equitySecurity.getId());
|
||||
} else {
|
||||
incomeSecurity.setAlreadyExist(false);
|
||||
fondSecurity.setAlreadyExist(false);
|
||||
}
|
||||
}
|
||||
|
||||
for (IncomeListing listing : incomeSecurity.getListingList()) {
|
||||
for (IncomeListing listing : fondSecurity.getListingList()) {
|
||||
if (listing.isInvalidData()) continue;
|
||||
|
||||
if (!incomeSecurity.isAlreadyExist()) {
|
||||
if (!fondSecurity.isAlreadyExist()) {
|
||||
listing.setAlreadyExist(false);
|
||||
continue;
|
||||
}
|
||||
Collection<Listing> listingsFromImdg = listingImdg.getCollectionObjectsByFieldValues(
|
||||
Map.of(
|
||||
"securityId", incomeSecurity.getMapId(),
|
||||
"securityId", fondSecurity.getMapId(),
|
||||
"market", listing.getCode()
|
||||
)
|
||||
);
|
||||
|
|
@ -99,7 +99,7 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
Listing listingFromImdg = listingsFromImdg.iterator().next();
|
||||
if (listingsFromImdg.size() > 1) {
|
||||
log.warn("For security_id {} and market {} found > 1 listing, update first (id = {})",
|
||||
incomeSecurity.getMapId(),
|
||||
fondSecurity.getMapId(),
|
||||
listing.getCode(),
|
||||
listingFromImdg.getId());
|
||||
|
||||
|
|
@ -109,16 +109,16 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
}
|
||||
|
||||
for (CouponSchedule couponSchedules : incomeSecurity.getCouponScheduleList()) {
|
||||
for (CouponSchedule couponSchedules : fondSecurity.getCouponScheduleList()) {
|
||||
if (couponSchedules.isInvalidData()) continue;
|
||||
|
||||
if (!incomeSecurity.isAlreadyExist()) {
|
||||
if (!fondSecurity.isAlreadyExist()) {
|
||||
couponSchedules.setAlreadyExist(false);
|
||||
continue;
|
||||
}
|
||||
Collection<CouponPeriod> couponPeriodListFromImdg = couponPeriodImdg.getCollectionObjectsByFieldValues(
|
||||
Map.of(
|
||||
"securityId", incomeSecurity.getMapId(),
|
||||
"securityId", fondSecurity.getMapId(),
|
||||
"periodStartDate", couponSchedules.getPeriodStartDate(),
|
||||
"periodEndDate", couponSchedules.getPeriodEndDate()
|
||||
)
|
||||
|
|
@ -130,7 +130,7 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
if (couponPeriodListFromImdg.size() > 1) {
|
||||
log.warn("For securityId {}, periodStartDate {}, periodEndDate {} found > 1 couponPeriod, " +
|
||||
"update first (id = {})",
|
||||
incomeSecurity.getMapId(),
|
||||
fondSecurity.getMapId(),
|
||||
couponSchedules.getPeriodStartDate(),
|
||||
couponSchedules.getPeriodEndDate(),
|
||||
couponPeriod.getId());
|
||||
|
|
@ -140,13 +140,13 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
}
|
||||
|
||||
for (Nominal nominal : incomeSecurity.getNominalList()) {
|
||||
for (Nominal nominal : fondSecurity.getNominalList()) {
|
||||
if (nominal.isInvalidData()) continue;
|
||||
|
||||
if (incomeSecurity.isAlreadyExist()) {
|
||||
if (fondSecurity.isAlreadyExist()) {
|
||||
Collection<FixedIncomeCashFlow> fixedIncomeCashFlowListFromImdg = fixedIncomeCashFlowImdg.getCollectionObjectsByFieldValues(
|
||||
Map.of(
|
||||
"securityId", incomeSecurity.getMapId(),
|
||||
"securityId", fondSecurity.getMapId(),
|
||||
"valueDate", nominal.getDate()
|
||||
)
|
||||
);
|
||||
|
|
@ -156,7 +156,7 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
FixedIncomeCashFlow fixedIncomeCashFlow = fixedIncomeCashFlowListFromImdg.iterator().next();
|
||||
if (fixedIncomeCashFlowListFromImdg.size() > 1) {
|
||||
log.warn("For securityId {}, valueDate {} found > 1 fixedIncomeCashFlow, update first (id = {})",
|
||||
incomeSecurity.getMapId(),
|
||||
fondSecurity.getMapId(),
|
||||
nominal.getDate(),
|
||||
fixedIncomeCashFlow.getId());
|
||||
}
|
||||
|
|
@ -167,7 +167,7 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
nominal.setAlreadyExist(false);
|
||||
}
|
||||
|
||||
for (CouponSchedule couponSchedule : incomeSecurity.getCouponScheduleList()) {
|
||||
for (CouponSchedule couponSchedule : fondSecurity.getCouponScheduleList()) {
|
||||
if (couponSchedule.isInvalidData()) continue;
|
||||
if (nominal.getDate().isBefore(couponSchedule.getPeriodStartDate()) || nominal.getDate().isAfter(couponSchedule.getPeriodEndDate()))
|
||||
continue;
|
||||
|
|
@ -175,7 +175,7 @@ public class CheckSecurityExist extends Stage<ListingsRequestParam> {
|
|||
nominal.setCouponNumber(couponSchedule.getCouponNumber());
|
||||
}
|
||||
if (nominal.getAccruedCoupon() == null || nominal.getCouponNumber() == null) {
|
||||
log.warn("Can't find accrued_coupon OR coupon_number for nominal, security.UUID {}", incomeSecurity.getId());
|
||||
log.warn("Can't find accrued_coupon OR coupon_number for nominal, security.UUID {}", fondSecurity.getId());
|
||||
nominal.setInvalidData(true);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import ru.spcex.clearing.gatewayapi.request.FondListingsRequest;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.FondSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IssuerCompany;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class FondListingsRequestParam {
|
||||
private FondListingsRequest fondListingsRequest;
|
||||
private List<FondSecurity> securities = new ArrayList<>();
|
||||
private List<IssuerCompany> issuerCompanyList = new ArrayList<>();
|
||||
|
||||
public FondListingsRequestParam(FondListingsRequest fondListingsRequest) {
|
||||
this.fondListingsRequest = fondListingsRequest;
|
||||
}
|
||||
|
||||
|
||||
public FondListingsRequest getRequest() {
|
||||
return fondListingsRequest;
|
||||
}
|
||||
|
||||
public List<FondSecurity> getSecurities() {
|
||||
return securities;
|
||||
}
|
||||
|
||||
public List<IssuerCompany> getIssuerCompanyList() {
|
||||
return issuerCompanyList;
|
||||
}
|
||||
|
||||
public void setListingsRequest(FondListingsRequest fondListingsRequest) {
|
||||
this.fondListingsRequest = fondListingsRequest;
|
||||
}
|
||||
|
||||
public void setSecurities(List<FondSecurity> securities) {
|
||||
this.securities = securities;
|
||||
}
|
||||
|
||||
public void setIssuerCompanyList(List<IssuerCompany> issuerCompanyList) {
|
||||
this.issuerCompanyList = issuerCompanyList;
|
||||
}
|
||||
}
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -12,12 +12,12 @@ import java.util.Map;
|
|||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PrepareIssuerCompanies extends Stage<ListingsRequestParam> {
|
||||
public class PrepareIssuerCompanies extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
List<IssuerCompany> issuerCompanyList = param.getListingsRequest().getIssuerCompanyList();
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<IssuerCompany> issuerCompanyList = param.getRequest().getIssuerCompanyList();
|
||||
|
||||
Map<UUID, IssuerCompany> issuerCompanyMap = new HashMap<>();
|
||||
for (IssuerCompany issuerCompany : issuerCompanyList) {
|
||||
|
|
@ -34,9 +34,9 @@ public class PrepareIssuerCompanies extends Stage<ListingsRequestParam> {
|
|||
|
||||
UUID issuerCompanyId = issuerCompany.getId();
|
||||
boolean securityFoundForCompany = false;
|
||||
for (IncomeSecurity incomeSecurity : param.getSecurities()) {
|
||||
if (incomeSecurity.getIssuerId().equals(issuerCompanyId)) {
|
||||
incomeSecurity.setIssuerCompany(issuerCompany);
|
||||
for (FondSecurity fondSecurity : param.getSecurities()) {
|
||||
if (fondSecurity.getIssuerId().equals(issuerCompanyId)) {
|
||||
fondSecurity.setIssuerCompany(issuerCompany);
|
||||
securityFoundForCompany = true;
|
||||
break;
|
||||
}
|
||||
|
|
@ -46,7 +46,7 @@ public class PrepareIssuerCompanies extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
}
|
||||
|
||||
List<IssuerCompanyInfo> issuerCompanyInfoList = param.getListingsRequest().getIssuerCompanyInfoList();
|
||||
List<IssuerCompanyInfo> issuerCompanyInfoList = param.getRequest().getIssuerCompanyInfoList();
|
||||
for (IssuerCompanyInfo issuerCompanyInfo : issuerCompanyInfoList) {
|
||||
UUID issuerCompanyInfoUUID = issuerCompanyInfo.getCompanyId();
|
||||
IssuerCompany issuerCompany = issuerCompanyMap.get(issuerCompanyInfoUUID);
|
||||
|
|
@ -61,7 +61,7 @@ public class PrepareIssuerCompanies extends Stage<ListingsRequestParam> {
|
|||
issuerCompany.setIssuerCompanyInfo(issuerCompanyInfo);
|
||||
}
|
||||
|
||||
List<IssuerCompanySymbols> issuerCompanySymbolsList = param.getListingsRequest().getIssuerCompanySymbolsList();
|
||||
List<IssuerCompanySymbols> issuerCompanySymbolsList = param.getRequest().getIssuerCompanySymbolsList();
|
||||
for (IssuerCompanySymbols issuerCompanySymbols : issuerCompanySymbolsList) {
|
||||
UUID issuerCompanySymbolsUUID = issuerCompanySymbols.getCompanyId();
|
||||
IssuerCompany issuerCompany = issuerCompanyMap.get(issuerCompanySymbolsUUID);
|
||||
|
|
@ -75,7 +75,7 @@ public class PrepareIssuerCompanies extends Stage<ListingsRequestParam> {
|
|||
issuerCompany.getIssuerCompanySymbolsList().add(issuerCompanySymbols);
|
||||
}
|
||||
|
||||
List<IssuerContact> issuerContactList = param.getListingsRequest().getIssuerContactList();
|
||||
List<IssuerContact> issuerContactList = param.getRequest().getIssuerContactList();
|
||||
for (IssuerContact issuerContact : issuerContactList) {
|
||||
UUID issuerContactUUID = issuerContact.getCompanyId();
|
||||
IssuerCompany issuerCompany = issuerCompanyMap.get(issuerContactUUID);
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -12,63 +12,63 @@ import java.util.Map;
|
|||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class PrepareSecurities extends Stage<ListingsRequestParam> {
|
||||
public class PrepareSecurities extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
List<IncomeSecurity> securities = param.getListingsRequest().getSecurities();
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<FondSecurity> securities = param.getRequest().getSecurities();
|
||||
|
||||
Map<UUID, IncomeSecurity> securityMap = new HashMap<>();
|
||||
for (IncomeSecurity incomeSecurity : securities) {
|
||||
if (securityMap.containsKey(incomeSecurity.getId())) {
|
||||
log.warn("For security.UUID {} found > 1 element from request, use first", incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
Map<UUID, FondSecurity> securityMap = new HashMap<>();
|
||||
for (FondSecurity fondSecurity : securities) {
|
||||
if (securityMap.containsKey(fondSecurity.getId())) {
|
||||
log.warn("For security.UUID {} found > 1 element from request, use first", fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
securityMap.put(incomeSecurity.getId(), incomeSecurity);
|
||||
securityMap.put(fondSecurity.getId(), fondSecurity);
|
||||
}
|
||||
|
||||
List<CouponSchedule> couponSchedules = param.getListingsRequest().getCouponSchedules();
|
||||
List<CouponSchedule> couponSchedules = param.getRequest().getCouponSchedules();
|
||||
for (CouponSchedule couponSchedule : couponSchedules) {
|
||||
UUID couponScheduleUUID = couponSchedule.getSecurityId();
|
||||
IncomeSecurity incomeSecurity = securityMap.get(couponScheduleUUID);
|
||||
if (incomeSecurity == null) {
|
||||
FondSecurity fondSecurity = securityMap.get(couponScheduleUUID);
|
||||
if (fondSecurity == null) {
|
||||
log.warn("For couponSchedule.securityId {} not found security, skipped", couponScheduleUUID);
|
||||
continue;
|
||||
}
|
||||
incomeSecurity.getCouponScheduleList().add(couponSchedule);
|
||||
fondSecurity.getCouponScheduleList().add(couponSchedule);
|
||||
}
|
||||
|
||||
List<Currency> currencyList = param.getListingsRequest().getCurrencies();
|
||||
List<Currency> currencyList = param.getRequest().getCurrencies();
|
||||
for (Currency currency : currencyList) {
|
||||
UUID currencyUUID = currency.getId();
|
||||
// todo сделать после выяснения
|
||||
}
|
||||
|
||||
List<IncomeListing> listingList = param.getListingsRequest().getListingList();
|
||||
List<IncomeListing> listingList = param.getRequest().getListingList();
|
||||
for (IncomeListing listing : listingList) {
|
||||
UUID listingUUID = listing.getSecurityId();
|
||||
IncomeSecurity incomeSecurity = securityMap.get(listingUUID);
|
||||
if (incomeSecurity == null) {
|
||||
FondSecurity fondSecurity = securityMap.get(listingUUID);
|
||||
if (fondSecurity == null) {
|
||||
log.warn("For listing.securityId {} not found security, skipped", listingUUID);
|
||||
continue;
|
||||
}
|
||||
incomeSecurity.getListingList().add(listing);
|
||||
fondSecurity.getListingList().add(listing);
|
||||
}
|
||||
|
||||
List<Nominal> nominalList = param.getListingsRequest().getNominalList();
|
||||
List<Nominal> nominalList = param.getRequest().getNominalList();
|
||||
for (Nominal nominal : nominalList) {
|
||||
UUID nominalUUID = nominal.getSecurityId();
|
||||
IncomeSecurity incomeSecurity = securityMap.get(nominalUUID);
|
||||
if (incomeSecurity == null) {
|
||||
FondSecurity fondSecurity = securityMap.get(nominalUUID);
|
||||
if (fondSecurity == null) {
|
||||
log.warn("For nominal.securityId {} not found security, skipped", nominalUUID);
|
||||
continue;
|
||||
}
|
||||
incomeSecurity.getNominalList().add(nominal);
|
||||
fondSecurity.getNominalList().add(nominal);
|
||||
}
|
||||
|
||||
List<IncomeSecurity> filteredIncomeSecurities = securities.stream()
|
||||
List<FondSecurity> filteredIncomeSecurities = securities.stream()
|
||||
.filter(incomeSecurity -> !incomeSecurity.isInvalidData())
|
||||
.collect(Collectors.toList());
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -20,7 +20,7 @@ import ru.spcex.platform.imdg.api.ImdgProvider;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class SendMessageToCompanyService extends Stage<ListingsRequestParam> {
|
||||
public class SendMessageToCompanyService extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
private final KafkaSender kafkaSender;
|
||||
|
|
@ -33,7 +33,7 @@ public class SendMessageToCompanyService extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<IssuerCompany> companyList = param.getIssuerCompanyList();
|
||||
for (IssuerCompany company : companyList) {
|
||||
if (company.isInvalidData()) continue;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
|
@ -7,8 +7,8 @@ import ru.clearing.classes.statics.data.instrument.issue.FixedIncomeSecurity;
|
|||
import ru.spcex.clearing.gatewayapi.logic.ProcessResult;
|
||||
import ru.spcex.clearing.gatewayapi.logic.Stage;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.CouponSchedule;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.FondSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeListing;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.Nominal;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||
|
|
@ -21,7 +21,7 @@ import ru.spcex.platform.imdg.api.ImdgProvider;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class SendMessageToSecurityService extends Stage<ListingsRequestParam> {
|
||||
public class SendMessageToSecurityService extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
private final KafkaSender kafkaSender;
|
||||
|
|
@ -36,9 +36,9 @@ public class SendMessageToSecurityService extends Stage<ListingsRequestParam> {
|
|||
}
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
List<IncomeSecurity> securityList = param.getSecurities();
|
||||
for (IncomeSecurity security : securityList) {
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<FondSecurity> securityList = param.getSecurities();
|
||||
for (FondSecurity security : securityList) {
|
||||
if (security.isInvalidData()) continue;
|
||||
if (security.getIssuerCompany() == null || security.getIssuerCompany().getMapId() == null) {
|
||||
log.warn("Can't insert security.UUID {}, company not found for parameter issuerId", security.getId());
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
|
|
@ -6,8 +6,8 @@ import org.slf4j.LoggerFactory;
|
|||
import ru.spcex.clearing.gatewayapi.logic.ProcessResult;
|
||||
import ru.spcex.clearing.gatewayapi.logic.Stage;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.CouponSchedule;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.FondSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeListing;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.IncomeSecurity;
|
||||
import ru.spcex.clearing.gatewayapi.request.objects.Nominal;
|
||||
import ru.spcex.platform.enumeration.BondType;
|
||||
import ru.spcex.platform.enumeration.InstrumentType;
|
||||
|
|
@ -18,102 +18,102 @@ import ru.spcex.platform.utils.enumeration.IEnumKey;
|
|||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class ValidateIncomeSecurities extends Stage<ListingsRequestParam> {
|
||||
public class ValidateIncomeSecurities extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
List<IncomeSecurity> securities = param.getSecurities();
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<FondSecurity> securities = param.getSecurities();
|
||||
|
||||
for (IncomeSecurity incomeSecurity : securities) {
|
||||
if (incomeSecurity.isInvalidData()) continue;
|
||||
for (FondSecurity fondSecurity : securities) {
|
||||
if (fondSecurity.isInvalidData()) continue;
|
||||
|
||||
if (incomeSecurity.getIssuerCompany() == null) {
|
||||
log.warn("For security.UUID {} not found company, skipped", incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
if (fondSecurity.getIssuerCompany() == null) {
|
||||
log.warn("For security.UUID {} not found company, skipped", fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
String instrumentTypeStr = incomeSecurity.getInstrumentType();
|
||||
String instrumentTypeStr = fondSecurity.getInstrumentType();
|
||||
InstrumentType instrumentType = IEnumKey.getEnumByKey(InstrumentType.class, instrumentTypeStr);
|
||||
if (instrumentType != InstrumentType.BOND && instrumentType != InstrumentType.EQTY) {
|
||||
log.warn("Invalid instrumentType {} for security.UUID {}, skipped", instrumentTypeStr, incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
log.warn("Invalid instrumentType {} for security.UUID {}, skipped", instrumentTypeStr, fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
String workflowStatusStr = incomeSecurity.getWorkflowStatus();
|
||||
String workflowStatusStr = fondSecurity.getWorkflowStatus();
|
||||
WorkflowStatus workflowStatus = IEnumKey.getEnumByKey(WorkflowStatus.class, workflowStatusStr);
|
||||
if (workflowStatus == null) {
|
||||
log.warn("Invalid workflowStatus {} for security.UUID {}, skipped", workflowStatusStr, incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
log.warn("Invalid workflowStatus {} for security.UUID {}, skipped", workflowStatusStr, fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
String shareTypeStr = incomeSecurity.getShareType();
|
||||
String shareTypeStr = fondSecurity.getShareType();
|
||||
ShareType shareType = IEnumKey.getEnumByKey(ShareType.class, shareTypeStr);
|
||||
if (instrumentType == InstrumentType.EQTY && shareType == null) {
|
||||
log.warn("Invalid shareType {} for security.UUID {}, skipped", shareTypeStr, incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
log.warn("Invalid shareType {} for security.UUID {}, skipped", shareTypeStr, fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
String bondTypeStr = incomeSecurity.getBondType();
|
||||
String bondTypeStr = fondSecurity.getBondType();
|
||||
BondType bondType = IEnumKey.getEnumByKey(BondType.class, bondTypeStr);
|
||||
if (bondType == null) {
|
||||
log.warn("Invalid bondType {} for security.UUID {}, skipped", bondTypeStr, incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
log.warn("Invalid bondType {} for security.UUID {}, skipped", bondTypeStr, fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (StringUtils.isEmpty(incomeSecurity.getSecuritySymbol())) {
|
||||
log.warn("Empty or null securitySymbol for security.UUID {}, skipped", incomeSecurity.getId());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
if (StringUtils.isEmpty(fondSecurity.getSecuritySymbol())) {
|
||||
log.warn("Empty or null securitySymbol for security.UUID {}, skipped", fondSecurity.getId());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (StringUtils.isEmpty(incomeSecurity.getShortName())) {
|
||||
log.warn("Empty or null shortName for security.UUID {}, skipped", incomeSecurity.getShortName());
|
||||
incomeSecurity.setInvalidData(true);
|
||||
if (StringUtils.isEmpty(fondSecurity.getShortName())) {
|
||||
log.warn("Empty or null shortName for security.UUID {}, skipped", fondSecurity.getShortName());
|
||||
fondSecurity.setInvalidData(true);
|
||||
continue;
|
||||
}
|
||||
|
||||
List<IncomeListing> listingList = incomeSecurity.getListingList();
|
||||
List<IncomeListing> listingList = fondSecurity.getListingList();
|
||||
|
||||
for (IncomeListing listing : listingList) {
|
||||
|
||||
if (StringUtils.isEmpty(listing.getCode())) {
|
||||
log.warn("Empty or null code (market) for listing from security.UUID {}", incomeSecurity.getId());
|
||||
log.warn("Empty or null code (market) for listing from security.UUID {}", fondSecurity.getId());
|
||||
listing.setInvalidData(true);
|
||||
}
|
||||
|
||||
if (listing.getLotSize() == null) {
|
||||
log.warn("lotSize is null for listing from security.UUID {}", incomeSecurity.getId());
|
||||
log.warn("lotSize is null for listing from security.UUID {}", fondSecurity.getId());
|
||||
listing.setInvalidData(true);
|
||||
}
|
||||
|
||||
if (StringUtils.isEmpty(listing.getTradingCurrency())) {
|
||||
log.warn("Empty or null tradingCurrency for listing from security.UUID {}", incomeSecurity.getId());
|
||||
log.warn("Empty or null tradingCurrency for listing from security.UUID {}", fondSecurity.getId());
|
||||
listing.setInvalidData(true);
|
||||
}
|
||||
|
||||
workflowStatusStr = listing.getWorkflowStatus();
|
||||
workflowStatus = IEnumKey.getEnumByKey(WorkflowStatus.class, workflowStatusStr);
|
||||
if (workflowStatus == null) {
|
||||
log.warn("Invalid workflowStatus {} for listing from security.UUID {}", workflowStatusStr, incomeSecurity.getId());
|
||||
log.warn("Invalid workflowStatus {} for listing from security.UUID {}", workflowStatusStr, fondSecurity.getId());
|
||||
listing.setInvalidData(true);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
incomeSecurity.setListingList(
|
||||
fondSecurity.setListingList(
|
||||
listingList.stream()
|
||||
.filter(incomeListing -> !incomeListing.isInvalidData())
|
||||
.collect(Collectors.toList())
|
||||
);
|
||||
|
||||
|
||||
for (CouponSchedule couponSchedule : incomeSecurity.getCouponScheduleList()) {
|
||||
for (CouponSchedule couponSchedule : fondSecurity.getCouponScheduleList()) {
|
||||
if (
|
||||
couponSchedule.getPeriodStartDate() == null ||
|
||||
couponSchedule.getPeriodEndDate() == null ||
|
||||
|
|
@ -122,41 +122,41 @@ public class ValidateIncomeSecurities extends Stage<ListingsRequestParam> {
|
|||
log.warn("Invalid periodStartDate {} or periodEndDate {} for couponSchedule, security.UUID {}, skipped",
|
||||
couponSchedule.getPeriodStartDate(),
|
||||
couponSchedule.getPeriodEndDate(),
|
||||
incomeSecurity.getId());
|
||||
fondSecurity.getId());
|
||||
couponSchedule.setInvalidData(true);
|
||||
}
|
||||
|
||||
if (couponSchedule.getCouponNumber() == null) {
|
||||
log.warn("couponNumber is null for couponSchedule, security.UUID {}, skipped", incomeSecurity.getId());
|
||||
log.warn("couponNumber is null for couponSchedule, security.UUID {}, skipped", fondSecurity.getId());
|
||||
couponSchedule.setInvalidData(true);
|
||||
}
|
||||
|
||||
if (couponSchedule.getCouponRate() == null) {
|
||||
log.warn("couponRate is null for couponSchedule, security.UUID {}, skipped", incomeSecurity.getId());
|
||||
log.warn("couponRate is null for couponSchedule, security.UUID {}, skipped", fondSecurity.getId());
|
||||
couponSchedule.setInvalidData(true);
|
||||
}
|
||||
|
||||
if (couponSchedule.getAccruedCoupon() == null) {
|
||||
log.warn("accruedCoupon is null for couponSchedule, security.UUID {}, skipped", incomeSecurity.getId());
|
||||
log.warn("accruedCoupon is null for couponSchedule, security.UUID {}, skipped", fondSecurity.getId());
|
||||
couponSchedule.setInvalidData(true);
|
||||
}
|
||||
}
|
||||
|
||||
for (Nominal nominal : incomeSecurity.getNominalList()) {
|
||||
for (Nominal nominal : fondSecurity.getNominalList()) {
|
||||
if (nominal.getNominal() == null) {
|
||||
log.warn("nominal (value) is null for nominal, security.UUID {}, skipped", incomeSecurity.getId());
|
||||
log.warn("nominal (value) is null for nominal, security.UUID {}, skipped", fondSecurity.getId());
|
||||
nominal.setInvalidData(true);
|
||||
}
|
||||
|
||||
if (nominal.getDate() == null) {
|
||||
log.warn("date is null for nominal, security.UUID {}, skipped", incomeSecurity.getId());
|
||||
log.warn("date is null for nominal, security.UUID {}, skipped", fondSecurity.getId());
|
||||
nominal.setInvalidData(true);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
List<IncomeSecurity> filteredIncomeSecurities = securities.stream()
|
||||
List<FondSecurity> filteredIncomeSecurities = securities.stream()
|
||||
.filter(incomeSecurity -> !incomeSecurity.isInvalidData())
|
||||
.collect(Collectors.toList());
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package ru.spcex.clearing.gatewayapi.logic.listings;
|
||||
package ru.spcex.clearing.gatewayapi.logic.listings_fond;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
|
|
@ -16,7 +16,7 @@ import ru.spcex.platform.utils.enumeration.IEnumKey;
|
|||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
public class ValidateIssuerCompanies extends Stage<ListingsRequestParam> {
|
||||
public class ValidateIssuerCompanies extends Stage<FondListingsRequestParam> {
|
||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||
|
||||
private final List<CompanySymbol> validCompanySymbols = Arrays.asList(
|
||||
|
|
@ -39,7 +39,7 @@ public class ValidateIssuerCompanies extends Stage<ListingsRequestParam> {
|
|||
);
|
||||
|
||||
@Override
|
||||
public ProcessResult process(ListingsRequestParam param) {
|
||||
public ProcessResult process(FondListingsRequestParam param) {
|
||||
List<IssuerCompany> companyList = param.getIssuerCompanyList();
|
||||
|
||||
for (IssuerCompany issuerCompany : companyList) {
|
||||
|
|
@ -6,10 +6,10 @@ import ru.spcex.clearing.gatewayapi.request.objects.*;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
public class ListingsRequest extends BaseRequest {
|
||||
public class FondListingsRequest extends BaseRequest {
|
||||
@JsonProperty("security")
|
||||
@ApiModelProperty(value = "Список security")
|
||||
private List<IncomeSecurity> securities;
|
||||
private List<FondSecurity> securities;
|
||||
|
||||
@JsonProperty("coupon_schedule")
|
||||
@ApiModelProperty(value = "Список coupon_schedule")
|
||||
|
|
@ -43,11 +43,11 @@ public class ListingsRequest extends BaseRequest {
|
|||
@ApiModelProperty(value = "Список контактов компаний эмитентов")
|
||||
private List<IssuerContact> issuerContactList;
|
||||
|
||||
public List<IncomeSecurity> getSecurities() {
|
||||
public List<FondSecurity> getSecurities() {
|
||||
return securities;
|
||||
}
|
||||
|
||||
public void setSecurities(List<IncomeSecurity> securities) {
|
||||
public void setSecurities(List<FondSecurity> securities) {
|
||||
this.securities = securities;
|
||||
}
|
||||
|
||||
|
|
@ -12,7 +12,7 @@ import java.util.ArrayList;
|
|||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class IncomeSecurity extends WithMapId {
|
||||
public class FondSecurity extends WithMapId {
|
||||
@JsonProperty("id")
|
||||
@ApiModelProperty(
|
||||
value = "id (uuid)",
|
||||
Loading…
Add table
Reference in a new issue