52 lines
1.4 KiB
Java
52 lines
1.4 KiB
Java
![]() |
package com.ruoyi.task.bonus;
|
|||
|
|
|||
|
import com.ruoyi.common.utils.collection.CollectionUtils;
|
|||
|
import com.ruoyi.ss.bonus.domain.BonusQuery;
|
|||
|
import com.ruoyi.ss.bonus.domain.BonusVO;
|
|||
|
import com.ruoyi.ss.bonus.domain.enums.BonusStatus;
|
|||
|
import com.ruoyi.ss.bonus.service.BonusService;
|
|||
|
import lombok.extern.slf4j.Slf4j;
|
|||
|
import org.springframework.beans.factory.annotation.Autowired;
|
|||
|
import org.springframework.stereotype.Component;
|
|||
|
|
|||
|
import java.time.LocalDateTime;
|
|||
|
import java.util.List;
|
|||
|
|
|||
|
/**
|
|||
|
* @author wjh
|
|||
|
* 2024/9/27
|
|||
|
*/
|
|||
|
@Component
|
|||
|
@Slf4j
|
|||
|
public class BonusTask {
|
|||
|
|
|||
|
@Autowired
|
|||
|
private BonusService bonusService;
|
|||
|
|
|||
|
/**
|
|||
|
* 分成打款
|
|||
|
*/
|
|||
|
public void payBonus() {
|
|||
|
// 查询预计分成时间当前时间之前,且为待分成的分成单
|
|||
|
BonusQuery query = new BonusQuery();
|
|||
|
query.setStatus(BonusStatus.WAIT_DIVIDE.getStatus());
|
|||
|
query.setPrePayTimeEnd(LocalDateTime.now());
|
|||
|
List<BonusVO> list = bonusService.selectBonusList(query);
|
|||
|
|
|||
|
if (CollectionUtils.isEmptyElement(list)) {
|
|||
|
log.info("暂无待分成的分成单");
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
for (BonusVO bonus : list) {
|
|||
|
try {
|
|||
|
bonusService.payBonus(bonus);
|
|||
|
} catch (Exception e) {
|
|||
|
log.warn("分成打款失败:id={}, e={}", bonus.getId(), e.getMessage());
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
}
|