180 lines
5.1 KiB
Java
180 lines
5.1 KiB
Java
package com.hzs.third.job;
|
|
|
|
import com.hzs.bonus.settle.IMemberSettleBonusApi;
|
|
import com.hzs.common.core.utils.DateUtils;
|
|
import com.xxl.job.core.handler.annotation.XxlJob;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.apache.dubbo.config.annotation.DubboReference;
|
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
|
import org.springframework.stereotype.Component;
|
|
|
|
import java.time.temporal.ChronoUnit;
|
|
import java.util.Date;
|
|
|
|
/**
|
|
* @description: 每日奖金计算定时任务
|
|
* @author: sui q
|
|
* @time: 2023/4/10 14:19
|
|
* @classname: BonusSettleJob
|
|
* @package_name: com.hzs.third.job
|
|
* version 1.0.0
|
|
*/
|
|
@Component
|
|
@Slf4j
|
|
@ConditionalOnProperty(name = "xxl-job.start", havingValue = "true")
|
|
public class BonusSettleJob {
|
|
|
|
@DubboReference
|
|
IMemberSettleBonusApi memberBonusSettleApi;
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("backSettleBonus")
|
|
public void backupsSettleBonusEveryday() {
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.backupsSettleBonusEveryday();
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus")
|
|
public void autoSettleBonusEveryday() {
|
|
Date startDate = DateUtils.beforeDate(7, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus1")
|
|
public void autoSettleBonusEveryday1() {
|
|
Date startDate = DateUtils.beforeDate(6, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus2")
|
|
public void autoSettleBonusEveryday2() {
|
|
Date startDate = DateUtils.beforeDate(5, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus3")
|
|
public void autoSettleBonusEveryday3() {
|
|
Date startDate = DateUtils.beforeDate(4, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus4")
|
|
public void autoSettleBonusEveryday4() {
|
|
Date startDate = DateUtils.beforeDate(3, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus5")
|
|
public void autoSettleBonusEveryday5() {
|
|
Date startDate = DateUtils.beforeDate(2, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/**
|
|
* 奖金每天自动结算,计算前一天奖金
|
|
*
|
|
* @return: void
|
|
* @Author: sui q
|
|
* @Date: 2023/3/4 13:48
|
|
*/
|
|
@XxlJob("autoSettleBonus6")
|
|
public void autoSettleBonusEveryday6() {
|
|
Date startDate = DateUtils.beforeDate(1, ChronoUnit.DAYS, DateUtils.currentDate());
|
|
log.info("开始进行奖金结算");
|
|
memberBonusSettleApi.autoCalculateBonus(startDate);
|
|
}
|
|
|
|
/*
|
|
* @description: 自动公布奖金
|
|
* @author: sui q
|
|
* @date: 2023/4/24 14:26
|
|
* @param: null null
|
|
**/
|
|
@XxlJob("autoPublishBonus")
|
|
public void autoPublishBonusEveryday() {
|
|
log.info("开始进行奖金公布");
|
|
memberBonusSettleApi.autoPublishBonus();
|
|
log.info("奖金公布完成");
|
|
}
|
|
|
|
/*
|
|
* @description: 自动发放奖金
|
|
* @author: sui q
|
|
* @date: 2023/4/24 14:26
|
|
* @param: null null
|
|
**/
|
|
@XxlJob("autoGrantBonus")
|
|
public void autoGrantBonusEveryday() {
|
|
log.info("开始进行奖金发放");
|
|
memberBonusSettleApi.autoGrantBonus();
|
|
log.info("奖金发放完成");
|
|
}
|
|
|
|
/*
|
|
* @description: 自动结算每日业绩,每月业绩,用于统计分析
|
|
* @author: sui q
|
|
* @date: 2023/9/1 9:53
|
|
* @param: null null
|
|
**/
|
|
@XxlJob("autoSettleMember")
|
|
public void autoSettleMemberAchieveEveryday() {
|
|
log.info("开始进行会员业绩计算");
|
|
memberBonusSettleApi.insertCuMemberAchieveByEveryDay();
|
|
}
|
|
|
|
}
|