src/main/java/cc/mrbird/febs/mall/mapper/MallMemberCouponMapper.java
@@ -3,12 +3,16 @@ import cc.mrbird.febs.mall.dto.MallMemberCouponDto; import cc.mrbird.febs.mall.entity.MallMemberCoupon; import cc.mrbird.febs.mall.vo.MallMemberCouponVo; import cn.hutool.core.date.DateTime; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import java.util.List; public interface MallMemberCouponMapper extends BaseMapper<MallMemberCoupon> { IPage<MallMemberCouponVo> selectListInPage(IPage<MallMemberCouponVo> page, @Param("record") MallMemberCouponDto mallMemberCouponDto); List<MallMemberCoupon> selectListByExpireTime(@Param("date")DateTime date); } src/main/java/cc/mrbird/febs/mall/quartz/WxxcxJob.java
@@ -4,7 +4,11 @@ import cc.mrbird.febs.common.utils.HttpCurlUtil; import cc.mrbird.febs.common.utils.RedisUtils; import cc.mrbird.febs.common.utils.SpringContextHolder; import cc.mrbird.febs.mall.entity.MallMemberCoupon; import cc.mrbird.febs.mall.mapper.MallMemberCouponMapper; import cc.mrbird.febs.pay.util.WechatConfigure; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; @@ -19,6 +23,7 @@ import javax.annotation.Resource; import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; @Slf4j @@ -30,6 +35,8 @@ @Autowired private RedisUtils redisUtils; @Autowired private MallMemberCouponMapper mallMemberCouponMapper; @Resource RestTemplate restTemplate; // @Autowired @@ -66,4 +73,17 @@ } @Scheduled(cron = "0 0 0/1 * * ? ") public void expireCoupon() { List<MallMemberCoupon> mallMemberCoupons = mallMemberCouponMapper.selectListByExpireTime(DateUtil.date()); if(CollUtil.isEmpty(mallMemberCoupons)){ return; } for(MallMemberCoupon mallMemberCoupon : mallMemberCoupons){ mallMemberCoupon.setState(3); mallMemberCouponMapper.updateById(mallMemberCoupon); } } } src/main/resources/mapper/modules/MallMemberCouponMapper.xml
@@ -22,4 +22,11 @@ order by a.CREATED_TIME desc </select> <select id="selectListByExpireTime" resultType="cc.mrbird.febs.mall.entity.MallMemberCoupon"> select a.* from mall_member_coupon a where a.expire_time <= #{date} </select> </mapper>