fix:执行计划

问题:计划执行的时候重试勾选了,导致redis中存在重试次数数据;在后续执行过程中,计划取消了勾选重试次数,导致值为0,当前循环次数出现负数
目前解决:增加值判断,如果出现负数,设置当前循环次数为0
hz_1122
darkmanlee 2025-01-07 14:20:19 +08:00
parent ef393d13fe
commit 5d95eda546
1 changed files with 5 additions and 2 deletions

View File

@ -1288,8 +1288,11 @@ public class AtuPlanTaskApiServiceImpl extends AbstractExcelService<AtuPlanTask>
Object o = redisTemplate.opsForHash().get(RedisConstant.PLAN_BATCH_RETRY_COUNT, atuTaskExecDto.getBatchId());
if (null != o) {
int count = Integer.parseInt(o.toString());
// TODO: 如何是-3
atuTaskExecDto.setCurrentRetryNum(atuTaskExecDto.getFailRetryNum() - count);
// TODO: 计划执行的时候重试勾选了导致redis中存在重试次数数据在后续执行过程中计划取消了勾选重试次数导致值为0出现了负数
int currentRetryNum = atuTaskExecDto.getFailRetryNum() - count;
if (currentRetryNum > 0) {
atuTaskExecDto.setCurrentRetryNum(currentRetryNum);
}
}
amqpAdmin.declareQueue(new Queue(queueName));
amqpTemplate.convertAndSend(queueName, JSONUtil.toJsonStr(atuTaskExecDto));