package com.ruoyi.oa.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.entity.SysUser;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * cmc安全交底对象 cmc_safe
 * 
 * @author cmc
 * @date 2024-04-03
 */
public class CmcSafe extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 安全交底id */
    private String safeId;

    /** 项目id */
    private String projectId;
    @Excel(name = "项目编号")
    private String projectNumber;
    @Excel(name = "项目名称")
    private String projectName;

    /** 环境要求 */
    @Excel(name = "环境要求")
    private String environmentComment;

    /** 外业要求 */
    @Excel(name = "外业要求")
    private String outsideComment;

    /** 内业要求 */
    @Excel(name = "内业要求")
    private String insideComment;

    /** 安全交底意见 */
    @Excel(name = "安全交底意见")
    private String disclosureComment;

    /** 安全交底人 */
    @Excel(name = "安全交底人")
    private String disclosurerUserName;
    private Long disclosurer;

    /** 安全交底时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "安全交底时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date disclosureTime;

    /** 接受交底意见 */
    @Excel(name = "接受交底意见")
    private String acceptComment;

    /** 接受交底人 */
    @Excel(name = "接受交底人")
    private String acceptUserName;
    private Long disclosureAccepter;

    /** 接受交底时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "接受交底时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date acceptTime;

    private SysUser accepterUser;

    private SysUser disclosurerUser;

    private CmcProject project;

    public void setSafeId(String safeId) 
    {
        this.safeId = safeId;
    }

    public String getSafeId() 
    {
        return safeId;
    }
    public void setProjectId(String projectId) 
    {
        this.projectId = projectId;
    }

    public String getProjectId() 
    {
        return projectId;
    }
    public void setProject(CmcProject project)
    {
        this.project = project;
        this.projectNumber = project == null ? "" : project.getProjectNumber();
        this.projectName = project == null ? "" : project.getProjectName();
    }

    public CmcProject getProject()
    {
        return project;
    }
    public void setDisclosureAccepter(Long disclosureAccepter) 
    {
        this.disclosureAccepter = disclosureAccepter;
    }

    public Long getDisclosureAccepter()
    {
        return disclosureAccepter;
    }
    public void setAccepterUser(SysUser accepterUser)
    {
        this.accepterUser = accepterUser;
        this.acceptUserName = accepterUser == null ? "" : accepterUser.getNickName();
    }

    public SysUser getAccepterUser()
    {
        return accepterUser;
    }
    public void setDisclosurer(Long disclosurer) 
    {
        this.disclosurer = disclosurer;
    }

    public Long getDisclosurer() 
    {
        return disclosurer;
    }

    public void setDisclosurerUser(SysUser disclosurerUser)
    {
        this.disclosurerUser = disclosurerUser;
        this.disclosurerUserName = disclosurerUser == null ? "" : disclosurerUser.getNickName();
    }

    public SysUser getDisclosurerUser()
    {
        return disclosurerUser;
    }
    public void setEnvironmentComment(String environmentComment) 
    {
        this.environmentComment = environmentComment;
    }

    public String getEnvironmentComment() 
    {
        return environmentComment;
    }
    public void setOutsideComment(String outsideComment) 
    {
        this.outsideComment = outsideComment;
    }

    public String getOutsideComment() 
    {
        return outsideComment;
    }
    public void setInsideComment(String insideComment) 
    {
        this.insideComment = insideComment;
    }

    public String getInsideComment() 
    {
        return insideComment;
    }
    public void setDisclosureComment(String disclosureComment) 
    {
        this.disclosureComment = disclosureComment;
    }

    public String getDisclosureComment() 
    {
        return disclosureComment;
    }
    public void setAcceptComment(String acceptComment)
    {
        this.acceptComment = acceptComment;
    }

    public String getAcceptComment()
    {
        return acceptComment;
    }
    public void setDisclosureTime(Date disclosureTime) 
    {
        this.disclosureTime = disclosureTime;
    }

    public Date getDisclosureTime() 
    {
        return disclosureTime;
    }
    public void setAcceptTime(Date acceptTime) 
    {
        this.acceptTime = acceptTime;
    }

    public Date getAcceptTime() 
    {
        return acceptTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("safeId", getSafeId())
            .append("projectId", getProjectId())
            .append("disclosureAccepter", getDisclosureAccepter())
            .append("disclosurer", getDisclosurer())
            .append("environmentComment", getEnvironmentComment())
            .append("outsideComment", getOutsideComment())
            .append("insideComment", getInsideComment())
            .append("disclosureComment", getDisclosureComment())
            .append("acceptComment", getAcceptComment())
            .append("disclosureTime", getDisclosureTime())
            .append("acceptTime", getAcceptTime())
            .toString();
    }
}
