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

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jeeplus.common.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;
import org.hibernate.validator.constraints.Email;

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

/**
 * 评委Entity
 * @author fgy
 * @version 2017-12-26
 */
public class Judge extends DataEntity<Judge> {
	
	private static final long serialVersionUID = 1L;
	private String name;		// 姓名
	private String number;		// 编号
	private String gender;		// 性别
	private Date birthday;		// 出生年月
	private String companyName;		// 工作单位
	private String titleLevel;		// 职称(1中级，2高级)
	private String mobile;		// 联系电话
	private String registrationQualification;		// 注册资格
	private String email;		// email
	private String qq;		// qq
	private String idcard;		// 身份证号
	private String address;		// 家庭住址
	private String consultType;		// 咨询类型
	private String consultProfession;		// 咨询专业
	private String isRetire;		// 是否退休（0否，1是）
	private String performance;		// 工作业绩
	private String qualificationCredentials;		// 执业资格
	private String qualificationCredentialsMore;		// 其他执业资格说明
	private List<Workattachment> judgeAttachmentList;   //附件
	private List<Workattachment> workAttachments;
	private String companyId;
	private String officeId;


	public Judge() {
		super();
	}

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

	@ExcelField(title="姓名", align=2, sort=7)
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	@ExcelField(title="编号", align=2, sort=8)
	public String getNumber() {
		return number;
	}

	public void setNumber(String number) {
		this.number = number;
	}
	
	@ExcelField(title="性别", dictType="sex", align=2, sort=9)
	public String getGender() {
		return gender;
	}

	public void setGender(String gender) {
		this.gender = gender;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="出生年月", align=2, sort=10)
	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	
	@ExcelField(title="工作单位", align=2, sort=11)
	public String getCompanyName() {
		return companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}
	
	@ExcelField(title="职称(1中级，2高级)", dictType="title_level", align=2, sort=12)
	public String getTitleLevel() {
		return titleLevel;
	}

	public void setTitleLevel(String titleLevel) {
		this.titleLevel = titleLevel;
	}
	
	@ExcelField(title="联系电话", align=2, sort=13)
	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}
	
	@ExcelField(title="注册资格", align=2, sort=14)
	public String getRegistrationQualification() {
		return registrationQualification;
	}

	public void setRegistrationQualification(String registrationQualification) {
		this.registrationQualification = registrationQualification;
	}
	
	@Email(message="email必须为合法邮箱")
	@ExcelField(title="email", align=2, sort=15)
	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}
	
	@ExcelField(title="qq", align=2, sort=16)
	public String getQq() {
		return qq;
	}

	public void setQq(String qq) {
		this.qq = qq;
	}
	
	@ExcelField(title="身份证号", align=2, sort=17)
	public String getIdcard() {
		return idcard;
	}

	public void setIdcard(String idcard) {
		this.idcard = idcard;
	}
	
	@ExcelField(title="家庭住址", align=2, sort=18)
	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}
	
	@ExcelField(title="咨询类型", dictType="consult_type", align=2, sort=19)
	public String getConsultType() {
		return consultType;
	}

	public void setConsultType(String consultType) {
		this.consultType = consultType;
	}
	
	@ExcelField(title="咨询专业", dictType="consult_profession", align=2, sort=20)
	public String getConsultProfession() {
		return consultProfession;
	}

	public void setConsultProfession(String consultProfession) {
		this.consultProfession = consultProfession;
	}
	
	@ExcelField(title="是否退休（0否，1是）", dictType="is_retire", align=2, sort=21)
	public String getIsRetire() {
		return isRetire;
	}

	public void setIsRetire(String isRetire) {
		this.isRetire = isRetire;
	}
	
	@ExcelField(title="工作业绩", align=2, sort=22)
	public String getPerformance() {
		return performance;
	}

	public void setPerformance(String performance) {
		this.performance = performance;
	}
	
	@ExcelField(title="执业资格", dictType="qualification_credentials", align=2, sort=23)
	public String getQualificationCredentials() {
		return qualificationCredentials;
	}

	public void setQualificationCredentials(String qualificationCredentials) {
		this.qualificationCredentials = qualificationCredentials;
	}
	
	@ExcelField(title="其他执业资格说明", align=2, sort=24)
	public String getQualificationCredentialsMore() {
		return qualificationCredentialsMore;
	}

	public void setQualificationCredentialsMore(String qualificationCredentialsMore) {
		this.qualificationCredentialsMore = qualificationCredentialsMore;
	}

	public List<Workattachment> getJudgeAttachmentList() {
		return judgeAttachmentList;
	}

	public void setJudgeAttachmentList(List<Workattachment> judgeAttachmentList) {
		this.judgeAttachmentList = judgeAttachmentList;
	}

	public List<Workattachment> getWorkAttachments() {
		return workAttachments;
	}

	public void setWorkAttachments(List<Workattachment> workAttachments) {
		this.workAttachments = workAttachments;
	}

	public String getCompanyId() {
		return companyId;
	}

	public void setCompanyId(String companyId) {
		this.companyId = companyId;
	}

	public String getOfficeId() {
		return officeId;
	}

	public void setOfficeId(String officeId) {
		this.officeId = officeId;
	}
}