From 3a6fb8e5b20d91e7e3bb1bf7dc7dbba3c307d654 Mon Sep 17 00:00:00 2001 From: akulikov Date: Wed, 11 Jan 2023 12:06:57 +0300 Subject: [PATCH] cls27 collector --- .../collector/ReportBR_0420318_Collector.java | 47 +++++++------------ 1 file changed, 18 insertions(+), 29 deletions(-) diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420318_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420318_Collector.java index 0b7cdcb3b..58f853637 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420318_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420318_Collector.java @@ -1,6 +1,7 @@ package ru.spcex.clearing.reports.services.collector; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; import ru.clearing.classes.statics.data.company.Company; import ru.clearing.classes.statics.data.company.CompanySymbols; import ru.clearing.classes.statics.data.generated.ClearingMemberCategory; @@ -13,15 +14,17 @@ import ru.spcex.platform.enumeration.ClearingCategory; 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.math.BigDecimal; import java.time.Instant; import java.time.LocalDate; -import java.util.*; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.Objects; import java.util.stream.Collectors; +@Component public class ReportBR_0420318_Collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @@ -48,35 +51,21 @@ public class ReportBR_0420318_Collector extends ReportWithPeriodCollector searchLiabilitiesClaimsAssets(LocalDate startDate, LocalDate endDate) { -// String ql = String.format("'%s' <= refundDate and refundDate <= '%s'", formatToIMDGInstant(startDate), formatToIMDGInstant(endDate)); -// Collection 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 liabilities = liabilitiesClaimsAssetsImdg.getCollectionObjectsByPredicate(p); - return liabilities; - } - @Override public ReportBR_0420318 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) { validateDateRange(startDate, endDate); - Collection allLiabilities = searchLiabilitiesClaimsAssets(startDate, endDate); + Collection allLiabilities = searchLiabilitiesClaimsAssets(liabilitiesClaimsAssetsImdg, startDate, endDate); ReportBR_0420318 reportBR_0420318 = new ReportBR_0420318(startDate, endDate); Map> indexByCompany = MapUtil.indexList(allLiabilities, LiabilitiesClaimsAssets::getCompanyId); - for (Map.Entry> liabilitysByCompanyE : indexByCompany.entrySet()) { - final Long companyId = liabilitysByCompanyE.getKey(); - final List liabilitysByCompany = liabilitysByCompanyE.getValue(); + for (Map.Entry> liabilitiesByCompanyE : indexByCompany.entrySet()) { + final Long companyId = liabilitiesByCompanyE.getKey(); + final List liabilitiesByCompany = liabilitiesByCompanyE.getValue(); Company company = companyImdg.getSingleObjectByID(companyId); CompanySymbols companySymbolINN = findSymbol(DocumentTypes.inn, company.getId()); - CompanySymbols companySymbolOGRN = findSymbol(DocumentTypes.ogrn, company.getId()); Instant liabilitiesClaimsAssets_settlementDate = null; Collection cmcLst = clearingMemberCategoryImdg.getCollectionObjectsByFieldValues(Map.of("companyId", companyId)); @@ -84,7 +73,7 @@ public class ReportBR_0420318_Collector extends ReportWithPeriodCollector ClearingCategory.B.equalsByKey(cmc.getClearingMemberCategory())); boolean checkCategoryIV = cmcLst.stream().anyMatch(cmc -> ClearingCategory.I.equalsByKey(cmc.getClearingMemberCategory()) || ClearingCategory.V.equalsByKey(cmc.getClearingMemberCategory())); - Map> indexByCurrency = MapUtil.indexList(liabilitysByCompany, LiabilitiesClaimsAssets::getCurrency); + Map> indexByCurrency = MapUtil.indexList(liabilitiesByCompany, LiabilitiesClaimsAssets::getCurrency); for (Map.Entry> entryCurrency: indexByCurrency.entrySet()) { final String currencyCode = entryCurrency.getKey(); @@ -120,16 +109,16 @@ public class ReportBR_0420318_Collector extends ReportWithPeriodCollector