aa
jiangping
2023-11-03 71ab5039e971a097c74af1f4cfd6ef3b7ef50f93
server/platform/src/main/java/com/doumee/task/ScheduleTool.java
@@ -2,14 +2,23 @@
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;
/**
 * 定时任务
@@ -19,20 +28,31 @@
 */
@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 {
//    @Scheduled(cron = "0 0 11 * * ? ")
    public void getWxBill() throws Exception {
        //前一天的數據
        Date ydate = DateUtil.addDaysToDate(new Date(), -1);
        wxBillService.getWxBill(ydate);
@@ -42,10 +62,35 @@
     * 測試
     * @throws Exception
     */
//    @Scheduled(fixedDelay = 1000*60)
    @Scheduled(cron = "0 0 21 * * ? ")
    public void getYesterdayBill() throws Exception {
        Date ydate = DateUtil.addDaysToDate(new Date(), -1);
        wxBillService.getWxBill(ydate);
        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("=====================结束 站点车辆满架率预警=======================");
    }
}