forked from angelo/java-retail-app
## 添加秒结补偿定时任务;
This commit is contained in:
parent
b36f49ca1d
commit
a356b55823
|
@ -40,4 +40,9 @@ public interface IMemberSettleBonusApi {
|
|||
**/
|
||||
Boolean chargeBackSaOrder(SaOrder saOrder);
|
||||
|
||||
/**
|
||||
* 自动补偿秒结处理
|
||||
*/
|
||||
void calculateCuMemberRetailRangeBonusBySaOrder();
|
||||
|
||||
}
|
||||
|
|
|
@ -3,17 +3,22 @@ package com.hzs.bonus.bonus.provider;
|
|||
import com.hzs.bonus.achieve.service.ICuMemberAchieveService;
|
||||
import com.hzs.bonus.achieve.service.ICuMemberMonthAchieveService;
|
||||
import com.hzs.bonus.bonus.service.IBonusGrantService;
|
||||
import com.hzs.bonus.bonus.service.IBonusSettleService;
|
||||
import com.hzs.bonus.bonus.service.ICuMemberBonusService;
|
||||
import com.hzs.bonus.bonus.service.ICuMemberRetailLogService;
|
||||
import com.hzs.bonus.settle.IMemberSettleBonusApi;
|
||||
import com.hzs.common.core.domain.R;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.domain.member.bonus.CuMemberRetailLog;
|
||||
import com.hzs.common.domain.sale.order.SaOrder;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.dubbo.config.annotation.DubboService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.time.temporal.ChronoUnit;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 奖金计算
|
||||
|
@ -25,11 +30,15 @@ public class MemberSettleBonusProvider implements IMemberSettleBonusApi {
|
|||
@Autowired
|
||||
private ICuMemberMonthAchieveService iCuMemberMonthAchieveService;
|
||||
@Autowired
|
||||
private IBonusSettleService iBonusSettleService;
|
||||
@Autowired
|
||||
private IBonusGrantService iBonusGrantService;
|
||||
@Autowired
|
||||
private ICuMemberBonusService iCuMemberBonusService;
|
||||
@Autowired
|
||||
private ICuMemberAchieveService iCuMemberAchieveService;
|
||||
@Autowired
|
||||
private ICuMemberRetailLogService iCuMemberRetailLogService;
|
||||
|
||||
@Override
|
||||
public R<Boolean> autoCalculateBonus(Date settleDate) {
|
||||
|
@ -88,4 +97,24 @@ public class MemberSettleBonusProvider implements IMemberSettleBonusApi {
|
|||
return iCuMemberAchieveService.chargeBackSaOrder(saOrder);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void calculateCuMemberRetailRangeBonusBySaOrder() {
|
||||
List<CuMemberRetailLog> cuMemberRetailLogs = iCuMemberRetailLogService.queryCuMemberRetailLog();
|
||||
if (cuMemberRetailLogs.size() > 0) {
|
||||
List<CuMemberRetailLog> successLogList = new ArrayList<>();
|
||||
try {
|
||||
for (CuMemberRetailLog cuMemberRetailLog : cuMemberRetailLogs) {
|
||||
iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(cuMemberRetailLog.getOrderCode());
|
||||
successLogList.add(cuMemberRetailLog);
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
if (successLogList.size() > 0) {
|
||||
iCuMemberRetailLogService.updateCuMemberRetailLogByList(successLogList);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -131,4 +131,13 @@ public class BonusSettleJob {
|
|||
iMemberSettleBonusApi.insertCuMemberAchieveByEveryDay();
|
||||
}
|
||||
|
||||
/**
|
||||
* 自动补偿秒结处理
|
||||
*/
|
||||
@XxlJob("autoSecondBonus")
|
||||
public void autoSettleMemberBonusBySecond() {
|
||||
log.info("开始进行会员业绩计算");
|
||||
iMemberSettleBonusApi.calculateCuMemberRetailRangeBonusBySaOrder();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue