From d3c9bf25764fd6ece4d21920553e7ca9fba3333c Mon Sep 17 00:00:00 2001 From: akulikov Date: Tue, 10 Jan 2023 15:48:36 +0300 Subject: [PATCH] . --- .../reports/reports/bt_13/ReportDOCIN.java | 75 +++++++ .../reports/reports/bt_13/Report_BT13_11.java | 101 ---------- ...ctor.java => AbstractReportCollector.java} | 188 +++++++++--------- .../reports/services/QCommandExecutor.java | 2 +- .../services/ReportWithPeriodCollector.java | 16 ++ .../reports/services/ReportsService.java | 164 +++++++-------- .../services/ReportsServiceCommand.java | 16 +- .../Repbr0420314_P1_bt_17_4_collector.java | 4 +- .../Repbr0420314_P2_bt_17_4_collector.java | 4 +- .../ReportBR_0420312_P10_collector.java | 5 +- .../ReportBR_0420312_P1_collector.java | 4 +- .../ReportBR_0420312_P2_collector.java | 5 +- .../ReportBR_0420312_P3_collector.java | 5 +- .../ReportBR_0420312_P4_collector.java | 4 +- .../ReportBR_0420312_P5_collector.java | 5 +- .../ReportBR_0420312_P6_collector.java | 5 +- .../ReportBR_0420312_P7_collector.java | 5 +- .../ReportBR_0420312_P8_collector.java | 5 +- .../ReportBR_0420312_P9_collector.java | 8 +- .../collector/ReportBR_0420315_Collector.java | 5 +- .../ReportBR_0420315_P2_collector.java | 7 +- .../collector/ReportBR_0420317_collector.java | 7 +- .../collector/ReportBR_0420318_Collector.java | 4 +- .../collector/ReportINACCNT_Collector.java | 4 +- .../collector/ReportPA_BT2_B_Collector.java | 12 +- .../collector/ReportPA_BT2_IV_Collector.java | 5 +- .../services/ReportDataCollectorTest.java | 5 +- 27 files changed, 319 insertions(+), 351 deletions(-) create mode 100644 clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/ReportDOCIN.java delete mode 100644 clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/Report_BT13_11.java rename clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/{ReportDataCollector.java => AbstractReportCollector.java} (83%) create mode 100644 clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/ReportDOCIN.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/ReportDOCIN.java new file mode 100644 index 000000000..bc0a9363d --- /dev/null +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/ReportDOCIN.java @@ -0,0 +1,75 @@ +package ru.spcex.clearing.reports.reports.bt_13; + +import com.thoughtworks.xstream.annotations.XStreamAlias; +import com.thoughtworks.xstream.annotations.XStreamAsAttribute; +import com.thoughtworks.xstream.annotations.XStreamConverter; +import ru.spcex.clearing.reports.reports.AbstractReport; +import ru.spcex.clearing.reports.reports.ReportId; +import ru.spcex.clearing.reports.xml_test.FormattedLocalDateConverter; +import ru.spcex.clearing.reports.xml_test.FormattedLocalTimeConverter; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.util.ArrayList; +import java.util.List; + +@XStreamAlias("incomingDocuments") +public class ReportDOCIN extends AbstractReport { + /** + * Дата в формате: dd.MM.yyyy + */ + @XStreamAsAttribute + @XStreamAlias("date") + @XStreamConverter(value = FormattedLocalDateConverter.class, strings = {"dd.MM.yyyy"}) + private final LocalDate date; + + /** + * Время в формате: hh:mm:ss + */ + @XStreamAsAttribute + @XStreamAlias("time") + @XStreamConverter(value = FormattedLocalTimeConverter.class, strings = {"HH:mm:ss"}) + private final LocalTime time; + + @XStreamAlias("rows") + private List rows = new ArrayList<>(); + + public ReportDOCIN(LocalDate date, + LocalTime time) { + super(ReportId.BT13_11, + "0.0.1", + "BT 13.11", + "Журнал Входящих документов"); + this.date = date; + this.time = time; + } + + public List getRows() { + return rows; + } + + @Override + public String getReportName(LocalDateTime reportDateTime) { + return "DOCIN.%s".formatted( + DATE_TIME_FORMATTER.format(reportDateTime) + ); + } + + @XStreamAlias("row") + public record Info_DOCIN( + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationDate") String inDocumentJournalRegistrationDate, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationTime") String inDocumentJournalRegistrationTime, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationNumber") String inDocumentJournalRegistrationNumber, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_documentName") String inDocumentJournalDocumentName, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_sender") String inDocumentJournalSender, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_quantity") String inDocumentJournalQuantity, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_clearingCode") String inDocumentJournalClearingCode, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_courierType") String inDocumentJournalCourierType, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_emailDate") String inDocumentJournal_emailDate, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_Amount") String inDocumentJournalAmount, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_dossierNumber") String inDocumentJournalDossierNumber, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_Comment") String inDocumentJournalComment, + @XStreamAsAttribute @XStreamAlias("inDocumentJournal_receiptDate") String inDocumentJournalReceiptDate) { + } +} diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/Report_BT13_11.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/Report_BT13_11.java deleted file mode 100644 index c2e631be7..000000000 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/bt_13/Report_BT13_11.java +++ /dev/null @@ -1,101 +0,0 @@ -package ru.spcex.clearing.reports.reports.bt_13; - -import com.thoughtworks.xstream.annotations.XStreamAlias; -import com.thoughtworks.xstream.annotations.XStreamAsAttribute; -import ru.spcex.clearing.reports.reports.AbstractReport; -import ru.spcex.clearing.reports.reports.ReportId; - -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; - -@XStreamAlias("incomingDocuments") -public class Report_BT13_11 extends AbstractReport { - @XStreamAsAttribute - @XStreamAlias("date") - private LocalDate date; - - @XStreamAsAttribute - @XStreamAlias("time") - private LocalTime time; - - @XStreamAlias("inDocumentJournal_registrationDate") - private String inDocumentJournalRegistrationDate; - - @XStreamAlias("inDocumentJournal_registrationTime") - private String inDocumentJournalRegistrationTime; - - @XStreamAlias("inDocumentJournal_registrationNumber") - private String inDocumentJournalRegistrationNumber; - - @XStreamAlias("inDocumentJournal_documentName") - private String inDocumentJournalDocumentName; - - @XStreamAlias("inDocumentJournal_sender") - private String inDocumentJournalSender; - - @XStreamAlias("inDocumentJournal_quantity") - private String inDocumentJournalQuantity; - - @XStreamAlias("inDocumentJournal_clearingCode") - private String inDocumentJournalClearingCode; - - @XStreamAlias("inDocumentJournal_courierType") - private String inDocumentJournalCourierType; - - @XStreamAlias("inDocumentJournal_emailDate") - private String inDocumentJournal_emailDate; - - @XStreamAlias("inDocumentJournal_Amount") - private String inDocumentJournalAmount; - - @XStreamAlias("inDocumentJournal_dossierNumber") - private String inDocumentJournalDossierNumber; - - @XStreamAlias("inDocumentJournal_Comment") - private String inDocumentJournalComment; - - @XStreamAlias("inDocumentJournal_receiptDate") - private String inDocumentJournalReceiptDate; - - - public Report_BT13_11(LocalDate date, - LocalTime time, - String inDocumentJournalRegistrationDate, - String inDocumentJournalRegistrationTime, - String inDocumentJournalRegistrationNumber, - String inDocumentJournalDocumentName, - String inDocumentJournalSender, - String inDocumentJournalQuantity, - String inDocumentJournalClearingCode, - String inDocumentJournalCourierType, - String inDocumentJournal_emailDate, - String inDocumentJournalAmount, - String inDocumentJournalDossierNumber, - String inDocumentJournalComment, - String inDocumentJournalReceiptDate) { - super(ReportId.BT13_11, "0.0.1", "BT 13.11", "Журнал Входящих документов"); - this.date = date; - this.time = time; - this.inDocumentJournalRegistrationDate = inDocumentJournalRegistrationDate; - this.inDocumentJournalRegistrationTime = inDocumentJournalRegistrationTime; - this.inDocumentJournalRegistrationNumber = inDocumentJournalRegistrationNumber; - this.inDocumentJournalDocumentName = inDocumentJournalDocumentName; - this.inDocumentJournalSender = inDocumentJournalSender; - this.inDocumentJournalQuantity = inDocumentJournalQuantity; - this.inDocumentJournalClearingCode = inDocumentJournalClearingCode; - this.inDocumentJournalCourierType = inDocumentJournalCourierType; - this.inDocumentJournal_emailDate = inDocumentJournal_emailDate; - this.inDocumentJournalAmount = inDocumentJournalAmount; - this.inDocumentJournalDossierNumber = inDocumentJournalDossierNumber; - this.inDocumentJournalComment = inDocumentJournalComment; - this.inDocumentJournalReceiptDate = inDocumentJournalReceiptDate; - } - - @Override - public String getReportName(LocalDateTime reportDateTime) { - return "DOCIN.%s".formatted( - DATE_TIME_FORMATTER.format(reportDateTime) - ); - } -} diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportDataCollector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/AbstractReportCollector.java similarity index 83% rename from clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportDataCollector.java rename to clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/AbstractReportCollector.java index 1a7418ae0..170be172f 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportDataCollector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/AbstractReportCollector.java @@ -1,99 +1,89 @@ -package ru.spcex.clearing.reports.services; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import ru.spcex.clearing.reports.reports.AbstractReport; -import ru.spcex.clearing.reports.reports.ReportId; -import ru.spcex.platform.utils.time.TimeUtil; - -import java.lang.reflect.Constructor; -import java.lang.reflect.InvocationTargetException; -import java.math.BigDecimal; -import java.math.RoundingMode; -import java.time.Instant; -import java.time.LocalDate; -import java.time.ZoneId; -import java.time.format.DateTimeFormatter; -import java.util.Locale; - -public abstract class ReportDataCollector { - public static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("dd.MM.yyyy"); - public static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern("dd.MM.yyyy'T'HH:mm:ss"); - - protected final Logger log = LoggerFactory.getLogger(getClass()); - - - /** - * T extends ReportWithPeriod - * - * @return - */ - abstract public T collectReportWithPeriod(LocalDate startDate, LocalDate endDate); - - abstract public Class getReportClass(); - - public ReportId getReportId() { - Class theClass = getReportClass(); - Constructor[] constructors = theClass.getConstructors(); // getConstructors - public, getDeclaredConstructors - all - Constructor useConstructor = null; - for (int i = 0; i < constructors.length; i++) { - if (useConstructor == null || useConstructor.getParameterCount() > constructors[i].getParameterCount()) { - useConstructor = constructors[i]; - } - } - Object[] cArg = new Object[useConstructor.getParameterCount()]; // all null - try { - T object = useConstructor.newInstance(cArg); - ReportId theId = object.getReportId(); - return theId; - } catch (InstantiationException | IllegalAccessException | InvocationTargetException e) { - throw new RuntimeException("Can not found ReportId from class " + theClass.getName(), e); - } - } - - protected void validateDateRange(LocalDate startDate, LocalDate endDate) throws IllegalArgumentException { - if (startDate.isAfter(endDate)) { - throw new IllegalArgumentException("startDate(" + startDate + ") > endDate(" + endDate + ")"); - } - } - - protected Instant toInstantStartDay(LocalDate date) { - return date.atStartOfDay(TimeUtil.zone).toInstant(); - } - protected Instant toInstantEndDay(LocalDate date) { - return date.plusDays(1).atStartOfDay(TimeUtil.zone).minusSeconds(1).toInstant(); - } - - protected String toString(Long val) { - if (val == null) return null; - return val.toString(); - } - - - protected String toString(Double val) { - if (val == null) return null; - // точность 2 знака после запятой. - return String.format(Locale.US, "%.2f", val.doubleValue()); - } - - protected String toString(BigDecimal val) { - if (val == null) return null; - // точность 2 знака после запятой. - return val.setScale(2, RoundingMode.HALF_UP).toString(); - } - - protected String toString(Instant val) { - if (val == null) return null; - return DATE_TIME_FORMATTER.format(val.atZone(ZoneId.systemDefault())); - } - - protected String toString(LocalDate date) { - if (date == null) return null; - return DATE_FORMATTER.format(date); - } - -// protected String formatToIMDGInstant(LocalDate date) { -// LocalDateTime ldt = date.atStartOfDay(); -// return DATE_TIME_FORMATTER.format(ldt); -// } -} +package ru.spcex.clearing.reports.services; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import ru.spcex.clearing.reports.reports.AbstractReport; +import ru.spcex.clearing.reports.reports.ReportId; +import ru.spcex.platform.utils.time.TimeUtil; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.time.Instant; +import java.time.LocalDate; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.Locale; + +public abstract class AbstractReportCollector { + public static final DateTimeFormatter DATE_FORMATTER = DateTimeFormatter.ofPattern("dd.MM.yyyy"); + public static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern("dd.MM.yyyy'T'HH:mm:ss"); + protected final Logger log = LoggerFactory.getLogger(getClass()); + + abstract public Class getReportClass(); + + public ReportId getReportId() { + Class theClass = getReportClass(); + Constructor[] constructors = theClass.getConstructors(); // getConstructors - public, getDeclaredConstructors - all + Constructor useConstructor = null; + for (int i = 0; i < constructors.length; i++) { + if (useConstructor == null || useConstructor.getParameterCount() > constructors[i].getParameterCount()) { + useConstructor = constructors[i]; + } + } + Object[] cArg = new Object[useConstructor.getParameterCount()]; // all null + try { + T object = useConstructor.newInstance(cArg); + ReportId theId = object.getReportId(); + return theId; + } catch (InstantiationException | IllegalAccessException | InvocationTargetException e) { + throw new RuntimeException("Can not found ReportId from class " + theClass.getName(), e); + } + } + + protected void validateDateRange(LocalDate startDate, LocalDate endDate) throws IllegalArgumentException { + if (startDate.isAfter(endDate)) { + throw new IllegalArgumentException("startDate(" + startDate + ") > endDate(" + endDate + ")"); + } + } + + protected Instant toInstantStartDay(LocalDate date) { + return date.atStartOfDay(TimeUtil.zone).toInstant(); + } + protected Instant toInstantEndDay(LocalDate date) { + return date.plusDays(1).atStartOfDay(TimeUtil.zone).minusSeconds(1).toInstant(); + } + + protected String toString(Long val) { + if (val == null) return null; + return val.toString(); + } + + /** + * Обеспечивает точность 2 знака после запятой + */ + protected String toString(Double val) { + if (val == null) return null; + return String.format(Locale.US, "%.2f", val.doubleValue()); + } + + /** + * Обеспечивает точность 2 знака после запятой + */ + protected String toString(BigDecimal val) { + if (val == null) return null; + return val.setScale(2, RoundingMode.HALF_UP).toString(); + } + + protected String toString(Instant val) { + if (val == null) return null; + return DATE_TIME_FORMATTER.format(val.atZone(ZoneId.systemDefault())); + } + + protected String toString(LocalDate date) { + if (date == null) return null; + return DATE_FORMATTER.format(date); + } + +} diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java index 10a39748b..b045e283a 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/QCommandExecutor.java @@ -27,7 +27,7 @@ public class QCommandExecutor extends QueueConsumer implements InitializingBean ReportsServiceSettings config; public QCommandExecutor(Consumer kafkaQueue, ImdgProvider imdgProvider, - List listOfCollectors, + List listOfCollectors, ReportsServiceCommand reportsServiceCommand, ReportsServiceSettings config) { super(kafkaQueue); diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java new file mode 100644 index 000000000..8f01d09f1 --- /dev/null +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportWithPeriodCollector.java @@ -0,0 +1,16 @@ +package ru.spcex.clearing.reports.services; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import ru.spcex.clearing.reports.reports.AbstractReport; + +import java.time.LocalDate; + +public abstract class ReportWithPeriodCollector extends AbstractReportCollector { + protected final Logger log = LoggerFactory.getLogger(getClass()); + + /** + * Подготовка отчета на период startDate..endDate + */ + abstract public T collectReportWithPeriod(LocalDate startDate, LocalDate endDate); +} diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsService.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsService.java index fe5e8cf56..721231f80 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsService.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsService.java @@ -7,7 +7,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_BT2_B; import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_BT2_IV; -import ru.spcex.clearing.reports.reports.bt_13.Report_BT13_11; +import ru.spcex.clearing.reports.reports.bt_13.ReportDOCIN; import ru.spcex.clearing.reports.reports.bt_13.Report_BT13_12; import ru.spcex.clearing.reports.reports.bt_16_5.Report_BT16_5; import ru.spcex.clearing.reports.reports.bt_17_1.ReportBR_0420315_P1; @@ -47,7 +47,7 @@ public class ReportsService { xStream.processAnnotations(ReportPA_BT2_IV.class); xStream.processAnnotations(ReportPA_BT2_B.class); xStream.processAnnotations(Report_BT16_5.class); - xStream.processAnnotations(Report_BT13_11.class); + xStream.processAnnotations(ReportDOCIN.class); xStream.processAnnotations(Report_BT13_12.class); @@ -141,85 +141,85 @@ public class ReportsService { log.info("ReportBR_0420314_P2:\n{}\n", xStream.toXML(reportBR_0420314P2)); - - /* ========= БТ 17.5 ========== */ - ReportBR_0420312_P1 reportBR_0420312P1 = new ReportBR_0420312_P1(LocalDate.now(), - LocalDate.now(), - "companyClearingCode", - "BR", - "liabilitesClaimsAssetsCompanyId", - "liabilitesClaimsAssetsFullName", - "companySymbolCode", - "companySymbolValue", - "companyInfoCountryCode", - "clearingMemberCategory"); - log.info("ReportBR_0420312_P1:\n{}\n", xStream.toXML(reportBR_0420312P1)); - - ReportBR_0420312_P2 reportBR_0420312P2 = new ReportBR_0420312_P2(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesClaimsAssetsCompanyId", - "liabilitiesClaimsAssetsLiabilities"); - log.info("ReportBR_0420312_P2:\n{}\n", xStream.toXML(reportBR_0420312P2)); - - ReportBR_0420312_P3 reportBR_0420312P3 = new ReportBR_0420312_P3(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesClaimsAssetsCompanyId", - "liabilitiesClaimsAssetsLiabilities"); - log.info("ReportBR_0420312_P3:\n{}\n", xStream.toXML(reportBR_0420312P3)); - - ReportBR_0420312_P4 reportBR_0420312P4 = new ReportBR_0420312_P4(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesAmount"); - log.info("ReportBR_0420312_P4:\n{}\n", xStream.toXML(reportBR_0420312P4)); - - ReportBR_0420312_P5 reportBR_0420312P5 = new ReportBR_0420312_P5(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesAmount"); - log.info("ReportBR_0420312_P5:\n{}\n", xStream.toXML(reportBR_0420312P5)); - - ReportBR_0420312_P6 reportBR_0420312P6 = new ReportBR_0420312_P6(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesAmount"); - log.info("ReportBR_0420312_P6:\n{}\n", xStream.toXML(reportBR_0420312P6)); - - ReportBR_0420312_P7 reportBR_0420312P7 = new ReportBR_0420312_P7(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesAmount"); - log.info("ReportBR_0420312_P7:\n{}\n", xStream.toXML(reportBR_0420312P7)); - - ReportBR_0420312_P8 reportBR_0420312P8 = new ReportBR_0420312_P8(LocalDate.now(), - LocalDate.now(), - "BR", - "currencyId", - "liabilitiesClaimsAssetsCompanyId", - "liabilitiesClaimsAssetsFullName", - "companySymbolCode", - "companySymbolValue", - "companyInfoCountryCode", - "clearingMemberCategory"); - log.info("ReportBR_0420312_P8:\n{}\n", xStream.toXML(reportBR_0420312P8)); - - ReportBR_0420312_P9 reportBR_0420312P9 = new ReportBR_0420312_P9(LocalDate.now(), - LocalDate.now(), - "BR", - "currencyId", - "liabilitiesClaimsAssetsCompanyId", - "liabilitiesClaimsMoneyCurrencyCode", - "liabilitiesClaimsAssetsLiabilities"); - log.info("ReportBR_0420312_P9:\n{}\n", xStream.toXML(reportBR_0420312P9)); - - ReportBR_0420312_P10 reportBR_0420312P10 = new ReportBR_0420312_P10(LocalDate.now(), - LocalDate.now(), - "BR", - "liabilitiesAmount"); - log.info("ReportBR_0420312_P10:\n{}\n", xStream.toXML(reportBR_0420312P10)); - +// +// /* ========= БТ 17.5 ========== */ +// ReportBR_0420312_P1 reportBR_0420312P1 = new ReportBR_0420312_P1(LocalDate.now(), +// LocalDate.now(), +// "companyClearingCode", +// "BR", +// "liabilitesClaimsAssetsCompanyId", +// "liabilitesClaimsAssetsFullName", +// "companySymbolCode", +// "companySymbolValue", +// "companyInfoCountryCode", +// "clearingMemberCategory"); +// log.info("ReportBR_0420312_P1:\n{}\n", xStream.toXML(reportBR_0420312P1)); +// +// ReportBR_0420312_P2 reportBR_0420312P2 = new ReportBR_0420312_P2(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesClaimsAssetsCompanyId", +// "liabilitiesClaimsAssetsLiabilities"); +// log.info("ReportBR_0420312_P2:\n{}\n", xStream.toXML(reportBR_0420312P2)); +// +// ReportBR_0420312_P3 reportBR_0420312P3 = new ReportBR_0420312_P3(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesClaimsAssetsCompanyId", +// "liabilitiesClaimsAssetsLiabilities"); +// log.info("ReportBR_0420312_P3:\n{}\n", xStream.toXML(reportBR_0420312P3)); +// +// ReportBR_0420312_P4 reportBR_0420312P4 = new ReportBR_0420312_P4(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesAmount"); +// log.info("ReportBR_0420312_P4:\n{}\n", xStream.toXML(reportBR_0420312P4)); +// +// ReportBR_0420312_P5 reportBR_0420312P5 = new ReportBR_0420312_P5(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesAmount"); +// log.info("ReportBR_0420312_P5:\n{}\n", xStream.toXML(reportBR_0420312P5)); +// +// ReportBR_0420312_P6 reportBR_0420312P6 = new ReportBR_0420312_P6(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesAmount"); +// log.info("ReportBR_0420312_P6:\n{}\n", xStream.toXML(reportBR_0420312P6)); +// +// ReportBR_0420312_P7 reportBR_0420312P7 = new ReportBR_0420312_P7(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesAmount"); +// log.info("ReportBR_0420312_P7:\n{}\n", xStream.toXML(reportBR_0420312P7)); +// +// ReportBR_0420312_P8 reportBR_0420312P8 = new ReportBR_0420312_P8(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "currencyId", +// "liabilitiesClaimsAssetsCompanyId", +// "liabilitiesClaimsAssetsFullName", +// "companySymbolCode", +// "companySymbolValue", +// "companyInfoCountryCode", +// "clearingMemberCategory"); +// log.info("ReportBR_0420312_P8:\n{}\n", xStream.toXML(reportBR_0420312P8)); +// +// ReportBR_0420312_P9 reportBR_0420312P9 = new ReportBR_0420312_P9(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "currencyId", +// "liabilitiesClaimsAssetsCompanyId", +// "liabilitiesClaimsMoneyCurrencyCode", +// "liabilitiesClaimsAssetsLiabilities"); +// log.info("ReportBR_0420312_P9:\n{}\n", xStream.toXML(reportBR_0420312P9)); +// +// ReportBR_0420312_P10 reportBR_0420312P10 = new ReportBR_0420312_P10(LocalDate.now(), +// LocalDate.now(), +// "BR", +// "liabilitiesAmount"); +// log.info("ReportBR_0420312_P10:\n{}\n", xStream.toXML(reportBR_0420312P10)); +// /* ========= БТ 12.2 ========== */ @@ -266,7 +266,7 @@ public class ReportsService { /* ========= БТ 13 ========== */ - Report_BT13_11 report_bt13_11 = new Report_BT13_11(LocalDate.now(), + ReportDOCIN report_bt13_11 = new ReportDOCIN(LocalDate.now(), LocalTime.now(), "inDocumentJournalRegistrationDate", "inDocumentJournalRegistrationTime", diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsServiceCommand.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsServiceCommand.java index e1453e28b..45163542b 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsServiceCommand.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/ReportsServiceCommand.java @@ -30,17 +30,17 @@ public class ReportsServiceCommand implements InitializingBean { protected ReportsServiceSettings settings; protected ImdgProvider imdg; - protected List allReports; // Spring services - private final Map collectorForReportById; + protected List allReports; // Spring services + private final Map collectorForReportById; @Autowired - public ReportsServiceCommand(ImdgProvider imdg, List allReports, ReportsServiceSettings settings) { + public ReportsServiceCommand(ImdgProvider imdg, List allReports, ReportsServiceSettings settings) { this.imdg = imdg; this.settings = settings; this.allReports = allReports; // allReports = context.getBeansOfType(ReportDataCollector.class); this.collectorForReportById = new HashMap<>(); - for (ReportDataCollector collector : allReports) { + for (ReportWithPeriodCollector collector : allReports) { ReportId rId = collector.getReportId(); collectorForReportById.put(rId, collector); String idStr = rId == null ? null : rId.getKey(); @@ -57,14 +57,14 @@ public class ReportsServiceCommand implements InitializingBean { } public void generateReportAll(LocalDate startDate, LocalDate endDate) throws IOException { - for (ReportDataCollector reportDataCollector : allReports) { + for (ReportWithPeriodCollector reportDataCollector : allReports) { makeSingleReport(reportDataCollector, startDate, endDate); } } public void generateReportById(String reportIdStr, LocalDate startDate, LocalDate endDate) throws IOException { ReportId reportId = parseReportId(reportIdStr); - ReportDataCollector reportDataCollector = collectorForReportById.get(reportId); + ReportWithPeriodCollector reportDataCollector = collectorForReportById.get(reportId); if (reportDataCollector == null) throw new IllegalStateException("Collector for ReportID " + reportId + " not implemented yet"); @@ -81,7 +81,7 @@ public class ReportsServiceCommand implements InitializingBean { return id; } - protected void makeSingleReport(ReportDataCollector reportDataCollector, LocalDate startDate, LocalDate endDate) throws IOException { + protected void makeSingleReport(ReportWithPeriodCollector reportDataCollector, LocalDate startDate, LocalDate endDate) throws IOException { log.debug("Generate report by collector {} - {}", reportDataCollector.getClass().getSimpleName(), reportDataCollector.getReportClass().getSimpleName()); File outPath = new File(settings.getReportModuleOut()); XMLReportBuilder reportBuilder = new XMLReportBuilder(reportDataCollector.getReportClass(), outPath); @@ -96,7 +96,7 @@ public class ReportsServiceCommand implements InitializingBean { public void writeAllXML() throws IOException { log.info("Report types: {}", allReports); - for (ReportDataCollector collector : allReports) { + for (ReportWithPeriodCollector collector : allReports) { log.info("Make report {}", collector); LocalDate date2 = LocalDate.now(); LocalDate date1 = LocalDate.of(date2.getYear(), date2.getMonth(), 1);//date2.minusMonths(1); diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P1_bt_17_4_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P1_bt_17_4_collector.java index 6dc1e1bfd..185566225 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P1_bt_17_4_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P1_bt_17_4_collector.java @@ -9,7 +9,7 @@ import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets; import ru.clearing.platform.dictionary.ClearingStatusDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_4.ReportBR_0420314_P1; -import ru.spcex.clearing.reports.services.ReportDataCollector; +import ru.spcex.clearing.reports.services.ReportWithPeriodCollector; import ru.spcex.platform.enumeration.ClearingStatus; import ru.spcex.platform.enumeration.DocumentTypes; import ru.spcex.platform.imdg.api.Imdg; @@ -27,7 +27,7 @@ import java.util.Map; * accountTransactionLiabilities */ @Component -public class Repbr0420314_P1_bt_17_4_collector extends ReportDataCollector { +public class Repbr0420314_P1_bt_17_4_collector extends ReportWithPeriodCollector { private Imdg companyImdg; private Imdg companySymbolsImdg; private Imdg clearingMemberCategoryImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P2_bt_17_4_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P2_bt_17_4_collector.java index 9dd77e4c0..3174c59e9 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P2_bt_17_4_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/Repbr0420314_P2_bt_17_4_collector.java @@ -9,7 +9,7 @@ import ru.clearing.classes.statics.data.payment.PaymentInstruction; import ru.clearing.classes.statics.data.profile.ProfileDocument; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_4.ReportBR_0420314_P2; -import ru.spcex.clearing.reports.services.ReportDataCollector; +import ru.spcex.clearing.reports.services.ReportWithPeriodCollector; import ru.spcex.platform.enumeration.AccountType; import ru.spcex.platform.enumeration.DocumentTypes; import ru.spcex.platform.imdg.api.Imdg; @@ -28,7 +28,7 @@ import java.util.Objects; * accountTransactionLiabilities */ @Component -public class Repbr0420314_P2_bt_17_4_collector extends ReportDataCollector { +public class Repbr0420314_P2_bt_17_4_collector extends ReportWithPeriodCollector { private Imdg companyImdg; private Imdg paymentInstructionImdg; private Imdg accountBalanceImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P10_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P10_collector.java index 645704770..bfc301ef1 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P10_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P10_collector.java @@ -2,11 +2,10 @@ 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.transaction.data.execution.LiabilitiesClaimsAssets; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P10; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -19,7 +18,7 @@ import java.util.Collection; import java.util.Objects; @Component -public class ReportBR_0420312_P10_collector extends ReportDataCollector { +public class ReportBR_0420312_P10_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P1_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P1_collector.java index cb06dc5d5..b28fd4e37 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P1_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P1_collector.java @@ -8,7 +8,7 @@ import ru.clearing.classes.statics.data.generated.ClearingMemberCategory; 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_P1; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -22,7 +22,7 @@ import java.util.List; import java.util.Map; @Component -public class ReportBR_0420312_P1_collector extends ReportDataCollector { +public class ReportBR_0420312_P1_collector extends ReportWithPeriodCollector { private Imdg companyImdg; private Imdg companySymbolsImdg; private Imdg clearingMemberCategoryImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P2_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P2_collector.java index 37845961d..f489ed605 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P2_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P2_collector.java @@ -2,11 +2,10 @@ 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.transaction.data.execution.LiabilitiesClaimsAssets; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P2; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -21,7 +20,7 @@ import java.util.Map; import java.util.Objects; @Component -public class ReportBR_0420312_P2_collector extends ReportDataCollector { +public class ReportBR_0420312_P2_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P3_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P3_collector.java index 34ac0eb61..ac97655cd 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P3_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P3_collector.java @@ -2,11 +2,10 @@ 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.transaction.data.execution.LiabilitiesClaimsAssets; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P3; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -21,7 +20,7 @@ import java.util.Map; import java.util.Objects; @Component -public class ReportBR_0420312_P3_collector extends ReportDataCollector { +public class ReportBR_0420312_P3_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P4_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P4_collector.java index 6144b8cf6..539d48052 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P4_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P4_collector.java @@ -5,7 +5,7 @@ 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_P4; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -18,7 +18,7 @@ import java.util.Collection; import java.util.Objects; @Component -public class ReportBR_0420312_P4_collector extends ReportDataCollector { +public class ReportBR_0420312_P4_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P5_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P5_collector.java index 3b6b14f08..9f7f02b66 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P5_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P5_collector.java @@ -2,11 +2,10 @@ 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.transaction.data.execution.LiabilitiesClaimsAssets; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P5; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -19,7 +18,7 @@ import java.util.Collection; import java.util.Objects; @Component -public class ReportBR_0420312_P5_collector extends ReportDataCollector { +public class ReportBR_0420312_P5_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P6_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P6_collector.java index 2a41c0a8a..ae225fc96 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P6_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P6_collector.java @@ -2,11 +2,10 @@ 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.transaction.data.execution.LiabilitiesClaimsAssets; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P6; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -19,7 +18,7 @@ import java.util.Collection; import java.util.Objects; @Component -public class ReportBR_0420312_P6_collector extends ReportDataCollector { +public class ReportBR_0420312_P6_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P7_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P7_collector.java index 76f8eb659..d34012232 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P7_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P7_collector.java @@ -2,11 +2,10 @@ 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.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.ReportDataCollector; +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; @@ -19,7 +18,7 @@ import java.util.Collection; import java.util.Objects; @Component -public class ReportBR_0420312_P7_collector extends ReportDataCollector { +public class ReportBR_0420312_P7_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P8_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P8_collector.java index 9193ce097..1426dff67 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P8_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P8_collector.java @@ -9,14 +9,13 @@ import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets; import ru.clearing.platform.dictionary.CurrencyCodeDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P8; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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.math.BigDecimal; import java.time.Instant; import java.time.LocalDate; import java.util.Collection; @@ -24,7 +23,7 @@ import java.util.List; import java.util.Map; @Component -public class ReportBR_0420312_P8_collector extends ReportDataCollector { +public class ReportBR_0420312_P8_collector extends ReportWithPeriodCollector { private Imdg companyImdg; private Imdg companySymbolsImdg; private Imdg clearingMemberCategoryImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P9_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P9_collector.java index 84e09b09f..c93715a38 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P9_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420312_P9_collector.java @@ -3,15 +3,11 @@ 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; import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets; import ru.clearing.platform.dictionary.CurrencyCodeDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; -import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P1; import ru.spcex.clearing.reports.reports.bt_17_5.ReportBR_0420312_P9; -import ru.spcex.clearing.reports.services.ReportDataCollector; -import ru.spcex.platform.enumeration.DocumentTypes; +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; @@ -26,7 +22,7 @@ import java.util.Map; import java.util.Objects; @Component -public class ReportBR_0420312_P9_collector extends ReportDataCollector { +public class ReportBR_0420312_P9_collector extends ReportWithPeriodCollector { private Imdg companyImdg; private Imdg liabilitiesClaimsAssetsImdg; private Imdg currencyCodeDictionaryImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_Collector.java index eb9ca593e..e25acfdce 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_Collector.java @@ -10,7 +10,7 @@ import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets; import ru.clearing.platform.dictionary.ClearingStatusDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_1.ReportBR_0420315_P1; -import ru.spcex.clearing.reports.services.ReportDataCollector; +import ru.spcex.clearing.reports.services.ReportWithPeriodCollector; import ru.spcex.platform.enumeration.ClearingCategory; import ru.spcex.platform.enumeration.ClearingStatus; import ru.spcex.platform.enumeration.Market; @@ -18,7 +18,6 @@ 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 ru.spcex.platform.utils.time.TimeUtil; import java.math.BigDecimal; import java.time.Instant; @@ -26,7 +25,7 @@ import java.time.LocalDate; import java.util.*; @Component -public class ReportBR_0420315_Collector extends ReportDataCollector { +public class ReportBR_0420315_Collector extends ReportWithPeriodCollector { protected static final List ALLOW_CLEARING_MEMBER_CATEGORY = Arrays.asList(ClearingCategory.I.getKey(), ClearingCategory.V.getKey()); private Imdg companyImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_P2_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_P2_collector.java index bfd6f19fd..97013aa28 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_P2_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420315_P2_collector.java @@ -6,7 +6,7 @@ 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_1.ReportBR_0420315_P2; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -14,10 +14,11 @@ import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder; import java.time.Instant; import java.time.LocalDate; -import java.util.*; +import java.util.Collection; +import java.util.HashSet; @Component -public class ReportBR_0420315_P2_collector extends ReportDataCollector { +public class ReportBR_0420315_P2_collector extends ReportWithPeriodCollector { private Imdg liabilitiesClaimsAssetsImdg; @Autowired diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_collector.java index b083582ee..c0aff2dd4 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportBR_0420317_collector.java @@ -7,7 +7,7 @@ import ru.clearing.classes.statics.data.company.CompanySymbols; import ru.clearing.classes.statics.data.company.relation.Relation; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_17_2.ReportBR_0420317; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -16,10 +16,11 @@ import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder; import java.time.Instant; import java.time.LocalDate; -import java.util.*; +import java.util.Collection; +import java.util.Map; @Component -public class ReportBR_0420317_collector extends ReportDataCollector { +public class ReportBR_0420317_collector extends ReportWithPeriodCollector { private Imdg companyImdg; private Imdg relationImdg; private Imdg companySymbolsImdg; 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 f91682dd9..01d08eb1d 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,11 +1,11 @@ package ru.spcex.clearing.reports.services.collector; import ru.spcex.clearing.reports.reports.bt_17_3.ReportBR_0420318; -import ru.spcex.clearing.reports.services.ReportDataCollector; +import ru.spcex.clearing.reports.services.ReportWithPeriodCollector; import java.time.LocalDate; -public class ReportBR_0420318_Collector extends ReportDataCollector { +public class ReportBR_0420318_Collector extends ReportWithPeriodCollector { @Override public ReportBR_0420318 collectReportWithPeriod(LocalDate startDate, LocalDate endDate) { diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportINACCNT_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportINACCNT_Collector.java index daa92079c..aacdfad88 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportINACCNT_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportINACCNT_Collector.java @@ -4,7 +4,7 @@ import ru.clearing.classes.statics.data.account.AccountBalance; import ru.clearing.classes.statics.data.company.Company; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.ReportINACCNT; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -14,7 +14,7 @@ import ru.spcex.platform.imdg.iml.hazelcast.adapter.predicate.ImdgPredicateBuild import java.time.LocalDate; import java.util.Collection; -public class ReportINACCNT_Collector extends ReportDataCollector { +public class ReportINACCNT_Collector extends ReportWithPeriodCollector { private final Imdg accountBalanceImdg; private final Imdg companyImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_B_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_B_Collector.java index acd7ef124..967f88a85 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_B_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_B_Collector.java @@ -2,25 +2,25 @@ package ru.spcex.clearing.reports.services.collector; import ru.clearing.classes.statics.data.generated.ClearingMemberCategory; import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets; -import ru.clearing.platform.dictionary.ClearingStatusDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_BT2_B; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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 ru.spcex.platform.imdg.iml.hazelcast.adapter.predicate.ImdgPredicateBuilderHazelcast; -import ru.spcex.platform.imdg.iml.hazelcast.adapter.predicate.ImdgPredicateHazelcast; import java.math.BigDecimal; -import java.time.Instant; import java.time.LocalDate; import java.time.ZoneId; -import java.util.*; +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Set; import java.util.stream.Collectors; -public class ReportPA_BT2_B_Collector extends ReportDataCollector { +public class ReportPA_BT2_B_Collector extends ReportWithPeriodCollector { private final Imdg liabilitiesClaimsAssetsImdg; private final Imdg clearingMemberCategoryImdg; diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_IV_Collector.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_IV_Collector.java index 19fb88630..4e9faa35e 100644 --- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_IV_Collector.java +++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/services/collector/ReportPA_BT2_IV_Collector.java @@ -4,9 +4,8 @@ import ru.clearing.classes.statics.data.generated.ClearingMemberCategory; import ru.clearing.classes.transaction.data.execution.LiabilitiesClaimsAssets; import ru.clearing.platform.dictionary.ClearingStatusDictionary; import ru.spcex.clearing.imdg.IMDGDistributedNames; -import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_BT2_B; import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_BT2_IV; -import ru.spcex.clearing.reports.services.ReportDataCollector; +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; @@ -22,7 +21,7 @@ import java.util.List; import java.util.Set; import java.util.stream.Collectors; -public class ReportPA_BT2_IV_Collector extends ReportDataCollector { +public class ReportPA_BT2_IV_Collector extends ReportWithPeriodCollector { private final Imdg liabilitiesClaimsAssetsImdg; private final Imdg clearingStatusDictionaryImdg; private final Imdg clearingMemberCategoryImdg; diff --git a/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportDataCollectorTest.java b/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportDataCollectorTest.java index 6a2ea7a52..c675c958a 100644 --- a/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportDataCollectorTest.java +++ b/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportDataCollectorTest.java @@ -6,11 +6,10 @@ import ru.spcex.clearing.reports.reports.AbstractReport; import java.math.BigDecimal; import java.time.Instant; import java.time.LocalDate; -import java.time.LocalDateTime; -import static org.junit.jupiter.api.Assertions.*; +import static org.junit.jupiter.api.Assertions.assertEquals; -class ReportDataCollectorTest extends ReportDataCollector { +class ReportDataCollectorTest extends ReportWithPeriodCollector { @Test void testToString() {