成本模块
This commit is contained in:
54
klp-wms/src/main/java/com/klp/task/CostCoilDailyTask.java
Normal file
54
klp-wms/src/main/java/com/klp/task/CostCoilDailyTask.java
Normal file
@@ -0,0 +1,54 @@
|
||||
package com.klp.task;
|
||||
|
||||
import com.klp.service.ICostCoilDailyService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* 成本日统计定时任务
|
||||
*
|
||||
* 每天凌晨 2 点执行:
|
||||
* 1. 按钢卷维度生成前一日的日成本记录;
|
||||
* 2. 按入场钢卷号维度生成前一日的日成本记录。
|
||||
*
|
||||
* 说明:
|
||||
* - 具体的计算逻辑在 {@link ICostCoilDailyService#calculateDailyCost(LocalDate)} 和
|
||||
* {@link ICostCoilDailyService#calculateDailyCostByEnterCoilNo(LocalDate)} 中实现。
|
||||
* - 当前任务只负责在固定时间触发这两个方法。
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Component
|
||||
public class CostCoilDailyTask {
|
||||
|
||||
private final ICostCoilDailyService costCoilDailyService;
|
||||
|
||||
/**
|
||||
* 每天凌晨 2:00 计算前一日钢卷日成本(按钢卷维度)
|
||||
*/
|
||||
@Scheduled(cron = "0 0 2 * * ?")
|
||||
public void calculateDailyCostByCoil() {
|
||||
LocalDate calcDate = LocalDate.now().minusDays(1);
|
||||
log.info("[成本定时任务] 开始按钢卷维度计算日期 {} 的成本", calcDate);
|
||||
int count = costCoilDailyService.calculateDailyCost(calcDate);
|
||||
log.info("[成本定时任务] 按钢卷维度计算日期 {} 的成本完成,成功 {} 条", calcDate, count);
|
||||
}
|
||||
|
||||
/**
|
||||
* 每天凌晨 2:10 计算前一日钢卷日成本(按入场钢卷号维度)
|
||||
* 与上一个任务错开几分钟,避免同时占用资源。
|
||||
*/
|
||||
@Scheduled(cron = "0 10 2 * * ?")
|
||||
public void calculateDailyCostByEnterCoilNo() {
|
||||
LocalDate calcDate = LocalDate.now().minusDays(1);
|
||||
log.info("[成本定时任务] 开始按入场钢卷号维度计算日期 {} 的成本", calcDate);
|
||||
int count = costCoilDailyService.calculateDailyCostByEnterCoilNo(calcDate);
|
||||
log.info("[成本定时任务] 按入场钢卷号维度计算日期 {} 的成本完成,成功 {} 个入场钢卷号", calcDate, count);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user