From 50084de4a140dece61019b64fd91df041d242e47 Mon Sep 17 00:00:00 2001 From: dengzedong <dengzedong@email> Date: 星期一, 23 十二月 2024 15:28:53 +0800 Subject: [PATCH] getInfoByIds(Set<String> pointIds) 模型输入计划数据获取、补全 模型输入mergeitem存默认生成的outputid sampleInfo.setPointMap 避免重复查询point --- iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleDataConstructor.java | 18 ++++++++++++++++-- 1 files changed, 16 insertions(+), 2 deletions(-) diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleDataConstructor.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleDataConstructor.java index a51c53f..dba4323 100644 --- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleDataConstructor.java +++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/SampleDataConstructor.java @@ -1,8 +1,11 @@ package com.iailab.module.model.mdk.sample; +import com.iailab.module.data.api.plan.PlanItemApi; +import com.iailab.module.data.api.plan.dto.ApiPlanItemDTO; import com.iailab.module.data.api.point.DataPointApi; 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.mdk.common.enums.ModelParamType; import com.iailab.module.model.mdk.sample.dto.SampleData; import com.iailab.module.model.mdk.sample.dto.SampleInfo; @@ -21,6 +24,8 @@ @Autowired private DataPointApi dataPointApi; + @Autowired + private PlanItemApi planItemApi; /** * prepareSampleData @@ -28,7 +33,7 @@ * @param sampleInfo * @return */ - public abstract List<SampleData> prepareSampleData(SampleInfo sampleInfo); + public abstract List<SampleData> prepareSampleData(SampleInfo sampleInfo) throws Exception; /** * 补全数据 @@ -74,7 +79,7 @@ endTime = calendar.getTime(); end = endTime.getTime(); - oneMin = 24 * 60 * 60 * 1000; + oneMin = 60 * 1000L; mins = ((end - start) / oneMin); break; case DATAPOINT: @@ -103,6 +108,15 @@ end = calendar2.getTime().getTime(); mins = ((end - start) / oneMin); break; + case PLAN: + // 计划数据 + ApiPlanItemDTO planItem = planItemApi.getInfoById(paramId); + oneMin = 1000L * TimeGranularitySecEnum.getEumByCode(planItem.getTimeGranularity()).getValue(); + // 设置时间偏移量 + start = start - (start % oneMin) + oneMin; + end = end - (end % oneMin) + oneMin; + mins = ((end - start) / oneMin); + break; default: break; } -- Gitblit v1.9.3