iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/IndItemApi.java
@@ -1,8 +1,10 @@ package com.iailab.module.data.api.ind; import com.iailab.framework.common.pojo.PageResult; import com.iailab.module.data.api.ind.dto.ApiIndItemDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemQueryDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemValueDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemValuePageReqVO; import com.iailab.module.data.enums.ApiConstants; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; @@ -38,4 +40,8 @@ @PostMapping(PREFIX + "/info/ids") @Operation(summary = "根据多个id查询指标数据信息") List<ApiIndItemDTO> getInfoByIds(@RequestParam("indIds") Set<String> indIds); @PostMapping(PREFIX + "/query-ind-value/page") @Operation(summary = "查询指标历史值分页") PageResult<ApiIndItemValueDTO> queryIndItemValuePage(@RequestBody ApiIndItemValuePageReqVO dto); } iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/dto/ApiIndItemValuePageReqVO.java
对比新文件 @@ -0,0 +1,28 @@ package com.iailab.module.data.api.ind.dto; import com.iailab.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; /** * @author PanZhibao * @Description * @createTime 2024年09月11日 */ @Schema(description = "数据平台 - 指标值分页 Request VO") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) public class ApiIndItemValuePageReqVO extends PageParam { @Schema(description = "指标编码", example = "") private String itemNo; @Schema(description = "开始时间", example = "") private String startTime; @Schema(description = "结束时间", example = "") private String endTime; } iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java
@@ -11,6 +11,7 @@ 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.ind.dto.ApiIndItemValuePageReqVO; import com.iailab.module.data.api.plan.PlanItemApi; import com.iailab.module.data.api.plan.dto.ApiPlanDataDTO; import com.iailab.module.data.api.point.DataPointApi; @@ -321,4 +322,11 @@ return success(data); } @PermitAll @PostMapping("/query-ind-value/page") @Operation(summary = "查询指标数据值分页") public CommonResult<PageResult<ApiIndItemValueDTO>> queryIndItemValuePage(@RequestBody ApiIndItemValuePageReqVO dto) { return success(indItemApi.queryIndItemValuePage(dto)); } } iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/ind/IndItemApiImpl.java
@@ -1,13 +1,17 @@ package com.iailab.module.data.api.ind; import com.iailab.framework.common.pojo.PageResult; import com.iailab.framework.common.util.object.ConvertUtils; import com.iailab.module.data.api.ind.dto.ApiIndItemDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemQueryDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemValueDTO; import com.iailab.module.data.api.ind.dto.ApiIndItemValuePageReqVO; import com.iailab.module.data.ind.collection.IndItemCollector; import com.iailab.module.data.ind.item.entity.IndItemEntity; import com.iailab.module.data.ind.item.service.IndItemService; import com.iailab.module.data.ind.item.vo.IndItemValueVO; import com.iailab.module.data.ind.value.service.IndItemValueService; import com.iailab.module.data.ind.value.vo.IndItemValuePageReqVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.validation.annotation.Validated; @@ -31,6 +35,10 @@ @Autowired private IndItemService indItemService; @Autowired private IndItemValueService indItemValueService; @Override public List<ApiIndItemValueDTO> queryIndItemDefaultValue(String itemNo){ @@ -75,4 +83,12 @@ List<IndItemEntity> inds = indItemService.getInfoByIds(indIds); return ConvertUtils.sourceToTarget(inds,ApiIndItemDTO.class); } @Override public PageResult<ApiIndItemValueDTO> queryIndItemValuePage(ApiIndItemValuePageReqVO dto) { IndItemValuePageReqVO reqVO = ConvertUtils.sourceToTarget(dto, IndItemValuePageReqVO.class); List<IndItemValueVO> result = indItemValueService.getValueList(reqVO); List<ApiIndItemValueDTO> list = ConvertUtils.sourceToTarget(result, ApiIndItemValueDTO.class); return new PageResult<>(list, (long) list.size()); } } iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/IndCollectTaskNetDay.java
@@ -59,7 +59,7 @@ IndItemValueSaveReqVO saveReqVO = new IndItemValueSaveReqVO(); saveReqVO.setItemNo(indItem.getItemNo()); saveReqVO.setDataTime(DateUtils.format(calendar.getTime(), DateUtils.DATE_TIME_PATTERN)); saveReqVO.setDataValue((BigDecimal) indItemValue.getDataValue()); saveReqVO.setDataValue(convertToBigDecimal(indItemValue.getDataValue())); indItemValueService.create(saveReqVO); } } @@ -67,8 +67,28 @@ logger.info("indCollectTaskNetDay定时任务完成时间:" + LocalDateTime.now()); } catch (Exception ex) { ex.printStackTrace(); logger.error("indCollectTaskNetDay定时任务错误信息:" + ex.getMessage()); logger.error("indCollectTaskNetDay定时任务失败时间:" + LocalDateTime.now()); } } public static BigDecimal convertToBigDecimal(Object value){ if (value == null){ return null; } if (value instanceof BigDecimal){ return (BigDecimal) value; }else if (value instanceof Double){ return BigDecimal.valueOf((Double) value); }else if (value instanceof Integer){ return BigDecimal.valueOf((Integer) value); }else if (value instanceof Long){ return BigDecimal.valueOf((Long) value); }else if (value instanceof String){ return new BigDecimal((String) value); }else { throw new RuntimeException("不支持的类型:" + value.getClass().getName()); } } } iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/McsApi.java
@@ -157,6 +157,10 @@ @Operation(summary = "采纳建议") Boolean useSuggest(@RequestBody StAlarmAndSuggestReqVO reqVO); @PostMapping(PREFIX + "/schedule-suggest/ignore-suggest") @Operation(summary = "忽略建议") Boolean ignoreSuggest(StAlarmAndSuggestReqVO reqVO); @GetMapping(PREFIX + "/schedule-suggest/last-one") @Operation(summary = "获取15分钟内最新预警建议信息") List<ScheduleSuggestRespDTO> getLastSuggest(@RequestParam Map<String, Object> params); iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/api/McsApiImpl.java
@@ -980,6 +980,11 @@ } @Override public Boolean ignoreSuggest(StAlarmAndSuggestReqVO reqVO) { return stScheduleSuggestService.ignoreSuggest(reqVO); } @Override public List<ScheduleSuggestRespDTO> getLastSuggest(Map<String, Object> params) { return stScheduleSuggestService.getLastSuggest(params); } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/StScheduleSuggestService.java
@@ -41,5 +41,7 @@ Boolean useSuggest(StAlarmAndSuggestReqVO reqVO); Boolean ignoreSuggest(StAlarmAndSuggestReqVO reqVO); List<ScheduleSuggestRespDTO> getLastSuggest(Map<String, Object> params); } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StScheduleSuggestServiceImpl.java
@@ -106,6 +106,16 @@ } @Override public Boolean ignoreSuggest(StAlarmAndSuggestReqVO reqVO) { StScheduleSuggestEntity entity = new StScheduleSuggestEntity(); entity.setId(reqVO.getId()); entity.setStatus(ScheduleSuggestStatusEnum.S0.getCode()); entity.setHandleTime(new Date()); baseDao.updateById(entity); return true; } @Override public List<ScheduleSuggestRespDTO> getLastSuggest(Map<String, Object> params) { return baseDao.getLastSuggest(params); } iailab-module-model/iailab-module-model-biz/src/main/resources/application-dev.yaml
@@ -58,6 +58,6 @@ influx-db: org: iailab token: _338h4Kbu2KQaes5QwAyOz9pTUueXoSF9XmPi8N9oTS1SrhTZVj4J9JfSraUyWA0PfWMZOlf9QWax-USkJQR_A== url: http://172.16.8.200:8086 url: http://127.0.0.1:8086 username: iailab password: iailab2019