潘志宝
2024-11-13 4f171763ce5ee065a704e5d08fcbd5a3379dec85
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictModuleHandler.java
@@ -1,6 +1,5 @@
package com.iailab.module.model.mdk.predict;
import com.iailab.module.model.mcs.pre.entity.MmItemStatusEntity;
import com.iailab.module.model.mcs.pre.enums.ItemRunStatusEnum;
import com.iailab.module.model.mcs.pre.enums.ItemStatus;
import com.iailab.module.model.mcs.pre.service.MmItemStatusService;
@@ -39,6 +38,14 @@
    private MmItemStatusService mmItemStatusService;
    /**
     * 预测处理
     *
     * @param predictItemList
     * @param predictTime
     * @param intervalTime
     * @return
     */
    public Map<String, PredictResultVO> predict(List<ItemVO> predictItemList, Date predictTime, int intervalTime) {
        Map<String, PredictResultVO> result = new HashMap<>();
@@ -53,6 +60,7 @@
                PredictItemHandler predictItemHandler = predictItemFactory.create(predictItem.getId());
                Instant start = Instant.now();
                try {
                    // 预测项开始预测
                    predictResult = predictItemHandler.predict(predictTime, predictItem);
                } catch (Exception e) {
                    e.printStackTrace();
@@ -63,9 +71,12 @@
                log.info(MessageFormat.format("预测项:{0},预测时间:{1}秒", predictItem.getItemName(), drtPre));
                totalDur = totalDur + drtPre;
                predictResult.setGranularity(predictItem.getGranularity());
                predictResult.setT(intervalTime);
                predictResult.setSaveIndex(predictItem.getSaveIndex());
                predictResult.setLt(1);
                // 保存预测结果
                predictResultHandler.savePredictResult(predictResult);
                Instant endSave = Instant.now();
                Long drtSave = Duration.between(end, endSave).getSeconds();