package cn.iocoder.yudao.module.bi.service.decision;
|
|
import cn.iocoder.yudao.module.bi.controller.admin.decision.vo.DecisionForecastHistorySaveReqVO;
|
import cn.iocoder.yudao.module.bi.controller.admin.decision.vo.DecisionForecastWorkOrderCreateReqVO;
|
import cn.iocoder.yudao.module.bi.dal.dataobject.decision.BiForecastDataDO;
|
|
import java.time.LocalDateTime;
|
import java.util.List;
|
|
/**
|
* 负荷预测 Service 接口
|
*
|
* @author 超级管理员
|
*/
|
public interface BiForecastService {
|
|
List<BiForecastDataDO> getForecastList(String forecastCode, LocalDateTime beginTime, LocalDateTime endTime);
|
|
/**
|
* 基于历史预测数据生成预测(默认 SMA)
|
*/
|
void generateForecast(String forecastCode, LocalDateTime pointTime);
|
|
/**
|
* 基于历史预测数据按指定模型生成预测
|
*
|
* @param model SMA/WMA/LR/SEASONAL/YOY
|
*/
|
void generateForecast(String forecastCode, String model, int window, int period,
|
LocalDateTime pointTime);
|
|
/**
|
* 基于 KPI 历史快照生成预测并落库(负荷/产量/采购/回款等决策场景)
|
*
|
* @param kpiCode KPI 编码
|
* @param model SMA/WMA/LR/SEASONAL/YOY
|
* @param window SMA/WMA 窗口
|
* @param period SEASONAL 周期
|
* @param periods 预测期数(生成未来 N 期预测点)
|
* @param intervalMinutes 预测点间隔(分钟)
|
* @return 生成的预测记录数
|
*/
|
int generateKpiForecast(String kpiCode, String model, int window, int period,
|
int periods, int intervalMinutes);
|
|
Long createForecastHistory(DecisionForecastHistorySaveReqVO reqVO);
|
|
/**
|
* 负荷预测联动创建生产工单(运维/发电/检修类)
|
*
|
* @param reqVO 创建请求
|
* @return 工单编号
|
*/
|
Long createWorkOrderFromForecast(DecisionForecastWorkOrderCreateReqVO reqVO);
|
|
}
|