package com.iailab.module.model.mdk.sample.dto; import com.iailab.module.data.api.ind.dto.ApiIndItemDTO; import com.iailab.module.data.api.plan.dto.ApiPlanItemDTO; import com.iailab.module.data.api.point.dto.ApiPointDTO; import com.iailab.module.model.mdk.vo.StAdjustDeviationDTO; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.sql.Timestamp; import java.util.List; import java.util.Map; @Data @AllArgsConstructor @NoArgsConstructor @Builder public class SampleInfo { /** * 用于记录端口的个数(爪的个数) */ private Integer portLength; private Integer sampleColumn; private Timestamp startTime; private Timestamp endTime; private List columnInfo; private Integer sampleCycle; // 调整值 private List deviation; // 所有测点信息,避免重复查询 private Map pointMap; // 所有计划数据信息,避免重复查询 private Map planMap; // 所有计划数据信息,避免重复查询 private Map indMap; public static double getAdjustValueFromDeviation(int portIdx, int paramIdx, List deviation) { if (CollectionUtils.isEmpty(deviation)) { return 0; } for (StAdjustDeviationDTO deviationItem : deviation) { if (deviationItem.getPortIdx() == portIdx && deviationItem.getParamIdx() == paramIdx) { return deviationItem.getValue(); } } return 0; } }