springBoot定时器使用

package com.zorasoft.workstack.web.infrastructures.schedulings;

import com.zorasoft.workstack.web.domains.services.consumptionBillDetailsService.ConsumptionBillDetailsService;
import com.zorasoft.workstack.web.domains.services.consumptionBillService.ConsumptionBillService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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 java.text.SimpleDateFormat;
import java.util.Calendar;

/**
 * @ClassName BillingStatisticsJob
 * @Description 根据计费日志统计每月的账单
 * @Author TangYinJian
 * @Date 2019-05-30 12:13:14
 * @Version 1.0
 **/
@Component
@EnableScheduling
public class BillingStatisticsJob {

    private final static Logger logger = LoggerFactory.getLogger(BillingStatisticsJob.class);

    @Autowired
    private ConsumptionBillDetailsService consumptionBillDetailsService;

    @Autowired
    private ConsumptionBillService consumptionBillService;

    /**每月1-3日凌晨2点执行一次*/
    /**每月循环多次执行,避免因外部原因导致某次统计失败*/
    /*@Scheduled(cron = "0 0 2 1-3 * ?")*/
    //@Scheduled(cron = "0/3 * * * * ?")
    public void billingStatistics(){
        //获取统计的年月
        /*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Calendar calendar = Calendar.getInstance();
        String year = String.valueOf(calendar.get(Calendar.YEAR));
        String month = String.valueOf(calendar.get(Calendar.MONTH));
        month = month.length() == 1?"0"+month:month;
        String billingMonth = year + "-" + month;
        //判断上月是否已统计过
        boolean isStatistics = consumptionBillService.isStatistics(billingMonth);
        //如果未统计则统计账单
        if(!isStatistics){
            try {
                consumptionBillDetailsService.billingStatistics2();
                logger.info(sdf.format(calendar.getTime())+":************** 账单统计成功 *******************");
            } catch (Exception e) {
                logger.error(sdf.format(calendar.getTime())+":************** 账单统计失败! *******************");
                logger.error(e.getMessage(), e);
            }
        }*/
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值