package com.hw.qms.domain;

import java.math.BigDecimal;
import java.util.List;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.hw.common.core.annotation.Excel;
import com.hw.common.core.web.domain.BaseEntity;

/**
 * 检验规则维护对象 qms_check_rule
 *
 * @author xins
 * @date 2024-01-23
 */
public class QmsCheckRule extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 检验规则id */
    private Long checkRuleId;

    /** 检验规则名称 */
    @Excel(name = "检验规则名称")
    private String checkRuleName;

    /** 检验规则类型(1来料检验,3成品检验,4工序检验) */
    @Excel(name = "检验规则类型(1来料检验,3成品检验,4工序检验)")
    private String checkRuleType;

    /** 目标类型(1:原材料类型,2:半成品类型,3:成品类型,4:原材料,5:半成品,6:成品,7:工序);先支持类型 */
    @Excel(name = "目标类型(1:原材料类型,2:半成品类型,3:成品类型,4:原材料,5:半成品,6:成品,7:工序);先支持类型")
    private String targetType;

    /** 检验方式(1,全检2,抽检);这是按批次检验物料的检验方式 */
    @Excel(name = "检验方式(1,全检2,抽检);这是按批次检验物料的检验方式")
    private String checkMode;

    /** 抽检比例 */
    @Excel(name = "抽检比例")
    private BigDecimal checkSample;

    /** 状态(0禁用,1启用) */
    @Excel(name = "状态(0禁用,1启用)")
    private String checkRuleStatus;

    /** 检验规则项目信息 */
    private List<QmsCheckRuleProject> qmsCheckRuleProjectList;


    /** 质检结果id */
    private Long checkResultId;


    public void setCheckRuleId(Long checkRuleId)
    {
        this.checkRuleId = checkRuleId;
    }

    public Long getCheckRuleId()
    {
        return checkRuleId;
    }
    public void setCheckRuleName(String checkRuleName)
    {
        this.checkRuleName = checkRuleName;
    }

    public String getCheckRuleName()
    {
        return checkRuleName;
    }
    public void setCheckRuleType(String checkRuleType)
    {
        this.checkRuleType = checkRuleType;
    }

    public String getCheckRuleType()
    {
        return checkRuleType;
    }
    public void setTargetType(String targetType)
    {
        this.targetType = targetType;
    }

    public String getTargetType()
    {
        return targetType;
    }
    public void setCheckMode(String checkMode)
    {
        this.checkMode = checkMode;
    }

    public String getCheckMode()
    {
        return checkMode;
    }
    public void setCheckSample(BigDecimal checkSample)
    {
        this.checkSample = checkSample;
    }

    public BigDecimal getCheckSample()
    {
        return checkSample;
    }
    public void setCheckRuleStatus(String checkRuleStatus)
    {
        this.checkRuleStatus = checkRuleStatus;
    }

    public String getCheckRuleStatus()
    {
        return checkRuleStatus;
    }

    public List<QmsCheckRuleProject> getQmsCheckRuleProjectList()
    {
        return qmsCheckRuleProjectList;
    }

    public void setQmsCheckRuleProjectList(List<QmsCheckRuleProject> qmsCheckRuleProjectList)
    {
        this.qmsCheckRuleProjectList = qmsCheckRuleProjectList;
    }

    public Long getCheckResultId() {
        return checkResultId;
    }

    public void setCheckResultId(Long checkResultId) {
        this.checkResultId = checkResultId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("checkRuleId", getCheckRuleId())
                .append("checkRuleName", getCheckRuleName())
                .append("checkRuleType", getCheckRuleType())
                .append("targetType", getTargetType())
                .append("checkMode", getCheckMode())
                .append("checkSample", getCheckSample())
                .append("checkRuleStatus", getCheckRuleStatus())
                .append("remark", getRemark())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("qmsCheckRuleProjectList", getQmsCheckRuleProjectList())
                .toString();
    }
}
