gongchunyi
2 天以前 e9b4ceeea014f9d81263672f3d9c46a567c39591
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
package com.ruoyi.energymeter.service;
 
import com.ruoyi.energymeter.pojo.EnergyMeterDevice;
 
import java.time.LocalDate;
import java.util.List;
 
/**
 * 同步调度服务:批次创建、任务执行、失败重试与进度推进。
 */
public interface EnergyMeterSyncService {
 
    /**
     * 每天 08:00 的自动同步:同一北京日期只创建一个批次。
     */
    Long triggerScheduledSync();
 
    /**
     * 新绑定设备的历史补采。
     */
    void triggerBackfill(EnergyMeterDevice device, LocalDate start, LocalDate end);
 
    /**
     * 停用后重新启用时按进度补采停用期间数据。
     */
    Long triggerBackfillGap(EnergyMeterDevice device);
 
    /**
     * 手动查表,返回批次ID。
     */
    Long triggerManual(List<Long> meterIds, LocalDate start, LocalDate end, Boolean includeReadings);
 
    /**
     * 异步执行一个批次。
     */
    void executeRunAsync(Long runId);
 
    /**
     * 处理到期的重试任务与超时的 RUNNING 任务,返回处理数量。
     */
    int recoverDueTasks();
}