package com.zt.plat.module.qms.resource.material.dal.dataobject;

import com.baomidou.mybatisplus.annotation.*;
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
import lombok.*;

import java.math.BigDecimal;

/**
* 物料大类 DO
*
* @author 后台管理
*/
@TableName("t_mtrl_pdt")
@KeySequence("t_mtrl_pdt_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
/**
* 支持业务基类继承：isBusiness=true 时继承 BusinessBaseDO，否则继承 BaseDO
*/
public class MaterialProductDO extends BusinessBaseDO {

    /**
    * 主键
    */
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;
    /**
    * 父id
    */
    @TableField("PRN_ID")
    private Long parentId;
    /**
     * 分类名称
     */
    @TableField(exist = false)
    private String categoryName;
    /**
    * id路径
    */
    @TableField("ID_PATH")
    private String idPath;
    /**
    * 节点类型,分类|物料
    */
    @TableField("NDE_TP")
    private String nodeType;
    /**
    * 主数据ID,原始数据id
    */
    @TableField("ORIG_MTRL_ID")
    private Long originalMaterialId;
    /**
    * 编码,原始数据编码
    */
    @TableField("CD")
    private String code;
    /**
    * 名称
    */
    @TableField("NAME")
    private String name;
    /**
    * 其他配置
    */
    @TableField("CST_CFG")
    private String customConfig;
    /**
    * 自定义表单
    */
    @TableField("CST_FORM")
    private String customForm;
    /**
    * 扩展数据
    */
    @TableField("CST_DAT")
    private String customData;
    /**
    * 标签
    */
    @TableField("TAG")
    private String tag;
    /**
    * 标签模板
    */
    @TableField("LBL_TMPL_KY")
    private String labelTemplateKey;
    /**
    * 型号
    */
    @TableField("MDL_NO")
    private String modelNo;
    /**
    * 规格
    */
    @TableField("SPEC")
    private String specification;
    /**
    * 技术参数
    */
    @TableField("PRM")
    private String parameter;
    /**
    * 额定容量
    */
    @TableField("STD_CPY")
    private BigDecimal standardCapacity;
    /**
    * 制造商
    */
    @TableField("MFR")
    private String manufacturer;
    /**
    * 单位
    */
    @TableField("UNT")
    private String unit;
    /**
    * 关联的样品大类
    */
    @TableField("SMP_IDS")
    private String sampleIds;
    /**
    * 允许按量领取,1-领用时输入量，按量领取；0-领用时不能输入量，整个领走
    */
    @TableField("ENB_PRTL")
    private Integer enablePartial;
    /**
    * 保质期（天）
    */
    @TableField("DUE")
    private Integer due;
    /**
    * 开封后保质期是否变化,1-是，0-否
    */
    @TableField("OPN_DUE_FLG")
    private Integer openDueFlag;
    /**
    * 开封后保质期（天）
    */
    @TableField("OPN_DUE_AFT")
    private Integer openDueAfter;
    /**
    * 是否危险品,1-是，0-否
    */
    @TableField("HZRD")
    private Integer hazardous;
    /**
    * 是否标准溶液,1-是，0-否
    */
    @TableField("STD_SOL_FLG")
    private Integer standardSolutionFlag;
    /**
    * 是否标准物质,1-是，0-否
    */
    @TableField("STD_MTRL_FLG")
    private Integer standardMaterialFlag;
    /**
    * 复标周期,单位：天。小于等于0-不复标
    */
    @TableField("RVW_DUE")
    private Integer reviewDue;
    /**
    * 排序号
    */
    @TableField("SRT_NO")
    private Integer sortNo;
    /**
    * 禁用标识
    */
    @TableField("CNL_FLG")
    private Integer cancelFlag;
    /**
    * 是否检化验,1-是，0-否
    */
    @TableField("ASY_FLG")
    private Integer assayFlag;
    /**
     * 是否进行库存预警,1-是，0-否
     */
    @TableField("INVT_ALM_FLG")
    private Integer inventoryAlarmFlag;
    /**
     * 库存预警级别,safe-安全，warn-警告，danger
     */
    @TableField("INVT_ALM_LVL")
    private String inventoryAlarmLevel;
    /**
     * 库存预警区间,json格式配置
     */
    @TableField("INVT_ALM_RNG")
    private String inventoryAlarmRange;
    /**
    * 所属部门
    */
    @TableField("SYS_DEPT_CD")
    private String systemDepartmentCode;
    /**
    * 备注
    */
    @TableField("RMK")
    private String remark;

}