package com.ruoyi.project.production.controller.vo;

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;

/**
 * SAI开项管理导出VO
 *
 * @author ruoyi
 * @date 2023-03-21
 */
public class SaiApplyExportVO extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    @Excel(name = "序号", width = 8)
    private String no;

    @Excel(name = "装置")
    private String plantName;

    @Excel(name = "姓名")
    private String staffName;

    @Excel(name = "班组")
    private String staffTeam;

    @Excel(name = "员工号")
    private String staffId;

//    @Excel(name = "月份", width = 8)
    private String month;

//    @Excel(name = "日期", width = 8)
    private String date;

    /** 登记时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    @Excel(name = "登记时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyDate;

    /** 不安全行为 */
    @Excel(name = "不安全行为", width = 50)
    private String unsafeAction;

    /** 不安全状态 */
    @Excel(name = "不安全状态", width = 50)
    private String unsafeStatus;

    /** 问题描述 */
    @Excel(name = "问题描述", width = 50)
    private String description;

    /** 采取的措施 */
    @Excel(name = "采取的措施", width = 50)
    private String reaction;

    /** 整改负责人 */
    @Excel(name = "责任人")
    private String executor;

    /** 预计完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    @Excel(name = "预计完成日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date estimateFinishDate;

    /** 实际完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    @Excel(name = "实际完成日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date actualFinishDate;

    /** 是否录入开项系统 */
    @Excel(name = "是否录入开项系统")
    private String isRecorded;

    /** 验收人 */
    @Excel(name = "验证人")
    private String inspectors;

    /** 实际完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8")
    @Excel(name = "验证日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date validateDate;

    /** 申请状态 */
    @Excel(name = "状态")
    private String applyStatus;

    /** 备注 */
    @Excel(name = "验证描述", width = 50)
    private String remarks;

    @Excel(name = "备注")
    private String remark;

    /** SAI级别 */
    @Excel(name = "SAI级别")
    private Long saiLevel;

    /** SAI类别 */
    @Excel(name = "SAI类别")
    private String category;

    public Date getApplyDate() {
        return applyDate;
    }

    public void setApplyDate(Date applyDate) {
        this.applyDate = applyDate;
    }

    public String getStaffTeam() {
        return staffTeam;
    }

    public void setStaffTeam(String staffTeam) {
        this.staffTeam = staffTeam;
    }

    public Long getSaiLevel() {
        return saiLevel;
    }

    public void setSaiLevel(Long saiLevel) {
        this.saiLevel = saiLevel;
    }

    public String getCategory() {
        return category;
    }

    public void setCategory(String category) {
        this.category = category;
    }

    public String getNo() {
        return no;
    }

    public void setNo(String no) {
        this.no = no;
    }

    public String getPlantName() {
        return plantName;
    }

    public void setPlantName(String plantName) {
        this.plantName = plantName;
    }

    public String getStaffName() {
        return staffName;
    }

    public void setStaffName(String staffName) {
        this.staffName = staffName;
    }

    public String getStaffId() {
        return staffId;
    }

    public void setStaffId(String staffId) {
        this.staffId = staffId;
    }

    public String getMonth() {
        return month;
    }

    public void setMonth(String month) {
        this.month = month;
    }

    public String getDate() {
        return date;
    }

    public void setDate(String date) {
        this.date = date;
    }

    public String getUnsafeAction() {
        return unsafeAction;
    }

    public void setUnsafeAction(String unsafeAction) {
        this.unsafeAction = unsafeAction;
    }

    public String getUnsafeStatus() {
        return unsafeStatus;
    }

    public void setUnsafeStatus(String unsafeStatus) {
        this.unsafeStatus = unsafeStatus;
    }

    public Date getValidateDate() {
        return validateDate;
    }

    public void setValidateDate(Date validateDate) {
        this.validateDate = validateDate;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getReaction() {
        return reaction;
    }

    public void setReaction(String reaction) {
        this.reaction = reaction;
    }

    public String getExecutor() {
        return executor;
    }

    public void setExecutor(String executor) {
        this.executor = executor;
    }

    public Date getEstimateFinishDate() {
        return estimateFinishDate;
    }

    public void setEstimateFinishDate(Date estimateFinishDate) {
        this.estimateFinishDate = estimateFinishDate;
    }

    public Date getActualFinishDate() {
        return actualFinishDate;
    }

    public void setActualFinishDate(Date actualFinishDate) {
        this.actualFinishDate = actualFinishDate;
    }

    public String getIsRecorded() {
        return isRecorded;
    }

    public void setIsRecorded(String isRecorded) {
        this.isRecorded = isRecorded;
    }

    public String getInspectors() {
        return inspectors;
    }

    public void setInspectors(String inspectors) {
        this.inspectors = inspectors;
    }

    public String getApplyStatus() {
        return applyStatus;
    }

    public void setApplyStatus(String applyStatus) {
        this.applyStatus = applyStatus;
    }

    public String getRemarks() {
        return remarks;
    }

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

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }
}
