| 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.SitesService; | 
| 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; | 
|   | 
|     @Autowired | 
|     private SitesService sitesService; | 
|   | 
|     /** | 
|      * @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(); | 
|     } | 
|   | 
|   | 
|     /** | 
|      * 站点车辆满架率预警 | 
|      * @throws Exception | 
|      */ | 
|     @Scheduled(fixedDelay = 1000L * 60L * 10L) | 
|     public void siteReserves() throws Exception { | 
|         log.info("=====================开始 站点车辆满架率预警======================="); | 
|         sitesService.siteReservesNotice();; | 
|         log.info("=====================结束 站点车辆满架率预警======================="); | 
|     } | 
|   | 
| } |