package com.keao.edu.user.entity;

import com.keao.edu.user.api.enums.ExamModeEnum;
import com.keao.edu.user.enums.ExamStatusEnum;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;

import java.util.Date;
import java.util.List;

/**
 * 对应数据库表(examination_basic):
 */
public class ExaminationBasic {

	@ApiModelProperty(value = "考级项目编号")
	private Long id;
	
	@ApiModelProperty(value = "项目名称")
	private String name;
	
	@ApiModelProperty(value = "考试模式")
	private ExamModeEnum examMode;
	
	@ApiModelProperty(value = "考点编号列表")
	private String examLocationIdList;

	@ApiModelProperty(value = "考点名称列表")
	private String examLocationNameList;

	@ApiModelProperty(value = "状态")
	private ExamStatusEnum status;

	@ApiModelProperty(value = "报名开始时间")
	private java.util.Date enrollStartTime;

	@ApiModelProperty(value = "报名结束时间")
	private java.util.Date enrollEndTime;

	@ApiModelProperty(value = "预计考试开始时间")
	private java.util.Date expectExamStartTime;

	@ApiModelProperty(value = "预计考试结束时间")
	private java.util.Date expectExamEndTime;

	@ApiModelProperty(value = "实际考试开始时间")
	private java.util.Date actualExamStartTime;

	@ApiModelProperty(value = "实际考试结束时间")
	private java.util.Date actualExamEndTime;

	@ApiModelProperty(value = "标题")
	private String posterTitle;

	@ApiModelProperty(value = "简介")
	private String posterProfile;

	@ApiModelProperty(value = "背景图")
	private String posterBackgroundImg;

	@ApiModelProperty(value = "自定义简章")
	private String customPoster;

	@ApiModelProperty(value = "合作单位编号")
	private Integer organId;

	@ApiModelProperty(value = "备注")
	private String memo;

	@ApiModelProperty(value = "考试地址")
	private List<ExamLocation> examLocations;

	private Integer creatorId;

	private java.util.Date createTime;

	private java.util.Date updateTime;

	private String tenantId;

	public ExaminationBasic() {
	}

	public ExaminationBasic(Long id, String name) {
		this.id = id;
		this.name = name;
	}

	public String getMemo() {
		return memo;
	}

	public void setMemo(String memo) {
		this.memo = memo;
	}

	public Long getId() {
		return id;
	}

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

	public void setName(String name){
		this.name = name;
	}
	
	public String getName(){
		return this.name;
	}
			
	public void setExamLocationIdList(String examLocationIdList){
		this.examLocationIdList = examLocationIdList;
	}
	
	public String getExamLocationIdList(){
		return this.examLocationIdList;
	}

	public String getExamLocationNameList() {
		return examLocationNameList;
	}

	public void setExamLocationNameList(String examLocationNameList) {
		this.examLocationNameList = examLocationNameList;
	}

	public ExamModeEnum getExamMode() {
		return examMode;
	}

	public void setExamMode(ExamModeEnum examMode) {
		this.examMode = examMode;
	}

	public ExamStatusEnum getStatus() {
		return status;
	}

	public void setStatus(ExamStatusEnum status) {
		this.status = status;
	}

	public String getCustomPoster() {
		return customPoster;
	}

	public void setCustomPoster(String customPoster) {
		this.customPoster = customPoster;
	}

	public void setEnrollStartTime(java.util.Date enrollStartTime){
		this.enrollStartTime = enrollStartTime;
	}
	
	public java.util.Date getEnrollStartTime(){
		return this.enrollStartTime;
	}
			
	public void setEnrollEndTime(java.util.Date enrollEndTime){
		this.enrollEndTime = enrollEndTime;
	}
	
	public java.util.Date getEnrollEndTime(){
		return this.enrollEndTime;
	}
			
	public void setExpectExamStartTime(java.util.Date expectExamStartTime){
		this.expectExamStartTime = expectExamStartTime;
	}
	
	public java.util.Date getExpectExamStartTime(){
		return this.expectExamStartTime;
	}
			
	public void setExpectExamEndTime(java.util.Date expectExamEndTime){
		this.expectExamEndTime = expectExamEndTime;
	}
	
	public java.util.Date getExpectExamEndTime(){
		return this.expectExamEndTime;
	}

	public Date getActualExamStartTime() {
		return actualExamStartTime;
	}

	public void setActualExamStartTime(Date actualExamStartTime) {
		this.actualExamStartTime = actualExamStartTime;
	}

	public Date getActualExamEndTime() {
		return actualExamEndTime;
	}

	public void setActualExamEndTime(Date actualExamEndTime) {
		this.actualExamEndTime = actualExamEndTime;
	}

	public void setPosterTitle(String posterTitle){
		this.posterTitle = posterTitle;
	}
	
	public String getPosterTitle(){
		return this.posterTitle;
	}
			
	public void setPosterProfile(String posterProfile){
		this.posterProfile = posterProfile;
	}
	
	public String getPosterProfile(){
		return this.posterProfile;
	}
			
	public void setPosterBackgroundImg(String posterBackgroundImg){
		this.posterBackgroundImg = posterBackgroundImg;
	}
	
	public String getPosterBackgroundImg(){
		return this.posterBackgroundImg;
	}

	public Integer getOrganId() {
		return organId;
	}

	public void setOrganId(Integer organId) {
		this.organId = organId;
	}

	public void setCreateTime(java.util.Date createTime){
		this.createTime = createTime;
	}
	
	public java.util.Date getCreateTime(){
		return this.createTime;
	}
			
	public void setUpdateTime(java.util.Date updateTime){
		this.updateTime = updateTime;
	}
	
	public java.util.Date getUpdateTime(){
		return this.updateTime;
	}
			
	public void setTenantId(String tenantId){
		this.tenantId = tenantId;
	}
	
	public String getTenantId(){
		return this.tenantId;
	}

	public Integer getCreatorId() {
		return creatorId;
	}

	public void setCreatorId(Integer creatorId) {
		this.creatorId = creatorId;
	}

	public List<ExamLocation> getExamLocations() {
		return examLocations;
	}

	public void setExamLocations(List<ExamLocation> examLocations) {
		this.examLocations = examLocations;
	}
			
	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}

}
