This commit is contained in:
parent
9b249b4f4f
commit
8a434848f0
7 changed files with 21 additions and 5 deletions
|
|
@ -30,7 +30,7 @@ public class PipelineStarterConfig {
|
||||||
PackageRecordsService packageRecordsService,
|
PackageRecordsService packageRecordsService,
|
||||||
PhonesMapMapper phonesMapMapper) {
|
PhonesMapMapper phonesMapMapper) {
|
||||||
return (setupParam) -> switch (setupParam.mode()) {
|
return (setupParam) -> switch (setupParam.mode()) {
|
||||||
case DEFAULT ->
|
case DEFAULT, RESEND ->
|
||||||
new KickPipeLineDefaultImpl(setupParam, userPackageMapper, packageRecordsService, creditTrackerSettings);
|
new KickPipeLineDefaultImpl(setupParam, userPackageMapper, packageRecordsService, creditTrackerSettings);
|
||||||
case RESTORE ->
|
case RESTORE ->
|
||||||
new KickPipeLineDefaultImpl(setupParam, userPackageMapper, packageRecordsService, creditTrackerSettings);
|
new KickPipeLineDefaultImpl(setupParam, userPackageMapper, packageRecordsService, creditTrackerSettings);
|
||||||
|
|
|
||||||
|
|
@ -3,5 +3,6 @@ package ru.nbch.credit_tracker.model.impl;
|
||||||
public enum PackageVariable {
|
public enum PackageVariable {
|
||||||
packageId,
|
packageId,
|
||||||
cacheMisses,
|
cacheMisses,
|
||||||
cacheHits
|
cacheHits,
|
||||||
|
mode
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -62,7 +62,7 @@ public class UpdatingFidAndPdService {
|
||||||
List<UserPackage> packagesRepeated = userPackageMapper.findForRepeatedPackages();
|
List<UserPackage> packagesRepeated = userPackageMapper.findForRepeatedPackages();
|
||||||
packagesRepeated.forEach(userPackage -> {
|
packagesRepeated.forEach(userPackage -> {
|
||||||
Long packageId = userPackage.getId();
|
Long packageId = userPackage.getId();
|
||||||
SetupParam setupParam = new SetupParam(packageId, null, PipelineMode.DEFAULT);
|
SetupParam setupParam = new SetupParam(packageId, null, PipelineMode.RESEND);
|
||||||
try {
|
try {
|
||||||
Pipeline makeXmlByCache = pipelinePackageManager.build(setupParam);
|
Pipeline makeXmlByCache = pipelinePackageManager.build(setupParam);
|
||||||
pipelinePackageOrchestrator.startOrDelay(makeXmlByCache, packageId);
|
pipelinePackageOrchestrator.startOrDelay(makeXmlByCache, packageId);
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ import ru.nbch.credit_tracker.model.impl.PackageVariable;
|
||||||
import ru.nbch.credit_tracker.model.impl.SignalXmlFilePayload;
|
import ru.nbch.credit_tracker.model.impl.SignalXmlFilePayload;
|
||||||
import ru.nbch.credit_tracker.service.MonitoringErrorProcesingService;
|
import ru.nbch.credit_tracker.service.MonitoringErrorProcesingService;
|
||||||
import ru.nbch.credit_tracker.service.signal.SignalRestService;
|
import ru.nbch.credit_tracker.service.signal.SignalRestService;
|
||||||
|
import ru.nbch.credit_tracker.service.task.impl.PipelineMode;
|
||||||
import ru.nbch.credit_tracker.service.task.impl.XmlMergeCoordinator;
|
import ru.nbch.credit_tracker.service.task.impl.XmlMergeCoordinator;
|
||||||
import ru.nbch.credit_tracker.utils.error.ExceptionUtils;
|
import ru.nbch.credit_tracker.utils.error.ExceptionUtils;
|
||||||
|
|
||||||
|
|
@ -125,7 +126,12 @@ public class PipelinePackageOrchestrator {
|
||||||
log.trace("Signal file by path: {} is completed", res.signalXmlFilePath());
|
log.trace("Signal file by path: {} is completed", res.signalXmlFilePath());
|
||||||
boolean success = signalRestService.setupMonitoring(res.signalXmlFilePath());
|
boolean success = signalRestService.setupMonitoring(res.signalXmlFilePath());
|
||||||
if (success) {
|
if (success) {
|
||||||
|
PipelineMode mode = ctx.get(PackageVariable.mode);
|
||||||
|
if (mode != null && mode.equals(PipelineMode.DEFAULT)) {
|
||||||
userPackageMapper.updatePackageOnMonitoringSuccess(packageId, LocalDateTime.now());
|
userPackageMapper.updatePackageOnMonitoringSuccess(packageId, LocalDateTime.now());
|
||||||
|
} else {
|
||||||
|
userPackageMapper.updatePackageOnMonitoringSuccess(packageId, null);
|
||||||
|
}
|
||||||
monitoringErrorProcesingService.findErrors(packageId);
|
monitoringErrorProcesingService.findErrors(packageId);
|
||||||
} else {
|
} else {
|
||||||
userPackageMapper.setRejectedStatus(packageId, RejectedStatus.ERROR.getKey());
|
userPackageMapper.setRejectedStatus(packageId, RejectedStatus.ERROR.getKey());
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ import ru.nbch.credit_tracker.utils.error.ExceptionUtils;
|
||||||
public abstract class KickPipeLine implements IPipeLineStarter<SubjectPayload> {
|
public abstract class KickPipeLine implements IPipeLineStarter<SubjectPayload> {
|
||||||
private final Logger log = LoggerFactory.getLogger(getClass());
|
private final Logger log = LoggerFactory.getLogger(getClass());
|
||||||
protected final Long packageId;
|
protected final Long packageId;
|
||||||
|
protected final PipelineMode mode;
|
||||||
protected final UserPackageMapper userPackageMapper;
|
protected final UserPackageMapper userPackageMapper;
|
||||||
protected final PackageRecordsService packageRecordsService;
|
protected final PackageRecordsService packageRecordsService;
|
||||||
protected final CreditTrackerSettings creditTrackerSettings;
|
protected final CreditTrackerSettings creditTrackerSettings;
|
||||||
|
|
@ -41,6 +42,7 @@ public abstract class KickPipeLine implements IPipeLineStarter<SubjectPayload> {
|
||||||
this.packageRecordsService = packageRecordsService;
|
this.packageRecordsService = packageRecordsService;
|
||||||
this.creditTrackerSettings = creditTrackerSettings;
|
this.creditTrackerSettings = creditTrackerSettings;
|
||||||
this.BATCH_SIZE = creditTrackerSettings.getPipeline().subjectBatchSize();
|
this.BATCH_SIZE = creditTrackerSettings.getPipeline().subjectBatchSize();
|
||||||
|
this.mode = setupParam.mode();
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class PipelineStarterException extends SignalClientException {
|
private static class PipelineStarterException extends SignalClientException {
|
||||||
|
|
@ -62,6 +64,7 @@ public abstract class KickPipeLine implements IPipeLineStarter<SubjectPayload> {
|
||||||
context.store(PackageVariable.packageId, packageId);
|
context.store(PackageVariable.packageId, packageId);
|
||||||
context.store(PackageVariable.cacheMisses, new AtomicInteger());
|
context.store(PackageVariable.cacheMisses, new AtomicInteger());
|
||||||
context.store(PackageVariable.cacheHits, new AtomicInteger());
|
context.store(PackageVariable.cacheHits, new AtomicInteger());
|
||||||
|
context.store(PackageVariable.mode, mode);
|
||||||
int limit = BATCH_SIZE;
|
int limit = BATCH_SIZE;
|
||||||
UserPackage userPackage = userPackageMapper.findPackage(packageId);
|
UserPackage userPackage = userPackageMapper.findPackage(packageId);
|
||||||
List<PackagesRecordsMap> page = nextPage(limit);
|
List<PackagesRecordsMap> page = nextPage(limit);
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ package ru.nbch.credit_tracker.service.task.impl;
|
||||||
*/
|
*/
|
||||||
public enum PipelineMode {
|
public enum PipelineMode {
|
||||||
DEFAULT,
|
DEFAULT,
|
||||||
|
RESEND,
|
||||||
RESTORE,
|
RESTORE,
|
||||||
REPEATED_RESTORE,
|
REPEATED_RESTORE,
|
||||||
RECALC_PERSONAL_DATA,
|
RECALC_PERSONAL_DATA,
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,12 @@
|
||||||
|
|
||||||
<update id="updatePackageOnMonitoringSuccess">
|
<update id="updatePackageOnMonitoringSuccess">
|
||||||
UPDATE signals_user_packages
|
UPDATE signals_user_packages
|
||||||
SET monitoring_at = #{monitoringAt}, status = 'ON_MONITORING', fid_changed = null
|
SET
|
||||||
|
<if test="monitoringAt != null">
|
||||||
|
monitoring_at = #{monitoringAt},
|
||||||
|
</if>
|
||||||
|
status = 'ON_MONITORING',
|
||||||
|
fid_changed = null
|
||||||
WHERE id = #{id}
|
WHERE id = #{id}
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue