package com.ruoyi.project.apply.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 组织保护措施状态变更申请对象 t_apply_safetychange
 *
 * @author ruoyi
 * @date 2023-02-09
 */
public class TApplySafetychange extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一标识ID */
    private Long id;

    private Long[] ids;

    /** 组织保护措施变更描述 */
    @Excel(width = 20,name = "组织保护措施变更描述")
    private String changeDescribe;

    /**
     申请状态1：申请中，2：已通过，3：已拒绝 */
    @Excel(name = "申请状态",readConverterExp = "1=申请中,2=已通过,3=已拒绝")
    private String approveStatus;

    /** 状态 */
    @Excel(name = "状态",readConverterExp = "0=未完成,1=已完成")
    private Long status;

    /** 状态变更原因 */
    @Excel(name = "状态变更原因")
    private String changeReason;

    /**
     * 破锁编号
     */
    @Excel(name = "破锁编号")
    private String lockNo;

    /** 申请人id */
    private String applicant;

    /** 申请人姓名 */
    @Excel(name = "申请人")
    private String applicantName;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date applicationTime;

    /** 安全评估及临时的安全措施 */
    @Excel(width = 30,name = "安全评估及临时的安全措施")
    private String safa;

    /** 安全评估人id */
    private String safaer;

    /** 安全评估人姓名 */
    @Excel(name = "安全评估人")
    private String safaerName;

    /** 安全评估时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @Excel(name = "评估时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date safaTime;

    /** 批准人id */
    private String approver;

    /** 批准人姓名 */
    @Excel(name = "批准人")
    private String approverName;

    /** 批准时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @Excel(name = "批准时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date approveTime;

    /** 临时安全措施执行人id */
    private String executor;

    /** 临时安全措施执行人姓名 */
    @Excel(name = "临时安全措施执行人")
    private String executorName;

    /** 临时安全措施执行时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @Excel(name = "执行时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date executionTime;

    /** 临时安全措施确认人id */
    private String confirmer;

    /** 临时安全措施确认人姓名 */
    @Excel(name = "临时安全措施确认人")
    private String confirmerName;

    /** 临时安全措施确认时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @Excel(name = "确认时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date confirmTime;

    /** 组织保护措施状态变更执行 */
    @Excel(width = 30,name = "组织保护措施状态变更执行")
    private String changeExecution;

    /** 执行人id */
    private String changeExecutor;

    /** 执行人姓名 */
    @Excel(name = "执行人")
    private String changeExecutorName;

    /** 执行时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    @Excel(name = "执行时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm")
    private Date changeExecutorTime;

    /** 组织保护措施是否已经恢复至变更前的状态 */
    private String resetConfirm;

    /** 状态恢复，确认人1id */
    private String resetConfirmer1;

    /** 状态恢复，确认人1姓名 */
    private String resetConfirmerName1;

    /** 状态恢复，确认时间1 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    private Date resetConfirmTime1;

    /** 状态恢复，确认人2id */
    private String resetConfirmer2;

    /** 状态恢复，确认人2姓名 */
    private String resetConfirmerName2;

    /** 状态恢复，确认时间2 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm" , timezone = "GMT+8")
    private Date resetConfirmTime2;

    /** 状态恢复后，之前采取的安全措施是否已撤销: */
    private String revokeConfirm;

    /** 备注 */
    @Excel(name = "备注")
    private String remarks;


    /** 状态 0 ：正常 ；1：删除 */
    private Long delFlag;

    /** 创建人 */
    private String createrCode;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    private Date createdate;

    /** 修改人 */
    private Long updaterCode;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    private Date updatedate;

    /** 部门编号 */
    private Long deptId;


    /**
     * 流程id
     */
    private String processId;

    /**
     * 申请编号
     */
    private String apNo;

    private String deptName;

    public Long[] getIds() {
        return ids;
    }

    public void setIds(Long[] ids) {
        this.ids = ids;
    }

    public String getLockNo() {
        return lockNo;
    }

    public void setLockNo(String lockNo) {
        this.lockNo = lockNo;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getProcessId() {
        return processId;
    }

    public void setProcessId(String processId) {
        this.processId = processId;
    }

    public String getApNo() {
        return apNo;
    }

    public void setApNo(String apNo) {
        this.apNo = apNo;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setChangeDescribe(String changeDescribe)
    {
        this.changeDescribe = changeDescribe;
    }

    public String getChangeDescribe()
    {
        return changeDescribe;
    }
    public void setChangeReason(String changeReason)
    {
        this.changeReason = changeReason;
    }

    public String getChangeReason()
    {
        return changeReason;
    }
    public void setApplicant(String applicant)
    {
        this.applicant = applicant;
    }

    public String getApplicant()
    {
        return applicant;
    }
    public void setApplicantName(String applicantName)
    {
        this.applicantName = applicantName;
    }

    public String getApplicantName()
    {
        return applicantName;
    }
    public void setApplicationTime(Date applicationTime)
    {
        this.applicationTime = applicationTime;
    }

    public Date getApplicationTime()
    {
        return applicationTime;
    }
    public void setSafa(String safa)
    {
        this.safa = safa;
    }

    public String getSafa()
    {
        return safa;
    }
    public void setSafaer(String safaer)
    {
        this.safaer = safaer;
    }

    public String getSafaer()
    {
        return safaer;
    }
    public void setSafaerName(String safaerName)
    {
        this.safaerName = safaerName;
    }

    public String getSafaerName()
    {
        return safaerName;
    }
    public void setSafaTime(Date safaTime)
    {
        this.safaTime = safaTime;
    }

    public Date getSafaTime()
    {
        return safaTime;
    }
    public void setApprover(String approver)
    {
        this.approver = approver;
    }

    public String getApprover()
    {
        return approver;
    }
    public void setApproverName(String approverName)
    {
        this.approverName = approverName;
    }

    public String getApproverName()
    {
        return approverName;
    }
    public void setApproveTime(Date approveTime)
    {
        this.approveTime = approveTime;
    }

    public Date getApproveTime()
    {
        return approveTime;
    }
    public void setExecutor(String executor)
    {
        this.executor = executor;
    }

    public String getExecutor()
    {
        return executor;
    }
    public void setExecutorName(String executorName)
    {
        this.executorName = executorName;
    }

    public String getExecutorName()
    {
        return executorName;
    }
    public void setExecutionTime(Date executionTime)
    {
        this.executionTime = executionTime;
    }

    public Date getExecutionTime()
    {
        return executionTime;
    }
    public void setConfirmer(String confirmer)
    {
        this.confirmer = confirmer;
    }

    public String getConfirmer()
    {
        return confirmer;
    }
    public void setConfirmerName(String confirmerName)
    {
        this.confirmerName = confirmerName;
    }

    public String getConfirmerName()
    {
        return confirmerName;
    }
    public void setConfirmTime(Date confirmTime)
    {
        this.confirmTime = confirmTime;
    }

    public Date getConfirmTime()
    {
        return confirmTime;
    }
    public void setChangeExecution(String changeExecution)
    {
        this.changeExecution = changeExecution;
    }

    public String getChangeExecution()
    {
        return changeExecution;
    }
    public void setChangeExecutor(String changeExecutor)
    {
        this.changeExecutor = changeExecutor;
    }

    public String getChangeExecutor()
    {
        return changeExecutor;
    }
    public void setChangeExecutorName(String changeExecutorName)
    {
        this.changeExecutorName = changeExecutorName;
    }

    public String getChangeExecutorName()
    {
        return changeExecutorName;
    }
    public void setChangeExecutorTime(Date changeExecutorTime)
    {
        this.changeExecutorTime = changeExecutorTime;
    }

    public Date getChangeExecutorTime()
    {
        return changeExecutorTime;
    }
    public void setResetConfirm(String resetConfirm)
    {
        this.resetConfirm = resetConfirm;
    }

    public String getResetConfirm()
    {
        return resetConfirm;
    }
    public void setResetConfirmer1(String resetConfirmer1)
    {
        this.resetConfirmer1 = resetConfirmer1;
    }

    public String getResetConfirmer1()
    {
        return resetConfirmer1;
    }
    public void setResetConfirmerName1(String resetConfirmerName1)
    {
        this.resetConfirmerName1 = resetConfirmerName1;
    }

    public String getResetConfirmerName1()
    {
        return resetConfirmerName1;
    }
    public void setResetConfirmTime1(Date resetConfirmTime1)
    {
        this.resetConfirmTime1 = resetConfirmTime1;
    }

    public Date getResetConfirmTime1()
    {
        return resetConfirmTime1;
    }
    public void setResetConfirmer2(String resetConfirmer2)
    {
        this.resetConfirmer2 = resetConfirmer2;
    }

    public String getResetConfirmer2()
    {
        return resetConfirmer2;
    }
    public void setResetConfirmerName2(String resetConfirmerName2)
    {
        this.resetConfirmerName2 = resetConfirmerName2;
    }

    public String getResetConfirmerName2()
    {
        return resetConfirmerName2;
    }
    public void setResetConfirmTime2(Date resetConfirmTime2)
    {
        this.resetConfirmTime2 = resetConfirmTime2;
    }

    public Date getResetConfirmTime2()
    {
        return resetConfirmTime2;
    }
    public void setRevokeConfirm(String revokeConfirm)
    {
        this.revokeConfirm = revokeConfirm;
    }

    public String getRevokeConfirm()
    {
        return revokeConfirm;
    }
    public void setRemarks(String remarks)
    {
        this.remarks = remarks;
    }

    public String getRemarks()
    {
        return remarks;
    }
    public void setStatus(Long status)
    {
        this.status = status;
    }

    public Long getStatus()
    {
        return status;
    }
    public void setDelFlag(Long delFlag)
    {
        this.delFlag = delFlag;
    }

    public Long getDelFlag()
    {
        return delFlag;
    }
    public void setCreaterCode(String createrCode)
    {
        this.createrCode = createrCode;
    }

    public String getCreaterCode()
    {
        return createrCode;
    }
    public void setCreatedate(Date createdate)
    {
        this.createdate = createdate;
    }

    public Date getCreatedate()
    {
        return createdate;
    }
    public void setUpdaterCode(Long updaterCode)
    {
        this.updaterCode = updaterCode;
    }

    public Long getUpdaterCode()
    {
        return updaterCode;
    }
    public void setUpdatedate(Date updatedate)
    {
        this.updatedate = updatedate;
    }

    public Date getUpdatedate()
    {
        return updatedate;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }
    public void setApproveStatus(String approveStatus)
    {
        this.approveStatus = approveStatus;
    }

    public String getApproveStatus()
    {
        return approveStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("changeDescribe", getChangeDescribe())
            .append("changeReason", getChangeReason())
            .append("applicant", getApplicant())
            .append("applicantName", getApplicantName())
            .append("applicationTime", getApplicationTime())
            .append("safa", getSafa())
            .append("safaer", getSafaer())
            .append("safaerName", getSafaerName())
            .append("safaTime", getSafaTime())
            .append("approver", getApprover())
            .append("approverName", getApproverName())
            .append("approveTime", getApproveTime())
            .append("executor", getExecutor())
            .append("executorName", getExecutorName())
            .append("executionTime", getExecutionTime())
            .append("confirmer", getConfirmer())
            .append("confirmerName", getConfirmerName())
            .append("confirmTime", getConfirmTime())
            .append("changeExecution", getChangeExecution())
            .append("changeExecutor", getChangeExecutor())
            .append("changeExecutorName", getChangeExecutorName())
            .append("changeExecutorTime", getChangeExecutorTime())
            .append("resetConfirm", getResetConfirm())
            .append("resetConfirmer1", getResetConfirmer1())
            .append("resetConfirmerName1", getResetConfirmerName1())
            .append("resetConfirmTime1", getResetConfirmTime1())
            .append("resetConfirmer2", getResetConfirmer2())
            .append("resetConfirmerName2", getResetConfirmerName2())
            .append("resetConfirmTime2", getResetConfirmTime2())
            .append("revokeConfirm", getRevokeConfirm())
            .append("remarks", getRemarks())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createrCode", getCreaterCode())
            .append("createdate", getCreatedate())
            .append("updaterCode", getUpdaterCode())
            .append("updatedate", getUpdatedate())
            .append("deptId", getDeptId())
            .append("approveStatus", getApproveStatus())
            .toString();
    }
}
