cls29 collector8 fix

This commit is contained in:
akulikov 2023-01-11 11:49:00 +03:00
parent 4f7b529fcb
commit 2d11ca2a45

View file

@ -13,17 +13,14 @@ import ru.spcex.clearing.reports.services.ReportWithPeriodCollector;
import ru.spcex.platform.enumeration.DocumentTypes;
import ru.spcex.platform.imdg.api.Imdg;
import ru.spcex.platform.imdg.api.ImdgProvider;
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
import java.time.Instant;
import java.time.LocalDate;
import java.util.Collection;
import java.util.List;
import java.util.Map;
@Component
public class ReportBR_0420312_P8_collector extends ReportWithPeriodCollector<ReportBR_0420312_P8> {
public class ReportBR_0420312_P8_Collector extends ReportWithPeriodCollector<ReportBR_0420312_P8> {
private Imdg<Company> companyImdg;
private Imdg<CompanySymbols> companySymbolsImdg;
private Imdg<ClearingMemberCategory> clearingMemberCategoryImdg;
@ -31,7 +28,7 @@ public class ReportBR_0420312_P8_collector extends ReportWithPeriodCollector<Rep
private Imdg<CurrencyCodeDictionary> currencyCodeDictionaryImdg;
@Autowired
public ReportBR_0420312_P8_collector(ImdgProvider imdgProvider) {
public ReportBR_0420312_P8_Collector(ImdgProvider imdgProvider) {
companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
liabilitiesClaimsAssetsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, LiabilitiesClaimsAssets.class);
companySymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
@ -47,25 +44,13 @@ public class ReportBR_0420312_P8_collector extends ReportWithPeriodCollector<Rep
return companySymbol;
}
Collection<LiabilitiesClaimsAssets> searchLiabilitiesClaimsAssets(LocalDate startDate, LocalDate endDate) {
// String ql = String.format("'%s' <= refundDate and refundDate <= '%s'", formatToIMDGInstant(startDate), formatToIMDGInstant(endDate));
// Collection<LiabilitiesClaimsAssets> liabilities = liabilitiesClaimsAssetsImdg.getCollectionObjectsBySQL(ql);
ImdgPredicateBuilder pb = liabilitiesClaimsAssetsImdg.predicateBuilder();
Instant dateTimeLo = toInstantStartDay(startDate);
Instant dateTimeHi = toInstantStartDay(endDate);
ImdgPredicate p = pb.and(pb.greatEqual("refundDate", dateTimeLo), pb.lessEqual("refundDate", dateTimeHi));
Collection<LiabilitiesClaimsAssets> liabilities = liabilitiesClaimsAssetsImdg.getCollectionObjectsByPredicate(p);
return liabilities;
}
@Override
public ReportBR_0420312_P8 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) {
validateDateRange(startDate, endDate);
ReportBR_0420312_P8 reportBR_0420312P8 = new ReportBR_0420312_P8(startDate, endDate);
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(startDate, endDate);
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(liabilitiesClaimsAssetsImdg, startDate, endDate);
Map<Long, List<LiabilitiesClaimsAssets>> indexByCompany = MapUtil.indexList(liabilities, LiabilitiesClaimsAssets::getCompanyId);
for (Map.Entry<Long, List<LiabilitiesClaimsAssets>> companyEntry : indexByCompany.entrySet()) {
@ -92,11 +77,11 @@ public class ReportBR_0420312_P8_collector extends ReportWithPeriodCollector<Rep
ReportBR_0420312_P8.Info_0420312_P8 info_0420312_p8 = new ReportBR_0420312_P8.Info_0420312_P8(
toString(currencyId),
toString(companyId),
company.getFullName(),
companySymbolINN == null ? null : companySymbolINN.getCompanySymbolValue(),
companySymbolOGRN == null ? null : companySymbolOGRN.getCompanySymbolValue(),
company.getProfile().getCountryCode(),
clearingMemberCategory
toString(company.getFullName()),
companySymbolINN == null ? null : toString(companySymbolINN.getCompanySymbolValue()),
companySymbolOGRN == null ? null : toString(companySymbolOGRN.getCompanySymbolValue()),
toString(company.getProfile().getCountryCode()),
toString(clearingMemberCategory)
);
reportBR_0420312P8.getRows().add(info_0420312_p8);
}