package com.zd.airbottle.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zd.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.zd.common.core.web.domain.BaseEntity;
import org.hibernate.validator.constraints.Length;

/**
 * 用气申请对象 qp_usegas_apply
 *
 * @author zd
 * @date 2022-05-12
 */
@ApiModel("用气申请")
public class QpUsegasApply extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id,数据唯一标识 */
    @ApiModelProperty(value = "${comment}")
    private Long id;
    /** 实验地点 */
    @Excel(name = "实验地点")
    @Length(message = "实验地点长度不能超过50")
    @ApiModelProperty(value = "实验地点")
    private String location;
    /** 实验室id */
    @Excel(name = "实验室id")
    @ApiModelProperty(value = "实验室id")
    private Long subjectId;
    /** 申请人 */
    @Excel(name = "申请人")
    @Length(message = "申请人长度不能超过200")
    @ApiModelProperty(value = "申请人")
    private String applyUser;
    /** 申请人id */
    @Excel(name = "申请人id")
    @ApiModelProperty(value = "申请人id")
    private Long userId;
    /** 部门id */
    @Excel(name = "部门id")
    @ApiModelProperty(value = "部门id")
    private Long deptId;
    /** 部门名称 */
    @Excel(name = "部门名称")
    @Length(message = "部门名称长度不能超过50")
    @ApiModelProperty(value = "部门名称")
    private String deptName;
    /** 联系方式 */
    @Excel(name = "联系方式")
    @Length(message = "联系方式长度不能超过11")
    @ApiModelProperty(value = "联系方式")
    private String phone;
    /** 期限开始 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "期限开始", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "期限开始")
    private Date startTime;
    /** 期限结束 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "期限结束", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "期限结束")
    private Date endTime;
    /** 气体用途 */
    @Excel(name = "气体用途")
    @ApiModelProperty(value = "气体用途")
    private String gasUse;
    /** 申请凭证 */
    @Excel(name = "申请凭证")
    @Length(message = "申请凭证长度不能超过200")
    @ApiModelProperty(value = "申请凭证")
    private String applyCertificate;
    /** 安全措施 */
    @Excel(name = "安全措施")
    @ApiModelProperty(value = "安全措施")
    private String safetyPrecautions;
    /** 气体id */
    @Excel(name = "气体id")
    @ApiModelProperty(value = "气体id")
    private Long useGasId;
    /** 气体名称 */
    @Excel(name = "气体名称")
    @Length(message = "气体名称长度不能超过50")
    @ApiModelProperty(value = "气体名称")
    private String useGasName;
    /** 审核状态 0 未审核 1.审核通过 2.审核未通过 */
    @Excel(name = "审核状态 0 未审核 1.审核通过 2.审核未通过")
    @ApiModelProperty(value = "审核状态 0 未审核 1.审核通过 2.审核未通过")
    private Integer leadAuditStaus;
    /** 审核人id */
    @Excel(name = "审核人id")
    @ApiModelProperty(value = "审核人id")
    private Long leadAuditUserid;
    /** 审核人（实验室） */
    @Excel(name = "审核人", readConverterExp = "实=验室")
    @Length(message = "审核人长度不能超过20")
    @ApiModelProperty(value = "审核人")
    private String leadAuditUsername;
    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "审核时间")
    private Date leadAuditTime;
    /** 原因（实验室负责人） */
    @Excel(name = "原因", readConverterExp = "实=验室负责人")
    @Length(message = "原因长度不能超过200")
    @ApiModelProperty(value = "原因")
    private String leadAuditCause;
    /** 审核状态 0 未审核 1.审核通过 2.审核未通过 */
    @Excel(name = "审核状态 0 未审核 1.审核通过 2.审核未通过")
    @ApiModelProperty(value = "审核状态 0 未审核 1.审核通过 2.审核未通过")
    private Integer centerAuditStatus;
    /** 审核人id */
    @Excel(name = "审核人id")
    @ApiModelProperty(value = "审核人id")
    private Long centerAuditUserid;
    /** 审核人（实验中心） */
    @Excel(name = "审核人", readConverterExp = "实=验中心")
    @Length(message = "审核人长度不能超过20")
    @ApiModelProperty(value = "审核人")
    private String centerAuditUsername;
    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "审核时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty(value = "审核时间")
    private Date centerAuditTime;
    /** 原因（实验中心） */
    @Excel(name = "原因", readConverterExp = "实=验中心")
    @Length(message = "原因长度不能超过200")
    @ApiModelProperty(value = "原因")
    private String centerAuditCause;
    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setLocation(String location)
    {
        this.location = location;
    }

    public String getLocation()
    {
        return location;
    }
    public void setSubjectId(Long subjectId)
    {
        this.subjectId = subjectId;
    }

    public Long getSubjectId()
    {
        return subjectId;
    }
    public void setApplyUser(String applyUser)
    {
        this.applyUser = applyUser;
    }

    public String getApplyUser()
    {
        return applyUser;
    }

    @Override
    public Long getUserId() {        return userId;    }

    @Override
    public void setUserId(Long userId) {        this.userId = userId;    }

    @Override
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }
    @Override
    public Long getDeptId()
    {
        return deptId;
    }
    public void setDeptName(String deptName)
    {
        this.deptName = deptName;
    }

    public String getDeptName()
    {
        return deptName;
    }
    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }
    public void setStartTime(Date startTime)
    {
        this.startTime = startTime;
    }

    public Date getStartTime()
    {
        return startTime;
    }
    public void setEndTime(Date endTime)
    {
        this.endTime = endTime;
    }

    public Date getEndTime()
    {
        return endTime;
    }
    public void setGasUse(String gasUse)
    {
        this.gasUse = gasUse;
    }

    public String getGasUse()
    {
        return gasUse;
    }
    public void setApplyCertificate(String applyCertificate)
    {
        this.applyCertificate = applyCertificate;
    }

    public String getApplyCertificate()
    {
        return applyCertificate;
    }
    public void setSafetyPrecautions(String safetyPrecautions)
    {
        this.safetyPrecautions = safetyPrecautions;
    }

    public String getSafetyPrecautions()
    {
        return safetyPrecautions;
    }
    public void setUseGasId(Long useGasId)
    {
        this.useGasId = useGasId;
    }

    public Long getUseGasId()
    {
        return useGasId;
    }
    public void setLeadAuditStaus(Integer leadAuditStaus)
    {
        this.leadAuditStaus = leadAuditStaus;
    }

    public void setUseGasName(String useGasName)    {        this.useGasName = useGasName;    }
    public String getUseGasName()    {        return useGasName;    }

    public Integer getLeadAuditStaus()
    {
        return leadAuditStaus;
    }
    public void setLeadAuditUserid(Long leadAuditUserid)
    {
        this.leadAuditUserid = leadAuditUserid;
    }

    public Long getLeadAuditUserid()
    {
        return leadAuditUserid;
    }
    public void setLeadAuditUsername(String leadAuditUsername)
    {
        this.leadAuditUsername = leadAuditUsername;
    }

    public String getLeadAuditUsername()
    {
        return leadAuditUsername;
    }
    public void setLeadAuditTime(Date leadAuditTime)
    {
        this.leadAuditTime = leadAuditTime;
    }

    public Date getLeadAuditTime()
    {
        return leadAuditTime;
    }
    public void setLeadAuditCause(String leadAuditCause)
    {
        this.leadAuditCause = leadAuditCause;
    }

    public String getLeadAuditCause()
    {
        return leadAuditCause;
    }
    public void setCenterAuditStatus(Integer centerAuditStatus)
    {
        this.centerAuditStatus = centerAuditStatus;
    }

    public Integer getCenterAuditStatus()
    {
        return centerAuditStatus;
    }
    public void setCenterAuditUserid(Long centerAuditUserid)
    {
        this.centerAuditUserid = centerAuditUserid;
    }

    public Long getCenterAuditUserid()
    {
        return centerAuditUserid;
    }
    public void setCenterAuditUsername(String centerAuditUsername)
    {
        this.centerAuditUsername = centerAuditUsername;
    }

    public String getCenterAuditUsername()
    {
        return centerAuditUsername;
    }
    public void setCenterAuditTime(Date centerAuditTime)
    {
        this.centerAuditTime = centerAuditTime;
    }

    public Date getCenterAuditTime()
    {
        return centerAuditTime;
    }
    public void setCenterAuditCause(String centerAuditCause)
    {
        this.centerAuditCause = centerAuditCause;
    }

    public String getCenterAuditCause()
    {
        return centerAuditCause;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("location", getLocation())
                .append("subjectId", getSubjectId())
                .append("applyUser", getApplyUser())
                .append("userId", getUserId())
                .append("deptId", getDeptId())
                .append("deptName", getDeptName())
                .append("phone", getPhone())
                .append("startTime", getStartTime())
                .append("endTime", getEndTime())
                .append("gasUse", getGasUse())
                .append("applyCertificate", getApplyCertificate())
                .append("safetyPrecautions", getSafetyPrecautions())
                .append("useGasId", getUseGasId())
                .append("useGasName", getUseGasName())
                .append("leadAuditStaus", getLeadAuditStaus())
                .append("leadAuditUserid", getLeadAuditUserid())
                .append("leadAuditUsername", getLeadAuditUsername())
                .append("leadAuditTime", getLeadAuditTime())
                .append("leadAuditCause", getLeadAuditCause())
                .append("centerAuditStatus", getCenterAuditStatus())
                .append("centerAuditUserid", getCenterAuditUserid())
                .append("centerAuditUsername", getCenterAuditUsername())
                .append("centerAuditTime", getCenterAuditTime())
                .append("centerAuditCause", getCenterAuditCause())
                .append("createTime", getCreateTime())
                .toString();
    }
}
