package com.doumee.task; 
 | 
  
 | 
  
 | 
import com.doumee.biz.system.SystemDictDataBiz; 
 | 
import com.doumee.core.constants.Constants; 
 | 
import com.doumee.core.exception.BusinessException; 
 | 
import com.doumee.core.utils.DateUtil; 
 | 
import com.doumee.dao.business.model.Goodsorder; 
 | 
import com.doumee.service.business.GoodsorderService; 
 | 
import com.doumee.service.business.MemberRidesService; 
 | 
import com.doumee.service.business.WxBillService; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.beans.factory.annotation.Autowired; 
 | 
import org.springframework.scheduling.annotation.EnableScheduling; 
 | 
import org.springframework.scheduling.annotation.Scheduled; 
 | 
import org.springframework.stereotype.Component; 
 | 
import org.springframework.util.CollectionUtils; 
 | 
  
 | 
import java.util.Date; 
 | 
import java.util.List; 
 | 
  
 | 
/** 
 | 
 * 定时任务 
 | 
 * @author jiangping 
 | 
 * @date 2021-10-10 14:40:35 
 | 
 * https://www.bejson.com/othertools/cron/  cron 表达式生成地址 
 | 
 */ 
 | 
@Component 
 | 
@EnableScheduling 
 | 
@Slf4j 
 | 
public class ScheduleTool { 
 | 
  
 | 
  
 | 
  
 | 
    @Autowired 
 | 
    private SystemDictDataBiz systemDictDataBiz; 
 | 
  
 | 
    @Autowired 
 | 
    private WxBillService wxBillService; 
 | 
  
 | 
    @Autowired 
 | 
    private GoodsorderService goodsorderService; 
 | 
  
 | 
  
 | 
    @Autowired 
 | 
    private MemberRidesService memberRidesService; 
 | 
    /** 
 | 
     * @throws Exception 
 | 
     */ 
 | 
    @Scheduled(cron = "0 0 11 * * ? ") 
 | 
    public void syncStudent() throws Exception { 
 | 
        //前一天的數據 
 | 
        Date ydate = DateUtil.addDaysToDate(new Date(), -1); 
 | 
        wxBillService.getWxBill(ydate); 
 | 
  
 | 
    } 
 | 
    /** 
 | 
     * 測試 
 | 
     * @throws Exception 
 | 
     */ 
 | 
    @Scheduled(cron = "0 0 21 * * ? ") 
 | 
    public void getYesterdayBill() throws Exception { 
 | 
        log.info("=====================开始每天自动结算======================="); 
 | 
        goodsorderService.autoCloseOrder(); 
 | 
        log.info("=====================结束每天自动结算======================="); 
 | 
  
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 定时刷新骑行中的数充值未开锁失败 
 | 
     * 30 秒刷新一次 
 | 
     * @throws Exception 
 | 
     */ 
 | 
    @Scheduled(cron = "0/30 * * * * ? ") 
 | 
    public void autoRefreshLockStatus() throws Exception { 
 | 
        log.info("=====================开始每天自动结算======================="); 
 | 
        memberRidesService.autoRefreshLockStatus(); 
 | 
        log.info("=====================结束每天自动结算======================="); 
 | 
  
 | 
    } 
 | 
} 
 |