package com.yanzhu.jh.project.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.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 设计管理对象 sur_project_build_design_data
 * 
 * @author ruoyi
 * @date 2024-03-16
 */
public class SurProjectBuildDesignData extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 节点编号 */
    @Excel(name = "节点编号")
    private Long nodeId;

    /** 项目ID */
    @Excel(name = "项目ID")
    private Long projectId;

    /** 责任人 */
    @Excel(name = "责任人")
    private String ownerName;

    /** 责任人电话 */
    @Excel(name = "责任人电话")
    private String ownerPhone;

    /** 数据日期，同一周一套数据 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "数据日期，同一周一套数据", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dataDate;

    /** 开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date startDate;

    /** 计划开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planStartDate;

    /** 结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    /** 计划结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planEndDate;

    /** 工期 */
    @Excel(name = "工期")
    private Long duration;

    /** 剩余天数 */
    @Excel(name = "剩余天数")
    private Long remainingDays;

    /** a.进行中 当前时间小于计划结束日期 */
    @Excel(name = "a.进行中 当前时间小于计划结束日期")
    private String status;

    /** 文件 */
    @Excel(name = "文件")
    private String files;

    /** 本周完成工作 */
    @Excel(name = "本周完成工作")
    private String work;

    /** 下周计划 */
    @Excel(name = "下周计划")
    private String nextWeekWork;

    /** 存在问题 */
    @Excel(name = "存在问题")
    private String problem;

    /** 删除状态 */
    @Excel(name = "删除状态")
    private Long isDel;

    /** 修改记录 */
    @Excel(name = "修改记录")
    private String updateInfo;

    private BaseBuildNode baseBuildNode;

    public BaseBuildNode getBaseBuildNode() {
        return baseBuildNode;
    }

    public void setBaseBuildNode(BaseBuildNode baseBuildNode) {
        this.baseBuildNode = baseBuildNode;
    }

    public SurProject getProject() {
        return project;
    }

    public void setProject(SurProject project) {
        this.project = project;
    }

    private SurProject project;


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

    public Long getId() 
    {
        return id;
    }
    public void setNodeId(Long nodeId) 
    {
        this.nodeId = nodeId;
    }

    public Long getNodeId() 
    {
        return nodeId;
    }
    public void setProjectId(Long projectId) 
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }
    public void setOwnerName(String ownerName) 
    {
        this.ownerName = ownerName;
    }

    public String getOwnerName() 
    {
        return ownerName;
    }
    public void setOwnerPhone(String ownerPhone) 
    {
        this.ownerPhone = ownerPhone;
    }

    public String getOwnerPhone() 
    {
        return ownerPhone;
    }
    public void setDataDate(Date dataDate) 
    {
        this.dataDate = dataDate;
    }

    public Date getDataDate() 
    {
        return dataDate;
    }
    public void setStartDate(Date startDate) 
    {
        this.startDate = startDate;
    }

    public Date getStartDate() 
    {
        return startDate;
    }
    public void setPlanStartDate(Date planStartDate) 
    {
        this.planStartDate = planStartDate;
    }

    public Date getPlanStartDate() 
    {
        return planStartDate;
    }
    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }
    public void setPlanEndDate(Date planEndDate) 
    {
        this.planEndDate = planEndDate;
    }

    public Date getPlanEndDate() 
    {
        return planEndDate;
    }
    public void setDuration(Long duration) 
    {
        this.duration = duration;
    }

    public Long getDuration() 
    {
        return duration;
    }
    public void setRemainingDays(Long remainingDays) 
    {
        this.remainingDays = remainingDays;
    }

    public Long getRemainingDays() 
    {
        return remainingDays;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setFiles(String files) 
    {
        this.files = files;
    }

    public String getFiles() 
    {
        return files;
    }
    public void setWork(String work) 
    {
        this.work = work;
    }

    public String getWork() 
    {
        return work;
    }
    public void setNextWeekWork(String nextWeekWork) 
    {
        this.nextWeekWork = nextWeekWork;
    }

    public String getNextWeekWork() 
    {
        return nextWeekWork;
    }
    public void setProblem(String problem) 
    {
        this.problem = problem;
    }

    public String getProblem() 
    {
        return problem;
    }
    public void setIsDel(Long isDel) 
    {
        this.isDel = isDel;
    }

    public Long getIsDel() 
    {
        return isDel;
    }
    public void setUpdateInfo(String updateInfo) 
    {
        this.updateInfo = updateInfo;
    }

    public String getUpdateInfo() 
    {
        return updateInfo;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("nodeId", getNodeId())
            .append("projectId", getProjectId())
            .append("ownerName", getOwnerName())
            .append("ownerPhone", getOwnerPhone())
            .append("dataDate", getDataDate())
            .append("startDate", getStartDate())
            .append("planStartDate", getPlanStartDate())
            .append("endDate", getEndDate())
            .append("planEndDate", getPlanEndDate())
            .append("duration", getDuration())
            .append("remainingDays", getRemainingDays())
            .append("status", getStatus())
            .append("remark", getRemark())
            .append("files", getFiles())
            .append("work", getWork())
            .append("nextWeekWork", getNextWeekWork())
            .append("problem", getProblem())
            .append("isDel", getIsDel())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("updateInfo", getUpdateInfo())
            .toString();
    }
}
