package com.doumee.job; import com.doumee.core.job.BaseJob; import com.doumee.core.job.JobContext; import com.doumee.core.job.JobParam; import com.doumee.service.business.OrdersService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 超时未支付订单自动取消 * 根据运营配置 AUTO_CANCEL_TIME(分钟),取消超时未支付订单 * @author rk * @date 2026/04/22 */ @Slf4j @Component("cancelTimeoutOrderJob") public class CancelTimeoutOrderJob extends BaseJob { @Autowired private OrdersService ordersService; @Override public JobContext execute(JobParam param) { JobContext jobContext = new JobContext(); try { int count = ordersService.cancelTimeoutUnpaidOrders(); jobContext.setHandleSuccessSize(count); jobContext.setHandleTotalSize(count); jobContext.setContext("超时未支付订单自动取消完成,共取消" + count + "单"); } catch (Exception e) { log.error("超时取消订单任务异常", e); } return jobContext; } }