iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -2,6 +2,7 @@ import com.iailab.framework.common.pojo.PageResult; import com.iailab.module.model.api.mcs.dto.*; import com.iailab.module.model.api.mdk.dto.MdkPredictDataDTO; import com.iailab.module.model.api.mdk.dto.StScheduleRecordVO; import com.iailab.module.model.enums.ApiConstants; import io.swagger.v3.oas.annotations.Operation; @@ -172,6 +173,10 @@ @Operation(summary = "根据预测时间获取最后预测值") Map<String, BigDecimal> getPredictValueByTime(@RequestBody PredictLastValueReqVO reqVO); @PostMapping(PREFIX + "/predict-data/tn-value") @Operation(summary = "根据预测时间获取T+N预测值") List<MdkPredictDataDTO> getPredictTnValue(PredictTnValueReqVO reqVO); @GetMapping(PREFIX + "/predict/model/setting/update") @Operation(summary = "修改预测模型配置") Boolean updatePredictModelSetting(@RequestParam("modelCode") String modelCode, @RequestParam("key") String key, @RequestParam("value") String value); iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/PredictLastValueReqVO.java
@@ -12,7 +12,7 @@ * @Description * @createTime 2025年01月14日 */ @Schema(description = "RPC 模型 - 预警和建议 DTO") @Schema(description = "RPC 模型 - 预测值查询 DTO") @Data public class PredictLastValueReqVO { iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/PredictTnValueReqVO.java
对比新文件 @@ -0,0 +1,26 @@ package com.iailab.module.model.api.mcs.dto; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.Date; import java.util.List; /** * @author PanZhibao * @Description * @createTime 2025年06月13日 */ @Schema(description = "RPC 模型 - 预测值查询 DTO") @Data public class PredictTnValueReqVO { private String outId; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date startTime; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date endTime; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -12,6 +12,7 @@ import com.iailab.module.data.common.ApiDataQueryDTO; import com.iailab.module.model.api.mcs.McsApi; import com.iailab.module.model.api.mcs.dto.*; import com.iailab.module.model.api.mdk.dto.MdkPredictDataDTO; import com.iailab.module.model.api.mdk.dto.StScheduleRecordVO; import com.iailab.module.model.common.enums.CommonDict; import com.iailab.module.model.common.enums.DataTypeEnum; @@ -36,6 +37,7 @@ import com.iailab.module.model.mcs.sche.vo.StScheduleRecordRespVO; import com.iailab.module.model.mcs.sche.vo.StScheduleSuggestSaveReqVO; import com.iailab.module.model.mcs.sche.vo.StSuggestOperationRecordReqVO; import com.iailab.module.model.mdk.vo.DataValueVO; import com.iailab.module.model.mdk.vo.ItemVO; import com.iailab.module.model.mpk.service.ChartParamService; import com.iailab.module.model.mpk.service.ChartService; @@ -749,6 +751,12 @@ } @Override public List<MdkPredictDataDTO> getPredictTnValue(PredictTnValueReqVO reqVO) { List<DataValueVO> list = mmItemResultService.getPredictValue(reqVO.getOutId(), reqVO.getStartTime(), reqVO.getEndTime()); return ConvertUtils.sourceToTarget(list, MdkPredictDataDTO.class); } @Override public List<StScheduleRecordVO> getLastScheduleData(String scheduleCode, Integer limit) { if (StringUtils.isBlank(scheduleCode)) { return null; iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java
@@ -5,9 +5,11 @@ import com.iailab.framework.common.util.object.BeanUtils; import com.iailab.module.model.api.mcs.McsApi; import com.iailab.module.model.api.mcs.dto.*; import com.iailab.module.model.api.mdk.dto.MdkPredictDataDTO; import com.iailab.module.model.api.mdk.dto.StScheduleRecordVO; import com.iailab.module.model.common.utils.ApiSecurityUtils; import com.iailab.module.model.common.utils.ExcelUtil; import com.iailab.module.model.mdk.vo.DataValueVO; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.extern.slf4j.Slf4j; @@ -152,6 +154,13 @@ return CommonResult.success(map); } @PostMapping("/predict-data/tn-value") @Operation(summary = "获取T+N预测数据") public CommonResult<List<MdkPredictDataDTO>> getPredictTnValue(PredictTnValueReqVO reqVO) { List<MdkPredictDataDTO> list = mcsApi.getPredictTnValue(reqVO); return success(list); } @GetMapping("/predict-data/exportValue") @Operation(summary = "导出预测数据") public void exportPointValue(@RequestParam("itemId") String itemId, iailab-module-model/iailab-module-model-biz/src/main/resources/mapper/mcs/StScheduleSuggestDao.xml
@@ -10,7 +10,7 @@ ROW_NUMBER() OVER ( PARTITION BY schedule_obj ORDER BY schedule_time DESC ) AS rn FROM t_st_schedule_suggest WHERE schedule_obj in ('BFG_ALARM', 'COG_ALARM', 'LDG1', 'LDG2', 'LDGt') ('BFG_FLOW_WARNING_ALARM', 'COG_ALARM', 'LDG1_ALARM', 'LDG2_ALARM', 'LDGt_ALARM') and schedule_time >= DATE_SUB(NOW(), INTERVAL 15 MINUTE )) SELECT * FROM t_st_schedule_suggest