package cc.mrbird.febs.mall.quartz; import cc.mrbird.febs.common.enumerates.AgentLevelEnum; import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; import cc.mrbird.febs.common.enumerates.OrderStatusEnum; import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.MallUtils; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.MallMemberMapper; import cc.mrbird.febs.mall.mapper.MallMoneyFlowMapper; import cc.mrbird.febs.mall.service.HappyActivityService; import cc.mrbird.febs.mall.service.IApiMallMemberService; import cc.mrbird.febs.mall.service.IApiMallMemberWalletService; import cc.mrbird.febs.mall.service.IMemberProfitService; import cc.mrbird.febs.mall.service.impl.CommonService; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.Date; import java.util.List; @Slf4j @Component @ConditionalOnProperty(prefix = "system", name = "job", havingValue = "true") public class ProfitJob { @Resource private HappyActivityService happyActivityService; /** * 活动时间结束更新 * 一分钟运行一次 */ @Scheduled(cron = "0 0/1 * * * ? ") public void activityEnd() { happyActivityService.activityEnd(); } /** * 活动时间开始更新 * 一分钟运行一次 */ @Scheduled(cron = "0 0/1 * * * ? ") public void activityStart() { happyActivityService.activityStart(); } /** * 订单失效 * 五分钟运行一次 */ @Scheduled(cron = "0 0/5 * * * ? ") public void overtimeJob() { happyActivityService.overtimeJob(); } }