diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/CSVReportBuilder.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/CSVReportBuilder.java
index 019c72974..e35889902 100644
--- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/CSVReportBuilder.java
+++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/CSVReportBuilder.java
@@ -33,7 +33,7 @@ public abstract class CSVReportBuilder
{
protected static final Logger log = LoggerFactory.getLogger(CSVReportBuilder.class);
protected DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("dd.MM.yyyy'T'HH:mm:ss");
protected DateTimeFormatter dateTimeFormatter_YYMMDDHHmmssSSS = DateTimeFormatter.ofPattern("yyMMddHHmmssSSS");
- protected DateTimeFormatter dateFormatter_yyMMdd = DateTimeFormatter.ofPattern("yyMMdd");
+ protected DateTimeFormatter dateFormatter_yyyyMMdd = DateTimeFormatter.ofPattern("yyyyMMdd");
/**
* Возвращает списком значения CSV отчета. Каждый элемент списка - строка, элемент массива внутри списка - столбец.
diff --git a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepDepoNettoReportBuilder.java b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepDepoNettoReportBuilder.java
index 119bcdec8..761ec11be 100644
--- a/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepDepoNettoReportBuilder.java
+++ b/clearing-parent/reports-service/src/main/java/ru/spcex/clearing/reports/reports/ks/KSRepDepoNettoReportBuilder.java
@@ -83,7 +83,7 @@ public class KSRepDepoNettoReportBuilder extends CSVReportBuilder groupedRegistry = entry.getValue();
try {
if (groupedRegistry.size() != 2) {
- log.warn("Invalid OM_T and TM_T registries for GroupId = {} and SettlementDate = {}. Registries with id = [{}] was skipped",
+ log.warn("Invalid OS_T and TS_T registries for GroupId = {} and SettlementDate = {}. Registries with id = [{}] was skipped",
pairRegistryId.getGroupId(),
pairRegistryId.getSettlementDate(),
groupedRegistry.stream().map(r -> String.valueOf(r.getId())).collect(Collectors.joining(", "))
@@ -99,7 +99,7 @@ public class KSRepDepoNettoReportBuilder extends CSVReportBuilder executionFondImdg;
private final Imdg sessionImdg;
private final Imdg registryImdg;
+ private final Imdg marketImdg;
private final Imdg companyImdg;
private List rows = null;
@@ -43,6 +46,7 @@ public class KSRepTradesReportBuilder extends CSVReportBuilder registries, Collection registryStatuses) {
+ for (Registry registry : registries) {
+ RegistryStatus registryStatus = IEnumKey.getEnumByKey(RegistryStatus.class, registry.getRegistryStatus());
+ if (registryStatuses.contains(registryStatus)) continue;
+ return false;
+ }
+ return true;
+ }
+
+ private boolean checkRegistryInstrumentType(Collection registries, Collection RegistryInstrumentTypes) {
+ for (Registry registry : registries) {
+ RegistryInstrumentType RegistryInstrumentType = IEnumKey.getEnumByKey(RegistryInstrumentType.class, registry.getRegistryInstrumentType());
+ if (RegistryInstrumentTypes.contains(RegistryInstrumentType)) continue;
+ return false;
+ }
+ return true;
+ }
}
diff --git a/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportServiceTest_KS.java b/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportServiceTest_KS.java
index 5d859c6ba..8a77fbcd4 100644
--- a/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportServiceTest_KS.java
+++ b/clearing-parent/reports-service/src/test/java/ru/spcex/clearing/reports/services/ReportServiceTest_KS.java
@@ -18,6 +18,7 @@ import ru.clearing.classes.statics.data.company.Company;
import ru.clearing.classes.statics.data.company.CompanySymbols;
import ru.clearing.classes.statics.data.execution.ExecutionDeposit;
import ru.clearing.classes.statics.data.execution.ExecutionFond;
+import ru.clearing.classes.statics.data.misc.Market;
import ru.clearing.classes.statics.data.misc.Session;
import ru.clearing.classes.statics.data.profile.ProfileDocument;
import ru.clearing.classes.statics.data.registry.Registry;
@@ -63,13 +64,14 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
})
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class ReportServiceTest_KS {
- protected DateTimeFormatter dateFormatter_yyMMdd = DateTimeFormatter.ofPattern("yyMMdd");
+ protected DateTimeFormatter dateFormatter_yyyyMMdd = DateTimeFormatter.ofPattern("yyyyMMdd");
private static File outFolder;
private static int reportRequestCnt = 0;
private static int reportRequestWithSessionIdCnt = 0;
private static int reportRequestWithSessionIdListCnt = 0;
private static int reportRequestWithPeriodCnt = 0;
private Imdg registryImdg;
+ private Imdg marketImdg;
private Imdg companyImdg;
private Imdg registryCodeDictionaryImdg;
private Imdg executionDepositImdg;
@@ -303,19 +305,23 @@ public class ReportServiceTest_KS {
executionFond.setCoverageStatus(CoverageStatus.ALWD.getKey());
executionFondImdg.insert(executionFond);
+ Market market = new Market();
+ market.setCode("3333");
+ Long marketId = marketImdg.insert(market);
+
Registry registry = new Registry();
registry.setSessionId(sessionId_2);
registry.setRegistryCode("OM_T");
registry.setRegistryDesignation(RegistryDesignation.O.getKey());
registry.setRegistryInstrumentType(RegistryInstrumentType.M.getKey());
registry.setRegistryUnit(RegistryUnit.T.getKey());
- registry.setGroupId(Long.parseLong("%s%d%s".formatted(dateFormatter_yyMMdd.format(LocalDate.now()), 222, "333")));
+ registry.setGroupId(Long.parseLong("%s%d%d".formatted(dateFormatter_yyyyMMdd.format(LocalDate.now()), 222, marketId)));
registry.setRegistryStatus(RegistryStatus.FAIL.getKey());
registry.setRegistryInstrumentType(RegistryInstrumentType.S.getKey());
registryImdg.insert(registry);
ExecutionDeposit executionDeposit = new ExecutionDeposit();
- executionDeposit.setMarket("333");
+ executionDeposit.setMarket("3333");
executionDeposit.setCompanyId(COMPANY_ID);
executionDeposit.setTradingDate(LocalDate.now());
executionDeposit.setSessionId(sessionId_2);
@@ -599,6 +605,7 @@ public class ReportServiceTest_KS {
sessionImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Session, Session.class);
companySymbolsImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_CompanySymbols, CompanySymbols.class);
profileDocumentImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_ProfileDocument, ProfileDocument.class);
+ marketImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Market, Market.class);
}
private void clearTestDir() throws IOException {