package com.zteits.business.job; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.handler.annotation.XxlJob; import com.zteits.business.dao.TdCBusinessCouponDao; import com.zteits.business.dao.TdCBusinessCouponRuleParkRelDao; import com.zteits.business.domain.TdCBusinessCouponRuleParkRel; import com.zteits.clouds.api.dto.business.param.TdCBusinessCouponRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.List; /** * * * Copyright: Copyright (c) 2022 zteits * * @ClassName: CouponHandleJob.java * @Description: * @version: v1.0.0 * @author: wangxin * @date: 2022年09月02日 下午17:52:52 * Modification History: * Date Author Version Description *---------------------------------------------------------* * 2022年09月02日 wangxin v1.0.0 创建 */ // 老写法(xxl-job 1.9)是 `@JobHander(value=...) + extends IJobHandler + @Override execute(...)`, // 1.9 的 IJobHandler/JobHander/XxlJobLogger 在 2.x 已删除,这里按 2.x 写法改: // @JobHander(value="X") 从类上移到方法上 → @XxlJob("X")(该注解 @Target 是 METHOD); // XxlJobLogger.log("{0}--{1}",a,b) → XxlJobHelper.log("{}--{}",a,b)。 // 返回值沿用 ReturnT + String... params,与本仓其余 105 个 Job 保持一致 // (xxl-job 2.5 的 MethodJobHandler 会传 null 进可变参数,Job 内部再用 XxlJobHelper.getJobParam() 取参)。 @Component public class CouponHandleJob { @Autowired private TdCBusinessCouponRuleParkRelDao tdCBusinessCouponRuleParkRelDao; @Autowired private TdCBusinessCouponDao tdCBusinessCouponDao; @XxlJob("RemainingCouponCountHandlerJob") public ReturnT execute(String... params) throws Exception { List list = tdCBusinessCouponRuleParkRelDao.selectByExample(null); for (int i = 0; i < list.size(); i++) { TdCBusinessCouponRuleParkRel rel = list.get(i); TdCBusinessCouponRequest couponRequest = new TdCBusinessCouponRequest(); couponRequest.setDataState(1); couponRequest.setIssued(0); couponRequest.setCardRelParkNo(rel.getCardRelParkNo()); int CouponSize = tdCBusinessCouponDao.getRemainingCount(couponRequest); XxlJobHelper.log("{}--{}", rel.getCardRelParkNo(), CouponSize); rel.setCardNum(CouponSize); tdCBusinessCouponRuleParkRelDao.updateByPrimaryKeySelective(rel); } return ReturnT.SUCCESS; } }