.
This commit is contained in:
parent
90b5a8ad17
commit
953c448bed
9 changed files with 195 additions and 120 deletions
|
|
@ -9,15 +9,11 @@ import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||||
import org.springframework.boot.builder.SpringApplicationBuilder;
|
import org.springframework.boot.builder.SpringApplicationBuilder;
|
||||||
import org.springframework.context.ConfigurableApplicationContext;
|
import org.springframework.context.ConfigurableApplicationContext;
|
||||||
import ru.spcex.clearing.reports.reports.bt_12_2.ReportPA_BT2_IV;
|
import ru.spcex.clearing.reports.reports.bt_13.ReportDOCIN;
|
||||||
import ru.spcex.clearing.reports.services.ReportsServiceCommand;
|
import ru.spcex.clearing.reports.services.ReportsServiceCommand;
|
||||||
import ru.spcex.clearing.reports.services.builders.XMLReportBuilder;
|
import ru.spcex.clearing.reports.services.collector.ReportDOCIN_Collector;
|
||||||
import ru.spcex.clearing.reports.services.collector.ReportPA_BT2_B_Collector;
|
|
||||||
import ru.spcex.clearing.reports.services.collector.ReportPA_BT2_IV_Collector;
|
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
import java.time.LocalDate;
|
|
||||||
|
|
||||||
@SpringBootApplication
|
@SpringBootApplication
|
||||||
public class ReportsServiceApplication {
|
public class ReportsServiceApplication {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
|
|
@ -44,13 +40,11 @@ public class ReportsServiceApplication {
|
||||||
|
|
||||||
public static void test(ConfigurableApplicationContext context) {
|
public static void test(ConfigurableApplicationContext context) {
|
||||||
ImdgProvider imdg = context.getBean(ImdgProvider.class);
|
ImdgProvider imdg = context.getBean(ImdgProvider.class);
|
||||||
ReportPA_BT2_IV_Collector collector = new ReportPA_BT2_IV_Collector(imdg);
|
|
||||||
ReportPA_BT2_IV report = collector.collectReportWithPeriod(
|
ReportDOCIN_Collector collector = new ReportDOCIN_Collector(imdg);
|
||||||
LocalDate.of(2022, 12, 1),
|
ReportDOCIN report = collector.collectReport();
|
||||||
LocalDate.of(2023, 1, 1)
|
|
||||||
);
|
|
||||||
XStream xStream = new XStream(new XppDriver(new NoNameCoder()));
|
XStream xStream = new XStream(new XppDriver(new NoNameCoder()));
|
||||||
xStream.processAnnotations(ReportPA_BT2_IV.class);
|
xStream.processAnnotations(ReportDOCIN.class);
|
||||||
String out = xStream.toXML(report);
|
String out = xStream.toXML(report);
|
||||||
System.out.println(out);
|
System.out.println(out);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ import ru.spcex.clearing.reports.reports.ReportId;
|
||||||
import ru.spcex.clearing.reports.xml_test.FormattedLocalDateConverter;
|
import ru.spcex.clearing.reports.xml_test.FormattedLocalDateConverter;
|
||||||
import ru.spcex.clearing.reports.xml_test.FormattedLocalTimeConverter;
|
import ru.spcex.clearing.reports.xml_test.FormattedLocalTimeConverter;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
|
|
@ -58,18 +59,20 @@ public class ReportDOCIN extends AbstractReport {
|
||||||
|
|
||||||
@XStreamAlias("row")
|
@XStreamAlias("row")
|
||||||
public record Info_DOCIN(
|
public record Info_DOCIN(
|
||||||
|
@XStreamAsAttribute @XStreamAlias("id") String id,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationDate") String inDocumentJournalRegistrationDate,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationDate") String inDocumentJournalRegistrationDate,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationTime") String inDocumentJournalRegistrationTime,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationTime") String inDocumentJournalRegistrationTime,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationNumber") String inDocumentJournalRegistrationNumber,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_registrationNumber") Long inDocumentJournalRegistrationNumber,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_documentName") String inDocumentJournalDocumentName,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_documentName") String inDocumentJournalDocumentName,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_sender") String inDocumentJournalSender,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_sender") String inDocumentJournalSender,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_quantity") String inDocumentJournalQuantity,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_quantity") Long inDocumentJournalQuantity,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_clearingCode") String inDocumentJournalClearingCode,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_clearingCode") String inDocumentJournalClearingCode,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_courierType") String inDocumentJournalCourierType,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_courierType") String inDocumentJournalCourierType,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_emailDate") String inDocumentJournal_emailDate,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_emailDate") String inDocumentJournal_emailDate,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_Amount") String inDocumentJournalAmount,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_Amount") BigDecimal inDocumentJournalAmount,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_dossierNumber") String inDocumentJournalDossierNumber,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_dossierNumber") String inDocumentJournalDossierNumber,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_Comment") String inDocumentJournalComment,
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_Comment") String inDocumentJournalComment,
|
||||||
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_receiptDate") String inDocumentJournalReceiptDate) {
|
@XStreamAsAttribute @XStreamAlias("inDocumentJournal_receiptDate") String inDocumentJournalReceiptDate
|
||||||
|
) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,76 @@
|
||||||
|
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 ReportDOCOUT 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<Info_DOCOUT> rows = new ArrayList<>();
|
||||||
|
|
||||||
|
public ReportDOCOUT(LocalDate date,
|
||||||
|
LocalTime time) {
|
||||||
|
super(ReportId.BT13_12,
|
||||||
|
"0.0.1",
|
||||||
|
"BT 13.12",
|
||||||
|
"Журнал Исходящих документов");
|
||||||
|
this.date = date;
|
||||||
|
this.time = time;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Info_DOCOUT> getRows() {
|
||||||
|
return rows;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getReportName(LocalDateTime reportDateTime) {
|
||||||
|
return "DOCIN.%s".formatted(
|
||||||
|
DATE_TIME_FORMATTER.format(reportDateTime)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@XStreamAlias("row")
|
||||||
|
public record Info_DOCOUT(
|
||||||
|
@XStreamAsAttribute @XStreamAlias("id") String id,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_registrationDate") String outDocumentJournalRegistrationDate,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_registrationTime") String outDocumentJournalRegistrationTime,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_registrationNumber") String outDocumentJournalRegistrationNumber,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_documentName") String outDocumentJournalDocumentName,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_addressee") String outDocumentJournalAddressee,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_quantity") String outDocumentJournalQuantity,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_clearingCode") String outDocumentJournalClearingCode,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_courierType") String outDocumentJournalCourierType,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_emailDate") String outDocumentJournal_emailDate,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_Amount") String outDocumentJournalAmount,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_dossierNumber") String outDocumentJournalDossierNumber,
|
||||||
|
@XStreamAsAttribute @XStreamAlias("outDocumentJournal_postDate") String outDocumentJournalPostDate
|
||||||
|
) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -1,96 +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("outgoingDocuments")
|
|
||||||
public class Report_BT13_12 extends AbstractReport {
|
|
||||||
@XStreamAsAttribute
|
|
||||||
@XStreamAlias("date")
|
|
||||||
private LocalDate date;
|
|
||||||
|
|
||||||
@XStreamAsAttribute
|
|
||||||
@XStreamAlias("time")
|
|
||||||
private LocalTime time;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_registrationDate")
|
|
||||||
private String outDocumentJournalRegistrationDate;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_registrationTime")
|
|
||||||
private String outDocumentJournalRegistrationTime;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_registrationNumber")
|
|
||||||
private String outDocumentJournalRegistrationNumber;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_documentName")
|
|
||||||
private String outDocumentJournalDocumentName;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_address")
|
|
||||||
private String outDocumentJournalAddress;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_quantity")
|
|
||||||
private String outDocumentJournalQuantity;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_clearingCode")
|
|
||||||
private String outDocumentJournalClearingCode;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_courierType")
|
|
||||||
private String outDocumentJournalCourierType;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_emailDate")
|
|
||||||
private String outDocumentJournal_emailDate;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_Amount")
|
|
||||||
private String outDocumentJournalAmount;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_dossierNumber")
|
|
||||||
private String outDocumentJournalDossierNumber;
|
|
||||||
|
|
||||||
@XStreamAlias("outDocumentJournal_postDate")
|
|
||||||
private String outDocumentJournalPostDate;
|
|
||||||
|
|
||||||
|
|
||||||
public Report_BT13_12(LocalDate date,
|
|
||||||
LocalTime time,
|
|
||||||
String outDocumentJournalRegistrationDate,
|
|
||||||
String outDocumentJournalRegistrationTime,
|
|
||||||
String outDocumentJournalRegistrationNumber,
|
|
||||||
String outDocumentJournalDocumentName,
|
|
||||||
String outDocumentJournalAddress,
|
|
||||||
String outDocumentJournalQuantity,
|
|
||||||
String outDocumentJournalClearingCode,
|
|
||||||
String outDocumentJournalCourierType,
|
|
||||||
String outDocumentJournal_emailDate,
|
|
||||||
String outDocumentJournalAmount,
|
|
||||||
String outDocumentJournalDossierNumber,
|
|
||||||
String outDocumentJournalPostDate) {
|
|
||||||
super(ReportId.BT13_12, "0.0.1", "BT 13.12", "Журнал Исходящих документов");
|
|
||||||
this.date = date;
|
|
||||||
this.time = time;
|
|
||||||
this.outDocumentJournalRegistrationDate = outDocumentJournalRegistrationDate;
|
|
||||||
this.outDocumentJournalRegistrationTime = outDocumentJournalRegistrationTime;
|
|
||||||
this.outDocumentJournalRegistrationNumber = outDocumentJournalRegistrationNumber;
|
|
||||||
this.outDocumentJournalDocumentName = outDocumentJournalDocumentName;
|
|
||||||
this.outDocumentJournalAddress = outDocumentJournalAddress;
|
|
||||||
this.outDocumentJournalQuantity = outDocumentJournalQuantity;
|
|
||||||
this.outDocumentJournalClearingCode = outDocumentJournalClearingCode;
|
|
||||||
this.outDocumentJournalCourierType = outDocumentJournalCourierType;
|
|
||||||
this.outDocumentJournal_emailDate = outDocumentJournal_emailDate;
|
|
||||||
this.outDocumentJournalAmount = outDocumentJournalAmount;
|
|
||||||
this.outDocumentJournalDossierNumber = outDocumentJournalDossierNumber;
|
|
||||||
this.outDocumentJournalPostDate = outDocumentJournalPostDate;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getReportName(LocalDateTime reportDateTime) {
|
|
||||||
return "DOCOUT.%s".formatted(
|
|
||||||
DATE_TIME_FORMATTER.format(reportDateTime)
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -6,7 +6,6 @@ import ru.spcex.clearing.reports.reports.Destination;
|
||||||
import ru.spcex.clearing.reports.reports.ReportId;
|
import ru.spcex.clearing.reports.reports.ReportId;
|
||||||
import ru.spcex.clearing.reports.reports.ReportWithPeriod;
|
import ru.spcex.clearing.reports.reports.ReportWithPeriod;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
|
|
@ -47,8 +46,8 @@ public class ReportBR_0420315_P2 extends ReportWithPeriod {
|
||||||
this.rows = rows;
|
this.rows = rows;
|
||||||
}
|
}
|
||||||
|
|
||||||
public record Info_0420315_P2(@XStreamAlias("contract_qty") @XStreamAsAttribute BigDecimal contractQty,
|
public record Info_0420315_P2(@XStreamAlias("contract_qty") @XStreamAsAttribute String contractQty,
|
||||||
@XStreamAlias("liabilities_amount") @XStreamAsAttribute BigDecimal liabilitiesAmount) {
|
@XStreamAlias("liabilities_amount") @XStreamAsAttribute String liabilitiesAmount) {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,9 @@ package ru.spcex.clearing.reports.reports.bt_17_4;
|
||||||
|
|
||||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||||
import com.thoughtworks.xstream.annotations.XStreamConverter;
|
|
||||||
import ru.spcex.clearing.reports.reports.Destination;
|
import ru.spcex.clearing.reports.reports.Destination;
|
||||||
import ru.spcex.clearing.reports.reports.ReportId;
|
import ru.spcex.clearing.reports.reports.ReportId;
|
||||||
import ru.spcex.clearing.reports.reports.ReportWithClearingStatus;
|
import ru.spcex.clearing.reports.reports.ReportWithClearingStatus;
|
||||||
import ru.spcex.clearing.reports.xml_test.FormattedLocalDateConverter;
|
|
||||||
|
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
@ -55,7 +53,7 @@ public class ReportBR_0420314_P1 extends ReportWithClearingStatus {
|
||||||
@XStreamAsAttribute @XStreamAlias("companySymbol_value") String companySymbolValue,
|
@XStreamAsAttribute @XStreamAlias("companySymbol_value") String companySymbolValue,
|
||||||
@XStreamAsAttribute @XStreamAlias("clearingMemberCategory_clearingMemberCategory") String clearingMemberCategoryClearingMemberCategory,
|
@XStreamAsAttribute @XStreamAlias("clearingMemberCategory_clearingMemberCategory") String clearingMemberCategoryClearingMemberCategory,
|
||||||
@XStreamAsAttribute @XStreamAlias("liabilitiesClaimsAssets_contract") String liabilitiesClaimsAssets_contract,
|
@XStreamAsAttribute @XStreamAlias("liabilitiesClaimsAssets_contract") String liabilitiesClaimsAssets_contract,
|
||||||
@XStreamAsAttribute @XStreamAlias("liabilitiesClaimsAssets_tradingDate") @XStreamConverter(value = FormattedLocalDateConverter.class, strings = {"dd.MM.yyyy"}) LocalDate liabilitiesClaimsAssets_tradingDate,
|
@XStreamAsAttribute @XStreamAlias("liabilitiesClaimsAssets_tradingDate") String liabilitiesClaimsAssets_tradingDate,
|
||||||
@XStreamAsAttribute @XStreamAlias("liabilitiesClaimsAssets_liabilitiesQuantity") String liabilitiesClaimsAssetsLiabilitiesQuantity) {
|
@XStreamAsAttribute @XStreamAlias("liabilitiesClaimsAssets_liabilitiesQuantity") String liabilitiesClaimsAssetsLiabilitiesQuantity) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ import ru.spcex.clearing.reports.reports.AbstractReport;
|
||||||
import java.time.LocalDate;
|
import java.time.LocalDate;
|
||||||
|
|
||||||
public abstract class ReportWithPeriodCollector<T extends AbstractReport> extends AbstractReportCollector<T> {
|
public abstract class ReportWithPeriodCollector<T extends AbstractReport> extends AbstractReportCollector<T> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Подготовка отчета на период startDate..endDate
|
* Подготовка отчета на период startDate..endDate
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -2,15 +2,56 @@ package ru.spcex.clearing.reports.services.collector;
|
||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import ru.clearing.classes.statics.data.journal.InDocumentJournal;
|
||||||
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.reports.reports.bt_13.ReportDOCIN;
|
import ru.spcex.clearing.reports.reports.bt_13.ReportDOCIN;
|
||||||
import ru.spcex.clearing.reports.services.SimpleReportCollector;
|
import ru.spcex.clearing.reports.services.SimpleReportCollector;
|
||||||
|
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.LocalDate;
|
||||||
|
import java.time.LocalTime;
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
public class ReportDOCIN_Collector extends SimpleReportCollector<ReportDOCIN> {
|
public class ReportDOCIN_Collector extends SimpleReportCollector<ReportDOCIN> {
|
||||||
protected final Logger log = LoggerFactory.getLogger(getClass());
|
protected final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
private final Imdg<InDocumentJournal> inDocumentJournalImdg;
|
||||||
|
|
||||||
|
public ReportDOCIN_Collector(ImdgProvider imdgProvider) {
|
||||||
|
this.inDocumentJournalImdg = imdgProvider.getImdg(
|
||||||
|
IMDGDistributedNames.Map_InDocumentJournal,
|
||||||
|
InDocumentJournal.class
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ReportDOCIN collectReport() {
|
public ReportDOCIN collectReport() {
|
||||||
return null;
|
LocalDate currentDate = LocalDate.now();
|
||||||
|
ImdgPredicateBuilder pb = inDocumentJournalImdg.predicateBuilder();
|
||||||
|
ImdgPredicate p = pb.equals("registrationDate", currentDate);
|
||||||
|
Collection<InDocumentJournal> inDocumentsJournal = inDocumentJournalImdg.getCollectionObjectsByPredicate(p);
|
||||||
|
ReportDOCIN reportDOCIN = new ReportDOCIN(LocalDate.now(), LocalTime.now());
|
||||||
|
for (InDocumentJournal inDocumentJournal : inDocumentsJournal) {
|
||||||
|
ReportDOCIN.Info_DOCIN infoDOCIN = new ReportDOCIN.Info_DOCIN(
|
||||||
|
inDocumentJournal.getRegistrationDate(),
|
||||||
|
inDocumentJournal.getRegistrationTime(),
|
||||||
|
inDocumentJournal.getRegistrationNumber(),
|
||||||
|
inDocumentJournal.getDocumentName(),
|
||||||
|
inDocumentJournal.getSender(),
|
||||||
|
inDocumentJournal.getQuantity(),
|
||||||
|
inDocumentJournal.getClearingCode(),
|
||||||
|
inDocumentJournal.getCourierType(),
|
||||||
|
inDocumentJournal.getEmailDate(),
|
||||||
|
inDocumentJournal.getAmount(),
|
||||||
|
inDocumentJournal.getDossierNumber(),
|
||||||
|
inDocumentJournal.getComment(),
|
||||||
|
inDocumentJournal.getReceiptDate());
|
||||||
|
reportDOCIN.getRows().add(infoDOCIN);
|
||||||
|
}
|
||||||
|
return reportDOCIN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,61 @@
|
||||||
|
package ru.spcex.clearing.reports.services.collector;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import ru.clearing.classes.statics.data.journal.OutDocumentJournal;
|
||||||
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
|
import ru.spcex.clearing.reports.reports.bt_13.ReportDOCOUT;
|
||||||
|
import ru.spcex.clearing.reports.services.SimpleReportCollector;
|
||||||
|
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.LocalDate;
|
||||||
|
import java.time.LocalTime;
|
||||||
|
import java.util.Collection;
|
||||||
|
|
||||||
|
public class ReportDOCOUT_Collector extends SimpleReportCollector<ReportDOCOUT> {
|
||||||
|
protected final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
private final Imdg<OutDocumentJournal> inDocumentJournalImdg;
|
||||||
|
|
||||||
|
public ReportDOCOUT_Collector(ImdgProvider imdgProvider) {
|
||||||
|
this.inDocumentJournalImdg = imdgProvider.getImdg(
|
||||||
|
IMDGDistributedNames.Map_OutDocumentJournal,
|
||||||
|
OutDocumentJournal.class
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ReportDOCOUT collectReport() {
|
||||||
|
LocalDate currentDate = LocalDate.now();
|
||||||
|
ImdgPredicateBuilder pb = inDocumentJournalImdg.predicateBuilder();
|
||||||
|
ImdgPredicate p = pb.equals("registrationDate", currentDate);
|
||||||
|
Collection<OutDocumentJournal> inDocumentsJournal = inDocumentJournalImdg.getCollectionObjectsByPredicate(p);
|
||||||
|
ReportDOCOUT reportDOCOUT = new ReportDOCOUT(LocalDate.now(), LocalTime.now());
|
||||||
|
for (OutDocumentJournal inDocumentJournal : inDocumentsJournal) {
|
||||||
|
ReportDOCOUT.Info_DOCOUT infoDOCOUT = new ReportDOCOUT.Info_DOCOUT(
|
||||||
|
inDocumentJournal.getRegistrationDate(),
|
||||||
|
inDocumentJournal.getRegistrationTime(),
|
||||||
|
inDocumentJournal.getRegistrationNumber(),
|
||||||
|
inDocumentJournal.getDocumentName(),
|
||||||
|
inDocumentJournal.getAddressee(),
|
||||||
|
inDocumentJournal.getQuantity(),
|
||||||
|
inDocumentJournal.getClearingCode(),
|
||||||
|
inDocumentJournal.getCourierType(),
|
||||||
|
inDocumentJournal.getEmailDate(),
|
||||||
|
inDocumentJournal.getAmount(),
|
||||||
|
inDocumentJournal.getDossierNumber(),
|
||||||
|
inDocumentJournal.getPostDate());
|
||||||
|
reportDOCOUT.getRows().add(infoDOCOUT);
|
||||||
|
}
|
||||||
|
return reportDOCOUT;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Class<ReportDOCOUT> getReportClass() {
|
||||||
|
return ReportDOCOUT.class;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue