cls29 collector1 fix
This commit is contained in:
parent
371e22eee4
commit
8e48affdc8
2 changed files with 30 additions and 29 deletions
|
|
@ -1,12 +1,29 @@
|
||||||
package ru.spcex.clearing.reports.services;
|
package ru.spcex.clearing.reports.services;
|
||||||
|
|
||||||
|
import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets;
|
||||||
import ru.spcex.clearing.reports.reports.AbstractReport;
|
import ru.spcex.clearing.reports.reports.AbstractReport;
|
||||||
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
|
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.time.LocalDate;
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
public abstract class ReportWithPeriodCollector<T extends AbstractReport> extends AbstractReportCollector<T> {
|
public abstract class ReportWithPeriodCollector<T extends AbstractReport> extends AbstractReportCollector<T> {
|
||||||
/**
|
/**
|
||||||
* Подготовка отчета на период startDate..endDate
|
* Подготовка отчета на период startDate..endDate
|
||||||
*/
|
*/
|
||||||
abstract public T collectReportWithPeriod(LocalDate startDate, LocalDate endDate);
|
abstract public T collectReportWithPeriod(LocalDate startDate, LocalDate endDate);
|
||||||
|
|
||||||
|
protected Collection<LiabilitiesClaimsAssets> searchLiabilitiesClaimsAssets(Imdg<LiabilitiesClaimsAssets> liabilitiesClaimsAssetsImdg,
|
||||||
|
LocalDate startDate,
|
||||||
|
LocalDate endDate) {
|
||||||
|
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;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,24 +12,21 @@ import ru.spcex.clearing.reports.services.ReportWithPeriodCollector;
|
||||||
import ru.spcex.platform.enumeration.DocumentTypes;
|
import ru.spcex.platform.enumeration.DocumentTypes;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
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.time.LocalDate;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
public class ReportBR_0420312_P1_collector extends ReportWithPeriodCollector<ReportBR_0420312_P1> {
|
public class ReportBR_0420312_P1_Collector extends ReportWithPeriodCollector<ReportBR_0420312_P1> {
|
||||||
private Imdg<Company> companyImdg;
|
private final Imdg<Company> companyImdg;
|
||||||
private Imdg<CompanySymbols> companySymbolsImdg;
|
private final Imdg<CompanySymbols> companySymbolsImdg;
|
||||||
private Imdg<ClearingMemberCategory> clearingMemberCategoryImdg;
|
private final Imdg<ClearingMemberCategory> clearingMemberCategoryImdg;
|
||||||
private Imdg<LiabilitiesClaimsAssets> liabilitiesClaimsAssetsImdg;
|
private final Imdg<LiabilitiesClaimsAssets> liabilitiesClaimsAssetsImdg;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public ReportBR_0420312_P1_collector(ImdgProvider imdgProvider) {
|
public ReportBR_0420312_P1_Collector(ImdgProvider imdgProvider) {
|
||||||
companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
companyImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Company, Company.class);
|
||||||
liabilitiesClaimsAssetsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, LiabilitiesClaimsAssets.class);
|
liabilitiesClaimsAssetsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, LiabilitiesClaimsAssets.class);
|
||||||
companySymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
|
companySymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
|
||||||
|
|
@ -44,25 +41,13 @@ public class ReportBR_0420312_P1_collector extends ReportWithPeriodCollector<Rep
|
||||||
return companySymbol;
|
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
|
@Override
|
||||||
public ReportBR_0420312_P1 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) {
|
public ReportBR_0420312_P1 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) {
|
||||||
validateDateRange(startDate, endDate);
|
validateDateRange(startDate, endDate);
|
||||||
|
|
||||||
ReportBR_0420312_P1 reportBR_0420312P1 = new ReportBR_0420312_P1(startDate, endDate, "BR");
|
ReportBR_0420312_P1 reportBR_0420312P1 = new ReportBR_0420312_P1(startDate, endDate, "BR");
|
||||||
|
|
||||||
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(startDate, endDate);
|
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(liabilitiesClaimsAssetsImdg, startDate, endDate);
|
||||||
Map<Long, List<LiabilitiesClaimsAssets>> indexByCompany = MapUtil.indexList(liabilities, LiabilitiesClaimsAssets::getCompanyId);
|
Map<Long, List<LiabilitiesClaimsAssets>> indexByCompany = MapUtil.indexList(liabilities, LiabilitiesClaimsAssets::getCompanyId);
|
||||||
|
|
||||||
for (Map.Entry<Long, List<LiabilitiesClaimsAssets>> companyEntry : indexByCompany.entrySet()) {
|
for (Map.Entry<Long, List<LiabilitiesClaimsAssets>> companyEntry : indexByCompany.entrySet()) {
|
||||||
|
|
@ -77,14 +62,13 @@ public class ReportBR_0420312_P1_collector extends ReportWithPeriodCollector<Rep
|
||||||
ClearingMemberCategory cmc = clearingMemberCategoryImdg.getSingleObjectByFieldValues(Map.of("companyId", companyId));
|
ClearingMemberCategory cmc = clearingMemberCategoryImdg.getSingleObjectByFieldValues(Map.of("companyId", companyId));
|
||||||
String clearingMemberCategory = cmc == null ? null : cmc.getClearingMemberCategory();
|
String clearingMemberCategory = cmc == null ? null : cmc.getClearingMemberCategory();
|
||||||
ReportBR_0420312_P1.Info_0420312_P1 info_0420312_p1 = new ReportBR_0420312_P1.Info_0420312_P1(
|
ReportBR_0420312_P1.Info_0420312_P1 info_0420312_p1 = new ReportBR_0420312_P1.Info_0420312_P1(
|
||||||
company.getClearingCode(),
|
toString(company.getClearingCode()),
|
||||||
toString(companyId),
|
toString(companyId),
|
||||||
company.getFullName(),
|
toString(company.getFullName()),
|
||||||
companySymbolINN == null ? null : companySymbolINN.getCompanySymbolValue(),
|
companySymbolINN == null ? null : toString(companySymbolINN.getCompanySymbolValue()),
|
||||||
companySymbolOGRN == null ? null : companySymbolOGRN.getCompanySymbolValue(),
|
companySymbolOGRN == null ? null : toString(companySymbolOGRN.getCompanySymbolValue()),
|
||||||
company.getProfile().getCountryCode(),
|
toString(company.getProfile().getCountryCode()),
|
||||||
clearingMemberCategory
|
toString(clearingMemberCategory));
|
||||||
);
|
|
||||||
reportBR_0420312P1.getRows().add(info_0420312_p1);
|
reportBR_0420312P1.getRows().add(info_0420312_p1);
|
||||||
}
|
}
|
||||||
|
|
||||||
Loading…
Add table
Reference in a new issue