This commit is contained in:
parent
705b24910d
commit
a4f2da37d4
17 changed files with 77 additions and 104 deletions
|
|
@ -35,7 +35,6 @@ import ru.spcex.platform.enumeration.Task;
|
|||
import ru.spcex.platform.utils.enumeration.IEnumKey;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@Service
|
||||
|
|
@ -236,12 +235,7 @@ public class GatewayService extends QueueConsumer implements InitializingBean {
|
|||
|
||||
protected Map<String, Object> makeContentByReportRequest(ReportPart reportPart) {
|
||||
Map<String, Object> content = new HashMap<>();
|
||||
Matcher matcher = REPORT_FILE_NAME_PATTERN.matcher(reportPart.getFileName());
|
||||
ReportKeys reportKey = null;
|
||||
if (matcher.matches()) {
|
||||
String rowKey = matcher.group(1);
|
||||
reportKey = IEnumKey.getEnumByKeyOrUndefined(ReportKeys.class, rowKey);
|
||||
}
|
||||
ReportKeys reportKey = IEnumKey.getEnumByKey(ReportKeys.class, reportPart.getReportType());
|
||||
if (reportKey == null) {
|
||||
log.warn("Mismatched filename pattern : {}; {}", reportPart.getFileName(), REPORT_FILE_NAME_PATTERN);
|
||||
return content;
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import com.opencsv.exceptions.CsvRequiredFieldEmptyException;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileWriter;
|
||||
|
|
@ -18,6 +19,7 @@ import java.io.Writer;
|
|||
import java.lang.reflect.Constructor;
|
||||
import java.lang.reflect.Field;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
|
@ -43,13 +45,17 @@ public abstract class CSVReportBuilder<P, R> {
|
|||
*
|
||||
* @param params Параметры формирования отчета
|
||||
*/
|
||||
protected abstract String getReportFilename(P params);
|
||||
protected String getReportFilename(P params) {
|
||||
return "%s_%s".formatted(getReportKey().getKey(), dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
}
|
||||
|
||||
/**
|
||||
* Тип отчета по {@link ReportBuilderType}
|
||||
*/
|
||||
public abstract ReportBuilderType getReportType();
|
||||
|
||||
public abstract ReportKeys getReportKey();
|
||||
|
||||
/**
|
||||
* Тип параметров для построения отчетов
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ import org.springframework.context.annotation.Scope;
|
|||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.execution.ExecutionFond;
|
||||
import ru.spcex.clearing.reports.reports.SessionIdParam;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collection;
|
||||
|
||||
@Component
|
||||
|
|
@ -21,8 +21,8 @@ public class ExecutedDealReportBuilder_INFTYPE_1 extends ExecutedDealReportBuild
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "KS_BR_PFX64_INFTYPE_1_%s".formatted(fileNameDateTimeFormatter.format(LocalDateTime.now()));
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_BR_PFX64_INFTYPE_1;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ import org.springframework.context.annotation.Scope;
|
|||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.execution.ExecutionFond;
|
||||
import ru.spcex.clearing.reports.reports.SessionIdParam;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collection;
|
||||
|
||||
@Component
|
||||
|
|
@ -21,8 +21,8 @@ public class ExecutedDealReportBuilder_INFTYPE_2 extends ExecutedDealReportBuild
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "KS_BR_PFX64_INFTYPE_2_%s".formatted(fileNameDateTimeFormatter.format(LocalDateTime.now()));
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_BR_PFX64_INFTYPE_2;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -5,11 +5,11 @@ import org.springframework.context.annotation.Scope;
|
|||
import org.springframework.stereotype.Component;
|
||||
import ru.clearing.classes.statics.data.execution.ExecutionFond;
|
||||
import ru.spcex.clearing.reports.reports.SessionIdParam;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collection;
|
||||
|
||||
@Component
|
||||
|
|
@ -21,8 +21,8 @@ public class ExecutedDealReportBuilder_INFTYPE_3 extends ExecutedDealReportBuild
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "KS_BR_PFX64_INFTYPE_3_%s".formatted(fileNameDateTimeFormatter.format(LocalDateTime.now()));
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_BR_PFX64_INFTYPE_3;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -6,11 +6,11 @@ import org.springframework.stereotype.Component;
|
|||
import ru.clearing.classes.statics.data.execution.ExecutionFond;
|
||||
import ru.spcex.clearing.reports.reports.SessionIdParam;
|
||||
import ru.spcex.platform.enumeration.Allowed;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicateBuilder;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Collection;
|
||||
|
||||
@Component
|
||||
|
|
@ -22,8 +22,8 @@ public class ExecutedDealReportBuilder_INFTYPE_4 extends ExecutedDealReportBuild
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "KS_BR_PFX64_INFTYPE_4_%s".formatted(fileNameDateTimeFormatter.format(LocalDateTime.now()));
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_BR_PFX64_INFTYPE_4;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -12,13 +12,13 @@ import ru.spcex.clearing.reports.reports.SessionIdParam;
|
|||
import ru.spcex.clearing.reports.reports.bean.UnfulfilledDealReport;
|
||||
import ru.spcex.platform.enumeration.Allowed;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
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.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
|
@ -45,13 +45,13 @@ public class UnfulfilledDealReportBuilder extends CSVReportBuilder<SessionIdPara
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "UNFULFILLED_DEAL_REPORT.%s".formatted(dateTimeFormatter.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.UNFULFILLED_DEAL_REPORT;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.UNFULFILLED_DEAL_REPORT;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.UNFULFILLED_DEAL_REPORT;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -10,10 +10,7 @@ import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
|||
import ru.spcex.clearing.reports.reports.PairRegistryId;
|
||||
import ru.spcex.clearing.reports.reports.SessionIdParam;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepCashNettoReport;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.RegistryDesignation;
|
||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
|
|
@ -22,7 +19,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
|
@ -45,13 +41,13 @@ public class KSRepCashNettoReportBuilder extends CSVReportBuilder<SessionIdParam
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "KS_REP_CASH_NETTO_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_CASH_NETTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_CASH_NETTO;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_CASH_NETTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -9,10 +9,7 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
|||
import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
||||
import ru.spcex.clearing.reports.reports.EmptyParams;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepCashRegisterSumsReport;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
|
|
@ -21,7 +18,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
|
@ -46,13 +42,13 @@ public class KSRepCashRegisterSumsReportBuilder extends CSVReportBuilder<EmptyPa
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(EmptyParams params) {
|
||||
return "KS_REP_CASH_REGISTER_SUMS_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_CASH_REGISTER_SUMS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_CASH_REGISTER_SUMS;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_CASH_REGISTER_SUMS;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -10,10 +10,7 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
|||
import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
||||
import ru.spcex.clearing.reports.reports.EmptyParams;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepCashRegistersReport;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
|
|
@ -22,7 +19,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
|
@ -45,20 +41,19 @@ public class KSRepCashRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
|||
registryCodeDictionaryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_RegistryCodeDictionary, RegistryCodeDictionary.class);
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected List<KSRepCashRegistersReport> getRows() {
|
||||
return rows;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(EmptyParams params) {
|
||||
return "KS_REP_CASH_REGISTERS_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_CASH_REGISTERS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_CASH_REGISTERS;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_CASH_REGISTERS;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -10,10 +10,7 @@ import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
|||
import ru.spcex.clearing.reports.reports.PairRegistryId;
|
||||
import ru.spcex.clearing.reports.reports.SessionIdParam;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepDepoNettoReport;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.RegistryDesignation;
|
||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
|
|
@ -22,7 +19,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
|
@ -45,13 +41,13 @@ public class KSRepDepoNettoReportBuilder extends CSVReportBuilder<SessionIdParam
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(SessionIdParam params) {
|
||||
return "KS_REP_DEPO_NETTO_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_DEPO_NETTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_DEPO_NETTO;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_DEPO_NETTO;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -9,10 +9,7 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
|||
import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
||||
import ru.spcex.clearing.reports.reports.EmptyParams;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepDepoRegisterQuantitiesReport;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
|
|
@ -21,7 +18,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
|
@ -46,13 +42,13 @@ public class KSRepDepoRegisterQuantitiesReportBuilder extends CSVReportBuilder<E
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(EmptyParams params) {
|
||||
return "KS_REP_DEPO_REGISTER_QUANTITIES_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_DEPO_REGISTER_QUANTITIES;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_DEPO_REGISTER_QUANTITIES;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_DEPO_REGISTER_QUANTITIES;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -10,10 +10,7 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
|||
import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
||||
import ru.spcex.clearing.reports.reports.EmptyParams;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepDepoRegistersReport;
|
||||
import ru.spcex.platform.enumeration.AccountType;
|
||||
import ru.spcex.platform.enumeration.RegistryTradingParams;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
import ru.spcex.platform.imdg.api.predicate.ImdgPredicate;
|
||||
|
|
@ -22,7 +19,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
|
@ -50,13 +46,13 @@ public class KSRepDepoRegistersReportBuilder extends CSVReportBuilder<EmptyParam
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(EmptyParams params) {
|
||||
return "KS_REP_DEPO_REGISTERS_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_DEPO_REGISTERS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_DEPO_REGISTERS;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_DEPO_REGISTERS;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -10,14 +10,10 @@ import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
|||
import ru.spcex.clearing.reports.reports.CSVReportBuilder;
|
||||
import ru.spcex.clearing.reports.reports.EmptyParams;
|
||||
import ru.spcex.clearing.reports.reports.bean.KSRepFirmDetailsReport;
|
||||
import ru.spcex.platform.enumeration.CompanySymbol;
|
||||
import ru.spcex.platform.enumeration.DocumentTypes;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.WorkflowStatus;
|
||||
import ru.spcex.platform.enumeration.*;
|
||||
import ru.spcex.platform.imdg.api.Imdg;
|
||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
|
@ -44,13 +40,13 @@ public class KSRepFirmDetailsReportBuilder extends CSVReportBuilder<EmptyParams,
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(EmptyParams params) {
|
||||
return "KS_REP_FIRM_DETAILS_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_FIRM_DETAILS;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_FIRM_DETAILS;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_FIRM_DETAILS;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
|||
import ru.spcex.platform.utils.enumeration.IEnumKey;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
|
@ -52,13 +51,13 @@ public class KSRepTradesReportBuilder extends CSVReportBuilder<EmptyParams, KSRe
|
|||
}
|
||||
|
||||
@Override
|
||||
protected String getReportFilename(EmptyParams params) {
|
||||
return "KS_REP_TRADES_%s".formatted(dateTimeFormatter_YYMMDDHHmmssSSS.format(LocalDateTime.now()));
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_TRADES;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ReportBuilderType getReportType() {
|
||||
return ReportBuilderType.KS_REP_TRADES;
|
||||
public ReportKeys getReportKey() {
|
||||
return ReportKeys.KS_REP_TRADES;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@ import ru.spcex.clearing.reports.reports.SessionIdParam;
|
|||
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||
import ru.spcex.clearing.validation.common.ValidationHelper;
|
||||
import ru.spcex.platform.enumeration.ReportBuilderType;
|
||||
import ru.spcex.platform.enumeration.ReportKeys;
|
||||
import ru.spcex.platform.enumeration.ReportType;
|
||||
import ru.spcex.platform.enumeration.Task;
|
||||
import ru.spcex.platform.utils.enumeration.IEnumKey;
|
||||
|
|
@ -206,7 +207,7 @@ public class ReportService extends QueueConsumer implements InitializingBean {
|
|||
logUnknownProperties(userRequest);
|
||||
|
||||
Long sessionId = userRequest.getRequestPayload().getSessionId();
|
||||
Map<String, ReportBuilderType> outFilenames = createReportsForTask(sessionId, reportBuildersForGREP.values());
|
||||
Map<String, ReportKeys> outFilenames = createReportsForTask(sessionId, reportBuildersForGREP.values());
|
||||
|
||||
sendReportsToGateway(sessionId, outFilenames, ReportType.REPORT_KS_TMP.getKey());
|
||||
return null;
|
||||
|
|
@ -222,7 +223,7 @@ public class ReportService extends QueueConsumer implements InitializingBean {
|
|||
logUnknownProperties(userRequest);
|
||||
|
||||
Long sessionId = userRequest.getRequestPayload().getSessionId();
|
||||
Map<String, ReportBuilderType> outFilenames = createReportsForTask(sessionId, reportBuildersForGRET.values());
|
||||
Map<String, ReportKeys> outFilenames = createReportsForTask(sessionId, reportBuildersForGRET.values());
|
||||
|
||||
sendReportsToGateway(sessionId, outFilenames, null);
|
||||
return null;
|
||||
|
|
@ -238,14 +239,14 @@ public class ReportService extends QueueConsumer implements InitializingBean {
|
|||
logUnknownProperties(userRequest);
|
||||
|
||||
Long sessionId = userRequest.getRequestPayload().getSessionId();
|
||||
Map<String, ReportBuilderType> outFilenames = createReportsForTask(sessionId, reportBuildersForGREF.values());
|
||||
Map<String, ReportKeys> outFilenames = createReportsForTask(sessionId, reportBuildersForGREF.values());
|
||||
|
||||
sendReportsToGateway(sessionId, outFilenames, "REPORT_KS_FINAL");
|
||||
sendReportsToGateway(sessionId, outFilenames, ReportType.REPORT_KS_FINAL.getKey());
|
||||
return null;
|
||||
}
|
||||
|
||||
private Map<String, ReportBuilderType> createReportsForTask(Long sessionId, Collection<List<CSVReportBuilder<?, ?>>> buildersForTask) {
|
||||
Map<String, ReportBuilderType> outFilenames = new HashMap<>();
|
||||
private Map<String, ReportKeys> createReportsForTask(Long sessionId, Collection<List<CSVReportBuilder<?, ?>>> buildersForTask) {
|
||||
Map<String, ReportKeys> outFilenames = new HashMap<>();
|
||||
int cntErrors = 0;
|
||||
for (List<CSVReportBuilder<?, ?>> builders : buildersForTask) {
|
||||
for (CSVReportBuilder<?, ?> builder : builders) {
|
||||
|
|
@ -256,7 +257,7 @@ public class ReportService extends QueueConsumer implements InitializingBean {
|
|||
cntErrors++;
|
||||
continue;
|
||||
}
|
||||
outFilenames.put(outFile.getName(), builder.getReportType());
|
||||
outFilenames.put(outFile.getName(), builder.getReportKey());
|
||||
} else if (builder.getParamsClass() == SessionIdParam.class && sessionId != null) {
|
||||
SessionIdParam sessionIdParam = new SessionIdParam();
|
||||
sessionIdParam.setSessionId(sessionId);
|
||||
|
|
@ -266,7 +267,7 @@ public class ReportService extends QueueConsumer implements InitializingBean {
|
|||
cntErrors++;
|
||||
continue;
|
||||
}
|
||||
outFilenames.put(outFile.getName(), builder.getReportType());
|
||||
outFilenames.put(outFile.getName(), builder.getReportKey());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -276,12 +277,12 @@ public class ReportService extends QueueConsumer implements InitializingBean {
|
|||
return outFilenames;
|
||||
}
|
||||
|
||||
private void sendReportsToGateway(Long sessionId, Map<String, ReportBuilderType> reportsWithReportType, String type) {
|
||||
private void sendReportsToGateway(Long sessionId, Map<String, ReportKeys> reportsWithReportType, String type) {
|
||||
SendReportRequest sendReportRequest = new SendReportRequest();
|
||||
sendReportRequest.setSessionId(sessionId);
|
||||
sendReportRequest.setType(type);
|
||||
List<ReportPart> reports = new ArrayList<>(reportsWithReportType.size());
|
||||
for (Map.Entry<String, ReportBuilderType> entry : reportsWithReportType.entrySet()) {
|
||||
for (Map.Entry<String, ReportKeys> entry : reportsWithReportType.entrySet()) {
|
||||
ReportPart reportPart = new ReportPart();
|
||||
reportPart.setReportType(entry.getValue().getKey());
|
||||
reportPart.setFileName(entry.getKey());
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ public enum ReportKeys implements IEnumKey {
|
|||
KS_BR_PFX64_INFTYPE_2("KS_BR_PFX64_INFTYPE_2"),
|
||||
KS_BR_PFX64_INFTYPE_3("KS_BR_PFX64_INFTYPE_3"),
|
||||
KS_BR_PFX64_INFTYPE_4("KS_BR_PFX64_INFTYPE_4"),
|
||||
UNFULFILLED_DEAL_REPORT("UNFULFILLED_DEAL_REPORT"),
|
||||
KS_BR_PFX65_DEALS("KS_BR_PFX65_DEALS"),
|
||||
KS_REP_CASH_REGISTERS("KS_REP_CASH_REGISTERS"),
|
||||
KS_REP_CASH_REGISTER_SUMS("KS_REP_CASH_REGISTER_SUMS"),
|
||||
|
|
@ -15,6 +16,7 @@ public enum ReportKeys implements IEnumKey {
|
|||
KS_REP_TRADES("KS_REP_TRADES"),
|
||||
KS_REP_CASH_NETTO("KS_REP_CASH_NETTO"),
|
||||
KS_REP_DEPO_NETTO("KS_REP_DEPO_NETTO"),
|
||||
KS_REP_FIRM_DETAILS("KS_REP_FIRM_DETAILS"),
|
||||
;
|
||||
|
||||
private final String key;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue