From 7e7fbe6c20432ba65e8501e109d305666ce68afa Mon Sep 17 00:00:00 2001 From: 潘志宝 <979469083@qq.com> Date: 星期二, 22 四月 2025 08:42:16 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/dto/ApiIndItemValuePageReqVO.java | 28 ++++++++++++++ iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/ind/IndItemApiImpl.java | 16 ++++++++ iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java | 8 ++++ iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/IndItemApi.java | 6 +++ iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/IndCollectTaskNetDay.java | 22 ++++++++++ 5 files changed, 79 insertions(+), 1 deletions(-) diff --git a/iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/IndItemApi.java b/iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/IndItemApi.java index 0e0fe93..39957bb 100644 --- a/iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/IndItemApi.java +++ b/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); } \ No newline at end of file diff --git a/iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/dto/ApiIndItemValuePageReqVO.java b/iailab-module-data/iailab-module-data-api/src/main/java/com/iailab/module/data/api/ind/dto/ApiIndItemValuePageReqVO.java new file mode 100644 index 0000000..4493d78 --- /dev/null +++ b/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; +} \ No newline at end of file diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java index 7effc8c..c0f3c5b 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/controller/admin/ApiDataController.java +++ b/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)); + } + } diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/ind/IndItemApiImpl.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/ind/IndItemApiImpl.java index d6edd26..cf5cefd 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/api/ind/IndItemApiImpl.java +++ b/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()); + } } \ No newline at end of file diff --git a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/IndCollectTaskNetDay.java b/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/IndCollectTaskNetDay.java index 44c197a..904cc5d 100644 --- a/iailab-module-data/iailab-module-data-biz/src/main/java/com/iailab/module/data/job/task/IndCollectTaskNetDay.java +++ b/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()); + } + } } -- Gitblit v1.9.3