iailab-module-model/iailab-module-model-api/src/main/java/com/iailab/module/model/api/mcs/dto/StSuggestSnapshotRecordRespVO.java
@@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -57,4 +58,13 @@ @Schema(description = "数据列表") List<Object[]> dataList; @Schema(description = "上限") private BigDecimal limitH; @Schema(description = "下限") private BigDecimal limitL; @Schema(description = "越界时间") private List<String> overLimitTimes; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StSuggestSnapshotConfDetEntity.java
@@ -6,6 +6,7 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; /** * @author Jay @@ -53,6 +54,16 @@ private Integer rightLength; /** * 上限 */ private BigDecimal limitH; /** * 下限 */ private BigDecimal limitL; /** * 排序 */ private Integer sort; iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/entity/StSuggestSnapshotRecordEntity.java
@@ -3,9 +3,11 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; import java.util.Date; /** @@ -77,4 +79,14 @@ * 排序 */ private Integer sort; /** * 上限 */ private BigDecimal limitH; /** * 下限 */ private BigDecimal limitL; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotConfDetServiceImpl.java
@@ -26,10 +26,6 @@ public class StSuggestSnapshotConfDetServiceImpl extends BaseServiceImpl<StSuggestSnapshotConfDetDao, StSuggestSnapshotConfDetEntity> implements StSuggestSnapshotConfDetService { @Autowired private StSuggestSnapshotConfDetService stSuggestSnapshotConfDetService; @Override public PageResult<StSuggestSnapshotConfDetEntity> page(StSuggestSnapshotConfDetPageReqVO reqVO) { return baseDao.selectPage(reqVO); iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/service/impl/StSuggestSnapshotRecordServiceImpl.java
@@ -1,5 +1,7 @@ package com.iailab.module.model.mcs.sche.service.impl; import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.format.DateParser; import com.baomidou.dynamic.datasource.annotation.DSTransactional; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.iailab.framework.common.service.impl.BaseServiceImpl; @@ -28,11 +30,13 @@ import com.iailab.module.model.mcs.sche.vo.StSuggestSnapshotConfDetRespVO; import com.iailab.module.model.mcs.sche.vo.StSuggestSnapshotConfMainRespVO; import com.iailab.module.model.mcs.sche.vo.StSuggestSnapshotRecordSaveReqVO; import org.apache.commons.lang.time.DateFormatUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.time.LocalDateTime; import java.time.ZoneId; import java.util.ArrayList; @@ -124,6 +128,9 @@ snapshotRecordSaveReqVO.setDataName(confDet.getDataName()); snapshotRecordSaveReqVO.setScheduleTime(scheduleTime); snapshotRecordSaveReqVO.setSort(confDet.getSort()); snapshotRecordSaveReqVO.setLimitH(confDet.getLimitH()); snapshotRecordSaveReqVO.setLimitL(confDet.getLimitL()); snapshotRecordSaveReqVO.setSort(confDet.getSort()); //计算开始时间,开始时间为当前调度时间减去快照配置表配置的左侧时间长度 LocalDateTime localStartDateTime = scheduleTime.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime().minusMinutes(confDet.getLeftLength() == null ? 60 : confDet.getLeftLength()); Date startTime = Date.from(localStartDateTime.atZone(ZoneId.systemDefault()).toInstant()); @@ -191,6 +198,17 @@ } item.setDataList(dataList); if (!CollectionUtils.isEmpty(dataList)) { List<String> overLimitTimes = new ArrayList<>(); dataList.forEach(data -> { BigDecimal value = new BigDecimal(data[1].toString()); if (value.compareTo(item.getLimitH()) >= 0 || value.compareTo(item.getLimitL()) <= 0) { overLimitTimes.add(data[0].toString()); } }); item.setOverLimitTimes(overLimitTimes); } }); return reqList; } iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StSuggestSnapshotConfDetReqVO.java
@@ -3,6 +3,8 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; /** * @author Jay @@ -32,6 +34,12 @@ @Schema(description = "右侧侧长度(min)") private Integer rightLength; @Schema(description = "上限") private BigDecimal limitH; @Schema(description = "下限") private BigDecimal limitL; @Schema(description = "排序") private Integer sort; iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StSuggestSnapshotConfDetRespVO.java
@@ -3,6 +3,8 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; /** * @author Jay @@ -32,6 +34,12 @@ @Schema(description = "右侧侧长度(min)") private Integer rightLength; @Schema(description = "上限") private BigDecimal limitH; @Schema(description = "下限") private BigDecimal limitL; @Schema(description = "排序") private Integer sort; iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StSuggestSnapshotConfDetSaveReqVO.java
@@ -3,6 +3,8 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; /** * @author Jay @@ -32,6 +34,12 @@ @Schema(description = "右侧侧长度(min)") private Integer rightLength; @Schema(description = "上限") private BigDecimal limitH; @Schema(description = "下限") private BigDecimal limitL; @Schema(description = "排序") private Integer sort; iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/sche/vo/StSuggestSnapshotRecordSaveReqVO.java
@@ -4,6 +4,7 @@ import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; import java.util.Date; @@ -53,5 +54,10 @@ @Schema(description = "排序") private Integer sort; @Schema(description = "上限") private BigDecimal limitH; @Schema(description = "下限") private BigDecimal limitL; }