From 8ba0212f372f529565de9c8095bb68f116d007a5 Mon Sep 17 00:00:00 2001 From: Chopper Date: Mon, 8 Nov 2021 10:35:38 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E5=88=A0=E9=99=A4=E4=BC=98?= =?UTF-8?q?=E6=83=A0=E5=88=B8=E5=AD=98=E5=9C=A8=E6=97=B6=E9=97=B4=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E9=97=AE=E9=A2=98=EF=BC=8C=E4=BF=AE=E6=AD=A3=E8=BF=99?= =?UTF-8?q?=E4=B8=AA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../timetask/handler/impl/coupon/CouponExecute.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/consumer/src/main/java/cn/lili/timetask/handler/impl/coupon/CouponExecute.java b/consumer/src/main/java/cn/lili/timetask/handler/impl/coupon/CouponExecute.java index 06f31116..85d4ef23 100644 --- a/consumer/src/main/java/cn/lili/timetask/handler/impl/coupon/CouponExecute.java +++ b/consumer/src/main/java/cn/lili/timetask/handler/impl/coupon/CouponExecute.java @@ -1,5 +1,6 @@ package cn.lili.timetask.handler.impl.coupon; +import cn.lili.common.utils.DateUtil; import cn.lili.modules.promotion.entity.dos.MemberCoupon; import cn.lili.modules.promotion.entity.enums.MemberCouponStatusEnum; import cn.lili.modules.promotion.service.MemberCouponService; @@ -8,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.Calendar; import java.util.Date; /** @@ -22,7 +24,7 @@ public class CouponExecute implements EveryDayExecute { /** * 过期常量,过期后或者使用后一定时间内,删除无效的优惠券,物理删除 */ - static final int EXPIRATION_DAY = 7; + static final int EXPIRATION_DAY = 3; @Autowired private MemberCouponService memberCouponService; @@ -40,12 +42,16 @@ public class CouponExecute implements EveryDayExecute { .set(MemberCoupon::getMemberCouponStatus, MemberCouponStatusEnum.EXPIRE.name()); this.memberCouponService.update(updateWrapper); + Calendar calendar = Calendar.getInstance(); + calendar.set(Calendar.DAY_OF_MONTH,calendar.get(Calendar.DAY_OF_MONTH)+EXPIRATION_DAY); + Date removeTime = calendar.getTime(); //删除过期/已使用的优惠券 LambdaUpdateWrapper deleteWrapper = new LambdaUpdateWrapper() //如果结束时间小于 当前时间增加指定删除日期,则删除 - .le(MemberCoupon::getEndTime, System.currentTimeMillis() + 24 * 60 * 60 * 1000 * EXPIRATION_DAY); + .le(MemberCoupon::getEndTime, removeTime); this.memberCouponService.remove(deleteWrapper); + } }