package com.ruoyi.oa.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;

/**
 * cmc项目工作量对象 cmc_project_workload
 *
 * @author cmc
 * @date 2024-09-02
 */
public class CmcProjectWorkload extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 工作量id */
    private Long workloadId;

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

    /** 项目信息 */
    private CmcProject project;

    /** 工作内容 */
    @Excel(name = "工作内容")
    private String content;
    /** 等级或比例尺 */
    @Excel(name = "等级或比例尺")
    private String scale;

    /** 单位 */
    @Excel(name = "单位")
    private String unit;

    /** 实际工作量 */
    @Excel(name = "实际工作量")
    private String workload;

    /** 实际完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "实际完成时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date finishTime;

    public void setWorkloadId(Long workloadId)
    {
        this.workloadId = workloadId;
    }

    public Long getWorkloadId()
    {
        return workloadId;
    }
    public void setProjectId(String projectId)
    {
        this.projectId = projectId;
    }

    public String getProjectId()
    {
        return projectId;
    }
    public void setContent(String content)
    {
        this.content = content;
    }

    public String getContent()
    {
        return content;
    }
    public void setScale(String scale)
    {
        this.scale = scale;
    }

    public String getScale()
    {
        return scale;
    }
    public void setUnit(String unit)
    {
        this.unit = unit;
    }

    public String getUnit()
    {
        return unit;
    }
    public void setWorkload(String workload)
    {
        this.workload = workload;
    }

    public String getWorkload()
    {
        return workload;
    }
    public void setFinishTime(Date finishTime)
    {
        this.finishTime = finishTime;
    }

    public Date getFinishTime()
    {
        return finishTime;
    }
    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;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("workloadId", getWorkloadId())
                .append("projectId", getProjectId())
                .append("content", getContent())
                .append("scale", getScale())
                .append("unit", getUnit())
                .append("workload", getWorkload())
                .append("finishTime", getFinishTime())
                .append("remark", getRemark())
                .toString();
    }
}
