补偿机制

This commit is contained in:
2024-12-27 16:15:48 +08:00
parent 3a15793bfb
commit fae9df231c
2 changed files with 69 additions and 4 deletions

View File

@@ -0,0 +1,53 @@
package com.sqx.modules.job.task;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.sqx.modules.discSpinning.controller.DiscSpinningController;
import com.sqx.modules.discSpinning.entity.DiscSpinning;
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
import com.sqx.modules.discSpinning.service.DiscSpinningRecordService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
@Component("SpinningTask3")
public class SpinningTask3 implements ITask {
@Resource
private DiscSpinningController spinningController;
@Resource
private DiscSpinningRecordService recordService;
private Logger logger = LoggerFactory.getLogger(getClass());
@Override
public void run(String params) {
logger.info("大转盘到账补偿机制");
// 获取当前时间
Date now = DateUtil.date();
// 获取五分钟前的时间
Date fiveMinutesAgo = DateUtil.offsetMinute(now, -5);
Date tenMinutesAgo = DateUtil.offsetMinute(now, -10);
// 将五分钟前的时间转换为指定格式的时间字符串,这里采用常见的"yyyy-MM-dd HH:mm:ss"格式
String fiveMinutesAgoStr = DateUtil.format(fiveMinutesAgo, "yyyy-MM-dd HH:mm:ss");
String tenMinutesAgoStr = DateUtil.format(tenMinutesAgo, "yyyy-MM-dd HH:mm:ss");
QueryWrapper<DiscSpinningRecord> recordQueryWrapper = new QueryWrapper<>();
recordQueryWrapper.isNull("target");
recordQueryWrapper.isNull("target_id");
recordQueryWrapper.eq("type",2);
//大于
recordQueryWrapper.gt("create_time",fiveMinutesAgoStr);
//小于
recordQueryWrapper.lt("create_time", tenMinutesAgoStr);
List<DiscSpinningRecord> list = recordService.list(recordQueryWrapper);
for (DiscSpinningRecord record : list) {
spinningController.receive1(record);
}
logger.info("大转盘到账补偿机制");
}
}