cls29 collector6/7 fix
This commit is contained in:
parent
e9fbf59a09
commit
4f7b529fcb
3 changed files with 56 additions and 85 deletions
|
|
@ -2,6 +2,7 @@ package ru.spcex.clearing.reports.reports.bt_17_5;
|
|||
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import ru.spcex.clearing.reports.reports.Destination;
|
||||
import ru.spcex.clearing.reports.reports.ReportId;
|
||||
import ru.spcex.clearing.reports.reports.ReportWithPeriod;
|
||||
|
||||
|
|
@ -20,15 +21,14 @@ public class ReportBR_0420312_P7 extends ReportWithPeriod {
|
|||
private final List<Info_0420312_P7> rows = new ArrayList<>();
|
||||
|
||||
public ReportBR_0420312_P7(LocalDate startDate,
|
||||
LocalDate endDate,
|
||||
String destination) {
|
||||
LocalDate endDate) {
|
||||
super(ReportId.BR_0420312_P7,
|
||||
"0.0.5",
|
||||
"0420312",
|
||||
"Сведения о клиринговом обеспечении, часть 7",
|
||||
startDate,
|
||||
endDate);
|
||||
this.destination = destination;
|
||||
this.destination = Destination.BR.getKey();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -8,41 +8,26 @@ import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P6;
|
|||
import ru.spcex.clearing.reports.services.ReportWithPeriodCollector;
|
||||
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.Collection;
|
||||
import java.util.Objects;
|
||||
|
||||
@Component
|
||||
public class ReportBR_0420312_P6_collector extends ReportWithPeriodCollector<ReportBR_0420312_P6> {
|
||||
public class ReportBR_0420312_P6_Collector extends ReportWithPeriodCollector<ReportBR_0420312_P6> {
|
||||
private Imdg<LiabilitiesClaimsAssets> liabilitiesClaimsAssetsImdg;
|
||||
|
||||
@Autowired
|
||||
public ReportBR_0420312_P6_collector(ImdgProvider imdgProvider) {
|
||||
public ReportBR_0420312_P6_Collector(ImdgProvider imdgProvider) {
|
||||
liabilitiesClaimsAssetsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, LiabilitiesClaimsAssets.class);
|
||||
}
|
||||
|
||||
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_P6 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) {
|
||||
validateDateRange(startDate, endDate);
|
||||
|
||||
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(startDate, endDate);
|
||||
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(liabilitiesClaimsAssetsImdg, startDate, endDate);
|
||||
|
||||
BigDecimal liabilitiesQuantitySum = liabilities.stream()
|
||||
.map(LiabilitiesClaimsAssets::getLiabilitiesQuantity)
|
||||
|
|
@ -50,7 +35,8 @@ public class ReportBR_0420312_P6_collector extends ReportWithPeriodCollector<Rep
|
|||
.reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
|
||||
|
||||
ReportBR_0420312_P6 reportBR_0420312P5 = new ReportBR_0420312_P6(startDate, endDate);
|
||||
reportBR_0420312P5.getRows().add(new ReportBR_0420312_P6.Info_0420312_P6(toString(liabilitiesQuantitySum)));
|
||||
ReportBR_0420312_P6.Info_0420312_P6 reportInfo = new ReportBR_0420312_P6.Info_0420312_P6(toString(liabilitiesQuantitySum));
|
||||
reportBR_0420312P5.getRows().add(reportInfo);
|
||||
|
||||
return reportBR_0420312P5;
|
||||
}
|
||||
|
|
@ -1,63 +1,48 @@
|
|||
package ru.spcex.clearing.reports.services.collector;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P7;
|
||||
import ru.spcex.clearing.reports.services.ReportWithPeriodCollector;
|
||||
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.Collection;
|
||||
import java.util.Objects;
|
||||
|
||||
@Component
|
||||
public class ReportBR_0420312_P7_collector extends ReportWithPeriodCollector<ReportBR_0420312_P7> {
|
||||
private Imdg<LiabilitiesClaimsAssets> liabilitiesClaimsAssetsImdg;
|
||||
|
||||
@Autowired
|
||||
public ReportBR_0420312_P7_collector(ImdgProvider imdgProvider) {
|
||||
liabilitiesClaimsAssetsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, LiabilitiesClaimsAssets.class);
|
||||
}
|
||||
|
||||
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_P7 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) {
|
||||
validateDateRange(startDate, endDate);
|
||||
|
||||
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(startDate, endDate);
|
||||
|
||||
BigDecimal liabilitiesQuantitySum = liabilities.stream()
|
||||
.map(LiabilitiesClaimsAssets::getLiabilitiesQuantity)
|
||||
.filter(Objects::nonNull)
|
||||
.reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
|
||||
|
||||
ReportBR_0420312_P7 reportBR_0420312P5 = new ReportBR_0420312_P7(startDate, endDate,
|
||||
"BR");
|
||||
reportBR_0420312P5.getRows().add(new ReportBR_0420312_P7.Info_0420312_P7(toString(liabilitiesQuantitySum)));
|
||||
|
||||
return reportBR_0420312P5;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<ReportBR_0420312_P7> getReportClass() {
|
||||
return ReportBR_0420312_P7.class;
|
||||
}
|
||||
}
|
||||
package ru.spcex.clearing.reports.services.collector;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets;
|
||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||
import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P7;
|
||||
import ru.spcex.clearing.reports.services.ReportWithPeriodCollector;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.util.Collection;
|
||||
import java.util.Objects;
|
||||
|
||||
@Component
|
||||
public class ReportBR_0420312_P7_Collector extends ReportWithPeriodCollector<ReportBR_0420312_P7> {
|
||||
private Imdg<LiabilitiesClaimsAssets> liabilitiesClaimsAssetsImdg;
|
||||
|
||||
@Autowired
|
||||
public ReportBR_0420312_P7_Collector(ImdgProvider imdgProvider) {
|
||||
liabilitiesClaimsAssetsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_LiabilitiesClaimsAssets, LiabilitiesClaimsAssets.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBR_0420312_P7 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) {
|
||||
validateDateRange(startDate, endDate);
|
||||
|
||||
Collection<LiabilitiesClaimsAssets> liabilities = searchLiabilitiesClaimsAssets(liabilitiesClaimsAssetsImdg, startDate, endDate);
|
||||
|
||||
BigDecimal liabilitiesQuantitySum = liabilities.stream()
|
||||
.map(LiabilitiesClaimsAssets::getLiabilitiesQuantity)
|
||||
.filter(Objects::nonNull)
|
||||
.reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
|
||||
|
||||
ReportBR_0420312_P7 reportBR_0420312P5 = new ReportBR_0420312_P7(startDate, endDate);
|
||||
ReportBR_0420312_P7.Info_0420312_P7 reportInfo = new ReportBR_0420312_P7.Info_0420312_P7(toString(liabilitiesQuantitySum));
|
||||
reportBR_0420312P5.getRows().add(reportInfo);
|
||||
|
||||
return reportBR_0420312P5;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<ReportBR_0420312_P7> getReportClass() {
|
||||
return ReportBR_0420312_P7.class;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue