算法实体类
<p><code>DPART</code></p>
<pre><code>public class DPatParamDTO extends BinParamDTO {
@NotNull(message = "hBinNum不能为空")
private Integer hBinNum;
@NotNull(message = "hBinName不能为空")
private String hBinName;
@NotNull(message = "sBinNum不能为空")
private Integer sBinNum;
@NotNull(message = "sBinName不能为空")
private String sBinName;
/**
* - 是否bySite
*/
@NotNull(message = "bySite不能为空")
private Boolean bySite;
/**
* - 应用算法的测项列表
*/
@NotEmpty(message = "testItemConfigs不能为空")
private List<TestItemConfig> testItemConfigs;
/**
* - lowLimit = center - lowThreshold * spread
* - highLimit = center + highThreshold * spread
* Copyright (C), 2021, guwave
* @Title: DpatParamDTO.java
* @summary
* @author Teng Wang
* @version 0.0.1
* @date 2022-9-23
*/
@Data
@Builder
public static class TestItemConfig {
/**
* - 排序
*/
private int order;
@NotEmpty(message = "testItem不能为空")
private String testItem;
@NotNull(message = "lowThreshold不能为空")
private Double lowThreshold;
@NotNull(message = "highThreshold不能为空")
private Double highThreshold;
@NotNull(message = "center不能为空")
private FuncEnum center;
@NotNull(message = "spread不能为空")
private FuncEnum spread;
@NotNull(message = "maxEmptyValueRatio不能为空")
private Double maxEmptyValueRatio;
@NotNull(message = "needAdvancedCheck不能为空")
private Boolean needAdvancedCheck;
private AdvancedCheck advancedCheck;
}</code></pre>
<p><code>GDBN</code></p>
<pre><code>public class GdbnParamDTO extends BinParamDTO {
//总阈值
private Double threshold;
//边缘阈值
private Double edgeThreshold;
//边缘圈数
private Integer edgeTurns;
//权重系数A
private Double weightA;
//权重系数B
private Double weightB;
//权重系数C
private Double weightC;
//权重系数D
private Double weightD;
//权重系数E
private Double weightE;
//权重系数F
private Double weightF;
//是否跳过计算缺失的die true 跳过 false 不跳过
private Boolean isSkipDefect;
//缺失的die的PF 1 好的 0坏的
private Integer defectPF;</code></pre>
<p><code>SYL</code></p>
<pre><code>public class SylParamDTO {
private DataScopeEnum dataLevel;
private DataScopeEnum onlineRetestLevel;
private Integer minInputCount;
private Boolean bySiteFlag;
private BigDecimal lowLimit;
private BigDecimal highLimit;
}</code></pre>
<p><code>SBL</code></p>
<pre><code>@Data
public class SblParamDTO {
private DataScopeEnum dataLevel;
private DataScopeEnum onlineRetestLevel;
private Long minInputCount;
private Boolean bySiteFlag;
private List<Sbl> sblList;
@Data
public static class Sbl {
private String binInfo;
private Object lowThreshold;
private Object highThreshold;
private SblBinUnit binUnit;
}
@Getter
@AllArgsConstructor
public enum SblBinUnit {
PERCENT(BigDecimal.class),
COUNT(Integer.class);
private final Class<?> aClass;
}
}</code></pre>
<p><code>S2S</code></p>
<pre><code>public class SiteToSiteYieldGapParamDTO {
private DataScopeEnum dataLevel;
private DataScopeEnum onlineRetestLevel;
private Integer minInputCount;
private BigDecimal limit;
}</code></pre>