未支付订单 记录 删除

This commit is contained in:
wangw 2025-04-29 16:52:37 +08:00
parent 96ed240fc2
commit 807ee067d3
1 changed files with 65 additions and 0 deletions

View File

@ -0,0 +1,65 @@
package com.sqx.modules.job.task;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.thread.ThreadUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.sqx.modules.discSpinning.entity.DiscSpinningRecord;
import com.sqx.modules.orders.dao.OrdersDao;
import com.sqx.modules.orders.entity.Orders;
import com.sqx.modules.orders.service.OrdersService;
import com.sqx.modules.pay.dao.PayDetailsDao;
import com.sqx.modules.pay.entity.PayDetails;
import com.sqx.modules.pay.service.PayDetailsService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Profile;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
*/
@Slf4j
@Component
@EnableScheduling
@Profile({"prod"})
public class OrderTask {
@Resource
private OrdersService ordersService;
@Resource
private PayDetailsDao payDetailsDao;
@Scheduled(cron = "0 1 * * * ? ")
public void record() {
record1();
}
public void record1() {
log.info("未支付订单删除开始");
// 获取3小时前的时间
Date oneDay = DateUtil.offsetHour(DateUtil.date(), -3);
// 将五分钟前的时间转换为指定格式的时间字符串这里采用常见的"yyyy-MM-dd HH:mm:ss"格式
String oneDayStr = DateUtil.format(oneDay, "yyyy-MM-dd HH:mm:ss");
LambdaQueryWrapper<Orders> queryWrapper = new LambdaQueryWrapper<>();
//小于等于
queryWrapper.le(Orders::getCreateTime, oneDayStr);
queryWrapper.ne(Orders::getStatus, 1);
ordersService.remove(queryWrapper);
log.info("未支付订单记录开始");
LambdaQueryWrapper<PayDetails> queryWrapper2 = new LambdaQueryWrapper<>();
//小于等于
queryWrapper2.le(PayDetails::getCreateTime, oneDayStr);
queryWrapper2.ne(PayDetails::getState, 1);
payDetailsDao.delete(queryWrapper2);
log.info("未支付订单记录删除结束");
}
}