/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.project.entity;

import com.jeeplus.modules.workclientinfo.entity.WorkClientLinkman;
import javax.validation.constraints.NotNull;
import com.jeeplus.modules.workcontractinfo.entity.WorkContractInfo;
import com.jeeplus.modules.project.entity.Projectgeneral;
import com.jeeplus.modules.project.entity.ProjectEvaluationRecord;
import com.jeeplus.modules.project.entity.Workprojectgroup;

import com.jeeplus.common.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;

/**
 * 项目表Entity
 * @author fgy
 * @version 2017-10-12
 */
public class Project extends DataEntity<Project> {
	
	private static final long serialVersionUID = 1L;
	private String status;		// 项目状态（0：项目登记、1：项目评标、2：项目归档）
	private String projectNumber;		// 项目编号
	private String projectName;		// 项目名称
	private String tendereeType;		// 招标方式（0：直接发包:1：”竞争性谈判、2：公开招标、3：邀请招标、4：其他）
	private String batch;		// 批次
	private String investmentAmounts;		// 投资额
	private WorkClientLinkman entrustCompany;		// 委托单位
	private WorkContractInfo contractInfo;		// 合同信息
	private Projectgeneral projectGeneral;		// 项目概况
	private WorkClientLinkman workClientLinkman;		// 投标单位
	private ProjectEvaluationRecord projectEvaluationRecord;		// 评标记录
	private Workprojectgroup workprojectgroup;		// 项目组信息
	
	public Project() {
		super();
	}

	public Project(String id){
		super(id);
	}

	@ExcelField(title="项目状态（0：项目登记、1：项目评标、2：项目归档）", dictType="", align=2, sort=1)
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@ExcelField(title="项目编号", align=2, sort=2)
	public String getProjectNumber() {
		return projectNumber;
	}

	public void setProjectNumber(String projectNumber) {
		this.projectNumber = projectNumber;
	}
	
	@ExcelField(title="项目名称", align=2, sort=3)
	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}
	
	@ExcelField(title="招标方式（0：直接发包:1：”竞争性谈判、2：公开招标、3：邀请招标、4：其他）", dictType="", align=2, sort=4)
	public String getTendereeType() {
		return tendereeType;
	}

	public void setTendereeType(String tendereeType) {
		this.tendereeType = tendereeType;
	}
	
	@ExcelField(title="批次", align=2, sort=5)
	public String getBatch() {
		return batch;
	}

	public void setBatch(String batch) {
		this.batch = batch;
	}
	
	@ExcelField(title="投资额", align=2, sort=6)
	public String getInvestmentAmounts() {
		return investmentAmounts;
	}

	public void setInvestmentAmounts(String investmentAmounts) {
		this.investmentAmounts = investmentAmounts;
	}
	
	@NotNull(message="委托单位不能为空")
	@ExcelField(title="委托单位", align=2, sort=7)
	public WorkClientLinkman getEntrustCompany() {
		return entrustCompany;
	}

	public void setEntrustCompany(WorkClientLinkman entrustCompany) {
		this.entrustCompany = entrustCompany;
	}
	
	@ExcelField(title="合同信息", align=2, sort=8)
	public WorkContractInfo getContractInfo() {
		return contractInfo;
	}

	public void setContractInfo(WorkContractInfo contractInfo) {
		this.contractInfo = contractInfo;
	}
	
	@ExcelField(title="项目概况", align=2, sort=9)
	public Projectgeneral getProjectGeneral() {
		return projectGeneral;
	}

	public void setProjectGeneral(Projectgeneral projectGeneral) {
		this.projectGeneral = projectGeneral;
	}
	
	@ExcelField(title="投标单位", align=2, sort=10)
	public WorkClientLinkman getWorkClientLinkman() {
		return workClientLinkman;
	}

	public void setWorkClientLinkman(WorkClientLinkman workClientLinkman) {
		this.workClientLinkman = workClientLinkman;
	}
	
	@ExcelField(title="评标记录", align=2, sort=11)
	public ProjectEvaluationRecord getProjectEvaluationRecord() {
		return projectEvaluationRecord;
	}

	public void setProjectEvaluationRecord(ProjectEvaluationRecord projectEvaluationRecord) {
		this.projectEvaluationRecord = projectEvaluationRecord;
	}
	
	@ExcelField(title="项目组信息", align=2, sort=12)
	public Workprojectgroup getWorkprojectgroup() {
		return workprojectgroup;
	}

	public void setWorkprojectgroup(Workprojectgroup workprojectgroup) {
		this.workprojectgroup = workprojectgroup;
	}
	
}