http://jira.mfd.msk:8088/browse/CLS-396 создание SDF05 по команде из кафки с pr="9"
This commit is contained in:
parent
5b3fedfc0c
commit
be55af4c5f
4 changed files with 67 additions and 29 deletions
|
|
@ -38,6 +38,7 @@ public class EventsReceiver extends QueueConsumer implements InitializingBean {
|
||||||
private final SessionManager sessionManager;
|
private final SessionManager sessionManager;
|
||||||
private final Sdf06Executor sdf06Executor;
|
private final Sdf06Executor sdf06Executor;
|
||||||
private final BalanceRevise balanceRevise;
|
private final BalanceRevise balanceRevise;
|
||||||
|
private final Sdf05Sender sdf05Sender;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public EventsReceiver(Consumer<String, Object> kafkaQueue, Producer<String, Object> kafkaResponseQueue,
|
public EventsReceiver(Consumer<String, Object> kafkaQueue, Producer<String, Object> kafkaResponseQueue,
|
||||||
|
|
@ -47,7 +48,7 @@ public class EventsReceiver extends QueueConsumer implements InitializingBean {
|
||||||
SecondaryAuctionT0Session secondaryAuctionT0Session,
|
SecondaryAuctionT0Session secondaryAuctionT0Session,
|
||||||
PrimaryAuctionB0Session primaryAuctionB0Session, PrimaryAuctionT0Session primaryAuctionT0Session, IntermediateMkrSession intermediateMkrSession, FinalMkrSession finalMkrSession, ReturnDepositSession returnDepositSession, SessionManager sessionManager,
|
PrimaryAuctionB0Session primaryAuctionB0Session, PrimaryAuctionT0Session primaryAuctionT0Session, IntermediateMkrSession intermediateMkrSession, FinalMkrSession finalMkrSession, ReturnDepositSession returnDepositSession, SessionManager sessionManager,
|
||||||
Sdf06Executor sdf06Executor,
|
Sdf06Executor sdf06Executor,
|
||||||
BalanceRevise balanceRevise) {
|
BalanceRevise balanceRevise, Sdf05Sender sdf05Sender) {
|
||||||
super(kafkaQueue, kafkaResponseQueue);
|
super(kafkaQueue, kafkaResponseQueue);
|
||||||
this.clearingService = clearingService;
|
this.clearingService = clearingService;
|
||||||
this.registryService = registryService;
|
this.registryService = registryService;
|
||||||
|
|
@ -61,6 +62,7 @@ public class EventsReceiver extends QueueConsumer implements InitializingBean {
|
||||||
this.sessionManager = sessionManager;
|
this.sessionManager = sessionManager;
|
||||||
this.sdf06Executor = sdf06Executor;
|
this.sdf06Executor = sdf06Executor;
|
||||||
this.balanceRevise = balanceRevise;
|
this.balanceRevise = balanceRevise;
|
||||||
|
this.sdf05Sender = sdf05Sender;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -126,6 +128,10 @@ public class EventsReceiver extends QueueConsumer implements InitializingBean {
|
||||||
balanceRevise.submit(new ru.spcex.clearing.session.stage.Task<>(TaskType.StartRevise, null));
|
balanceRevise.submit(new ru.spcex.clearing.session.stage.Task<>(TaskType.StartRevise, null));
|
||||||
})
|
})
|
||||||
.forDestination(Task.getVerification.topic(), callbacks::put);
|
.forDestination(Task.getVerification.topic(), callbacks::put);
|
||||||
|
|
||||||
|
callback(LauncherCommandRequest.class)
|
||||||
|
.setConsumer(task -> sdf05Sender.sendSdf05("9"))
|
||||||
|
.forDestination(Task.sdf05WithCode9Final.topic(), callbacks::put);
|
||||||
init();
|
init();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,54 @@
|
||||||
|
package ru.spcex.clearing.service;
|
||||||
|
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import ru.clearing.classes.statics.data.sdf.SDf05;
|
||||||
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
|
import ru.spcex.clearing.platform.messaging.domain.cud.balance.ExportToFileRequest;
|
||||||
|
import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender;
|
||||||
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgId;
|
||||||
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.Instant;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalTime;
|
||||||
|
import java.time.format.DateTimeFormatter;
|
||||||
|
|
||||||
|
@Component
|
||||||
|
public class Sdf05Sender {
|
||||||
|
private final ImdgId idGenerator;
|
||||||
|
private final Imdg<SDf05> sDf05Imdg;
|
||||||
|
private final KafkaSender kafkaSender;
|
||||||
|
private static DateTimeFormatter tmTimeFormatter = DateTimeFormatter.ofPattern("hh:mm:ss");
|
||||||
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
public Sdf05Sender(ImdgProvider imdgProvider, KafkaSender kafkaSender) {
|
||||||
|
this.idGenerator = imdgProvider.getImdgIdGenerator();
|
||||||
|
this.sDf05Imdg = imdgProvider.getImdg(IMDGDistributedNames.Map_SDf05, SDf05.class);
|
||||||
|
this.kafkaSender = kafkaSender;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void sendSdf05(String pr) {
|
||||||
|
SDf05 sdf05 = new SDf05();
|
||||||
|
sdf05.setId(idGenerator.nextId());
|
||||||
|
sdf05.setTp(BigDecimal.valueOf(753));
|
||||||
|
sdf05.setDt(LocalDate.now());
|
||||||
|
sdf05.setTm(LocalTime.now().format(tmTimeFormatter));
|
||||||
|
sdf05.setPr(pr);
|
||||||
|
sdf05.setGenerationTime(Instant.now());
|
||||||
|
sdf05.setGenerationId(idGenerator.nextId());
|
||||||
|
sDf05Imdg.insert(sdf05);
|
||||||
|
|
||||||
|
ExportToFileRequest exportRequest = new ExportToFileRequest();
|
||||||
|
exportRequest.setSdfGroupId(sdf05.getGenerationId());
|
||||||
|
exportRequest.setNameOfTable("DF-05");
|
||||||
|
kafkaSender.sendRequestToQueue(Consts.EXPORT_PROCESS, exportRequest);
|
||||||
|
log.info("created sdf05.id {}, sent request to export", sdf05.getId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -10,10 +10,10 @@ import ru.clearing.classes.statics.data.registry.Registry;
|
||||||
import ru.clearing.classes.statics.data.sdf.SDf05;
|
import ru.clearing.classes.statics.data.sdf.SDf05;
|
||||||
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
import ru.spcex.clearing.imdg.IMDGDistributedNames;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
import ru.spcex.clearing.platform.messaging.domain.Consts;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.balance.ExportToFileRequest;
|
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportRequestWithRegistryId;
|
import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportRequestWithRegistryId;
|
||||||
import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportRequestWithSessionId;
|
import ru.spcex.clearing.platform.messaging.domain.cud.reports.ReportRequestWithSessionId;
|
||||||
import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender;
|
import ru.spcex.clearing.platform.messaging.service.sender.KafkaSender;
|
||||||
|
import ru.spcex.clearing.service.Sdf05Sender;
|
||||||
import ru.spcex.clearing.session.stage.ISessionStage;
|
import ru.spcex.clearing.session.stage.ISessionStage;
|
||||||
import ru.spcex.clearing.session.stage.StageResult;
|
import ru.spcex.clearing.session.stage.StageResult;
|
||||||
import ru.spcex.clearing.session.stage.Task;
|
import ru.spcex.clearing.session.stage.Task;
|
||||||
|
|
@ -28,11 +28,6 @@ import ru.spcex.platform.imdg.api.predicate.specific.RegistryCodeSqlBuilder;
|
||||||
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
import ru.spcex.platform.utils.enumeration.EnumMessage;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.time.Instant;
|
|
||||||
import java.time.LocalDate;
|
|
||||||
import java.time.LocalTime;
|
|
||||||
import java.time.format.DateTimeFormatter;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
import static ru.spcex.clearing.error.ClearingErrorInternal.SessionGeneralError;
|
import static ru.spcex.clearing.error.ClearingErrorInternal.SessionGeneralError;
|
||||||
|
|
@ -47,14 +42,16 @@ public class FinishingSession implements ISessionStage {
|
||||||
private final Imdg<SDf05> sDf05Imdg;
|
private final Imdg<SDf05> sDf05Imdg;
|
||||||
private final KafkaSender kafkaSender;
|
private final KafkaSender kafkaSender;
|
||||||
private final IMessageResolver msgResolver;
|
private final IMessageResolver msgResolver;
|
||||||
|
private final Sdf05Sender sdf05Sender;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public FinishingSession(ImdgProvider imdgProvider, KafkaSender kafkaSender, IMessageResolver msgResolver) {
|
public FinishingSession(ImdgProvider imdgProvider, KafkaSender kafkaSender, IMessageResolver msgResolver, Sdf05Sender sdf05Sender) {
|
||||||
this.imdgProvider = imdgProvider;
|
this.imdgProvider = imdgProvider;
|
||||||
this.registryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.class);
|
this.registryImdg = imdgProvider.getImdg(IMDGDistributedNames.Map_Registry, Registry.class);
|
||||||
this.sDf05Imdg = imdgProvider.getImdg(IMDGDistributedNames.Map_SDf05, SDf05.class);
|
this.sDf05Imdg = imdgProvider.getImdg(IMDGDistributedNames.Map_SDf05, SDf05.class);
|
||||||
this.kafkaSender = kafkaSender;
|
this.kafkaSender = kafkaSender;
|
||||||
this.msgResolver = msgResolver;
|
this.msgResolver = msgResolver;
|
||||||
|
this.sdf05Sender = sdf05Sender;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -91,7 +88,7 @@ public class FinishingSession implements ISessionStage {
|
||||||
return sResult;
|
return sResult;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sendSdf05();
|
sdf05Sender.sendSdf05("3");
|
||||||
StageResult<Collection<Registry>> res = new StageResult<>(null, true);
|
StageResult<Collection<Registry>> res = new StageResult<>(null, true);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
@ -136,24 +133,4 @@ public class FinishingSession implements ISessionStage {
|
||||||
log.trace("Selected {} registry's by sql: {}", result.size(), condition);
|
log.trace("Selected {} registry's by sql: {}", result.size(), condition);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private static DateTimeFormatter tmTimeFormatter = DateTimeFormatter.ofPattern("hh:mm:ss");
|
|
||||||
private void sendSdf05() {
|
|
||||||
SDf05 sdf05 = new SDf05();
|
|
||||||
sdf05.setId(imdgProvider.getImdgIdGenerator().nextId());
|
|
||||||
sdf05.setTp(BigDecimal.valueOf(753));
|
|
||||||
sdf05.setDt(LocalDate.now());
|
|
||||||
sdf05.setTm(LocalTime.now().format(tmTimeFormatter));
|
|
||||||
sdf05.setPr("3");
|
|
||||||
sdf05.setGenerationTime(Instant.now());
|
|
||||||
sdf05.setGenerationId(imdgProvider.getImdgIdGenerator().nextId());
|
|
||||||
sDf05Imdg.insert(sdf05);
|
|
||||||
|
|
||||||
ExportToFileRequest exportRequest = new ExportToFileRequest();
|
|
||||||
exportRequest.setSdfGroupId(sdf05.getGenerationId());
|
|
||||||
exportRequest.setNameOfTable("DF-05");
|
|
||||||
kafkaSender.sendRequestToQueue(Consts.EXPORT_PROCESS, exportRequest);
|
|
||||||
log.info("created sdf05.id {}, sent request to export", sdf05.getId());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,7 @@ public enum Task implements IEnumKey {
|
||||||
loadParty_LOCM("LOCM"), // Загрузка участников
|
loadParty_LOCM("LOCM"), // Загрузка участников
|
||||||
loadIssue_LOSC("LOSC"), // Загрузка инструментов
|
loadIssue_LOSC("LOSC"), // Загрузка инструментов
|
||||||
dbfExport_OUTV("OUTV"), // для dbf-exporter сообщение на создание файла ДФ-54
|
dbfExport_OUTV("OUTV"), // для dbf-exporter сообщение на создание файла ДФ-54
|
||||||
|
sdf05WithCode9Final("FDFF"), //Формирование ДФ-05 с кодом 9 (финальный)
|
||||||
;
|
;
|
||||||
|
|
||||||
private final String key;
|
private final String key;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue