From 744277a8763903641b0aab84f674191f8929cc1e Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期五, 16 五月 2025 14:44:23 +0800
Subject: [PATCH] 考虑指标精度和转换系数 如果参数粒度小于天,则从下个粒度开始取,因为存预测数据的时候就是这么存的

---
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java
index 6c60377..e27ed49 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleInfoConstructor.java
@@ -5,6 +5,7 @@
 import com.iailab.module.data.api.point.dto.ApiPointDTO;
 import com.iailab.module.data.enums.DataPointFreqEnum;
 import com.iailab.module.data.enums.TimeGranularitySecEnum;
+import com.iailab.module.model.mcs.pre.enums.PredGranularityEnum;
 import com.iailab.module.model.mcs.pre.service.MmPredictItemService;
 import com.iailab.module.model.mdk.common.enums.ModelParamType;
 import com.iailab.module.model.mdk.sample.dto.ColumnItem;
@@ -90,7 +91,8 @@
                 break;
             case NORMALITEM:
             case MERGEITEM:
-                dateTime = calculateTime(originalTime, false, 1, columnItem.getGranularity());
+                // 如果参数粒度小于天,则从下个粒度开始取,因为存预测数据的时候就是这么存的
+                dateTime = calculateTime(originalTime, false, columnItem.getGranularity() < PredGranularityEnum.D1.getCode() ? 1 : 0, columnItem.getGranularity());
                 break;
             default:
                 break;
@@ -123,7 +125,8 @@
                 break;
             case NORMALITEM:
             case MERGEITEM:
-                dateTime = calculateTime(originalTime, false, columnItem.getDataLength() + 1, columnItem.getGranularity());
+                // 如果参数粒度小于天,则从下个粒度开始取,因为存预测数据的时候就是这么存的
+                dateTime = calculateTime(originalTime, false, columnItem.getGranularity() < PredGranularityEnum.D1.getCode() ? columnItem.getDataLength() + 1 : columnItem.getDataLength(), columnItem.getGranularity());
                 break;
             default:
                 break;

--
Gitblit v1.9.3