CheckUserAttendenceCountWeeklyQuartz.java 2.01 KB
package com.xiniunet.quartz;

import com.alibaba.dubbo.common.utils.StringUtils;
import com.xiniunet.framework.security.Passport;
import com.xiniunet.framework.util.SettingUtil;
import com.xiniunet.service.railway.dal.UserMapper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.Calendar;

/**
 * 每周一重置用户每周上岗数据
 */
@Component
public class CheckUserAttendenceCountWeeklyQuartz {

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

    @Autowired
    private UserMapper userMapper;

    /**
     * 执行定时器,每周一零点10分执行一次
     */
    public void execute() {
        logger.warn("定时修改用户每周护航统计任务启动,cron表达式为0 10 0 ? * MON==========================");
        String quartzTask = SettingUtil.getProperty("", "enable.quartz.task");
        if (StringUtils.isEmpty(quartzTask) || quartzTask.toLowerCase().equals("false")) {
            logger.warn("定时任务CheckUserAttendenceCountWeeklyQuartz错误,该服务器未设置自动同步定时任务!");
            return;
        }
        Passport passport = new Passport();
        passport.setUserId(20201123L);
        passport.setTenantId(973848199737774088L);
        //判断是否是每月一号
        Calendar calendar = Calendar.getInstance();
        int day = calendar.get(Calendar.DAY_OF_MONTH);
        long result = 0;
        if (day == 1) {
            result = userMapper.updateWeeklyAndMonthly(passport);
            logger.error("定时修改用户每周护航统计任务结束,今天是周一并且是月1,更新了" + result + "条记录====================");

        } else {
            result = userMapper.updateWeekly(passport);
            logger.error("定时修改用户每周护航统计任务结束,更新了" + result + "条记录====================");

        }
        return;

    }

}