package cn.iocoder.yudao.module.mes.dal.dataobject.qc.indicator;
|
|
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
import com.baomidou.mybatisplus.annotation.KeySequence;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableName;
|
import lombok.*;
|
import cn.iocoder.yudao.module.mes.enums.DictTypeConstants;
|
|
/**
|
* MES 质检指标 DO
|
*
|
* @author 超级管理员
|
*/
|
@TableName("mes_qc_indicator")
|
@KeySequence("mes_qc_indicator_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
@Data
|
@EqualsAndHashCode(callSuper = true)
|
@ToString(callSuper = true)
|
@Builder
|
@NoArgsConstructor
|
@AllArgsConstructor
|
public class MesQcIndicatorDO extends BaseDO {
|
|
public static final Long PARENT_ID_ROOT = 0L;
|
|
/**
|
* 编号
|
*/
|
@TableId
|
private Long id;
|
/**
|
* 检测项编码
|
*/
|
private String code;
|
/**
|
* 检测项名称
|
*/
|
private String name;
|
/**
|
* 父指标编号(0=顶级)
|
*
|
* 报告侧靠它还原「组名合并、子项分行」的两层结构 —— 归属只看这个字段,
|
* 不看 {@link #type}、也不看行序(行表里父项那一行与它的子项并不相邻)。
|
*/
|
private Long parentId;
|
/**
|
* 条目类型:1=录入项,2=分组项
|
*
|
* 只用来判断「这个指标够不够格当组头」,归属本身仍看 {@link #parentId}
|
*/
|
private Integer itemType;
|
/**
|
* 公式展示文本(打印报告用,不参与计算)
|
*
|
* 分组项没有规格上下限,它的「检测要求」就是这条公式
|
*/
|
private String formulaText;
|
/**
|
* 单位文本(如 kg/m³、/%,打印展示用)
|
*/
|
private String unitText;
|
/**
|
* 同级排序号
|
*
|
* 报告的检验项顺序按它排:分组项与独立项同属「同级」占一个位置,组内子项各自再排
|
*/
|
private Integer sortOrder;
|
/**
|
* 检测项类型
|
*
|
* 枚举 {@link cn.iocoder.yudao.module.mes.enums.DictTypeConstants#MES_INDICATOR_TYPE}
|
*/
|
private Integer type;
|
/**
|
* 检测工具
|
*/
|
private String tool;
|
/**
|
* 结果值类型
|
*
|
* 字典 {@link DictTypeConstants#MES_QC_RESULT_TYPE}
|
* 枚举 {@link cn.iocoder.yudao.module.mes.enums.qc.MesQcResultValueTypeEnum}
|
*
|
* updateStrategy=ALWAYS:录入项改成分组项时要能把这个值写回 NULL,
|
* 默认的 NOT_NULL 策略会把 null 字段从 UPDATE 里剔除,导致旧的结果值残留
|
*/
|
@TableField(updateStrategy = FieldStrategy.ALWAYS)
|
private Integer resultType;
|
/**
|
* 结果值属性
|
*
|
* 1. FILE 时:存 IMG/FILE
|
* 2. DICT 时:存字典类型名
|
*
|
* updateStrategy 同 {@link #resultType}
|
*/
|
@TableField(updateStrategy = FieldStrategy.ALWAYS)
|
private String resultSpecification;
|
/**
|
* 备注
|
*/
|
private String remark;
|
|
}
|