iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/enums/DataPointFreqEnum.java
@@ -11,7 +11,8 @@ public enum DataPointFreqEnum { NET_10S("10s", 10), NET_30S("30s", 30), NET_1MIN("1min",60); NET_1MIN("1min",60), NET_1H("1h",60*60); private String code; iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java
@@ -9,6 +9,7 @@ import com.iailab.module.data.api.dto.IndexQueryDTO; import com.iailab.module.data.api.dto.echarts.BarLineDTO; import com.iailab.module.data.api.dto.echarts.SeriesItem; import com.iailab.module.data.api.ind.IndItemApi; import com.iailab.module.data.api.ind.dto.ApiIndItemQueryDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemValueDTO; import com.iailab.module.data.api.plan.PlanItemApi; @@ -66,6 +67,9 @@ @Autowired private PlanItemApi planItemApi; @Autowired private IndItemApi indItemApi; @Autowired private IndItemCollector indItemCollector; @@ -303,28 +307,15 @@ @PermitAll @GetMapping("/query-ind/default-value") @Operation(summary = "查询指标默认值") public CommonResult<List<ApiIndItemValueDTO>> queryIndItemDefaultValue(HttpServletResponse response, HttpServletRequest request,@RequestParam String itemNo) throws Exception { apiSecurityUtils.validate(request); List<IndItemValueVO> list = indItemCollector.queryValue(itemNo); List<ApiIndItemValueDTO> dtoList = new ArrayList<>(); list.forEach(item -> { if (item != null) { ApiIndItemValueDTO dto = new ApiIndItemValueDTO(); dto.setDataTime(item.getDataTime()); dto.setDataValue(item.getDataValue().doubleValue()); dtoList.add(dto); } }); return success(dtoList); public CommonResult<List<ApiIndItemValueDTO>> queryIndItemDefaultValue(@RequestParam String itemNo) { return success(indItemApi.queryIndItemDefaultValue(itemNo)); } @PermitAll @PostMapping("/query-ind/history-value") @Operation(summary = "查询指标历史值") public CommonResult<List<ApiIndItemValueDTO>> queryIndItemHistoryValue(@RequestBody ApiIndItemQueryDTO dto) { List<IndItemValueVO> list = indItemCollector.queryValue(dto.getItemNo(), dto.getStart(), dto.getEnd()); return success(ConvertUtils.sourceToTarget(list, ApiIndItemValueDTO.class)); return success(indItemApi.queryIndItemHistoryValue(dto)); } @PermitAll iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/PointCollectTaskNet1h.java
对比新文件 @@ -0,0 +1,40 @@ package com.iailab.module.data.job.task; import com.iailab.module.data.point.collection.PointCollector; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.Calendar; /** * @description: Point采集器1h * @author: dzd * @date: 2025/1/18 14:07 **/ @Component("pointCollectTaskNet1h") public class PointCollectTaskNet1h implements ITask { private Logger logger = LoggerFactory.getLogger(getClass()); private final String NET = "1h"; @Resource private PointCollector pointCollector; @Override public void run(String params){ logger.debug("pointCollectTaskNet1h定时任务正在执行,参数为:{}", params); try { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.MILLISECOND, 0); pointCollector.collect(calendar.getTime(), NET); logger.info("pointCollectTaskNet1h定时任务完成时间:" + LocalDateTime.now()); } catch (Exception ex) { ex.printStackTrace(); logger.error("pointCollectTaskNet1h定时任务失败时间:" + LocalDateTime.now()); } } } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/controller/admin/McsApiController.java
@@ -12,6 +12,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; @@ -20,9 +21,7 @@ import java.io.IOException; import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Map; import java.util.*; import static com.iailab.framework.common.pojo.CommonResult.success; @@ -195,6 +194,28 @@ return CommonResult.success(mcsApi.getLastScheduleData(scheduleCode,limit)); } @PostMapping("/schedule-data/last/more") @Operation(summary = "多个调度模型最新结果查询") public CommonResult<Map<String,List<StScheduleRecordVO>>> getMoreLastScheduleData(@RequestBody Map<String,Object> params) { if (!params.containsKey("scheduleCodes")) { return success(new HashMap<>()); } Set<String> scheduleCodes = new HashSet<>(((List<String>) params.get("scheduleCodes"))); if (CollectionUtils.isEmpty(scheduleCodes)) { return success(new HashMap<>()); } Integer limit = 1; if (params.containsKey("limit")) { limit = Integer.parseInt(params.get("limit").toString()); } Map<String,List<StScheduleRecordVO>> result = new HashMap<>(scheduleCodes.size()); for (String scheduleCode : scheduleCodes) { result.put(scheduleCode,mcsApi.getLastScheduleData(scheduleCode, limit)); } return CommonResult.success(result); } @PostMapping("/machineRealTimeStatus") @Operation(summary = "发电机组实时状态查询") CommonResult<List<Map<String, Object>>> getRealTimeStatus(@RequestBody List<Map<String, Object>> machines) { iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/predict/PredictResultHandler.java
@@ -86,7 +86,6 @@ * * @param predictResult */ @Async @DSTransactional public void savePredictResult(PredictResultVO predictResult) { Map<String, List<DataValueVO>> resultMap = convertToPredictData(predictResult);