package com.goafanti.user.bo;

import java.util.Date;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.Size;

import com.goafanti.common.constant.ErrorConstants;

public class InputUserIdentity {

	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		id;

	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		uid;

	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer     type;
	
	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		username;

	@Size(min = 0, max = 2, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		sex;

	@Size(min = 0, max = 4, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		dateOfBirthYear;

	@Size(min = 0, max = 2, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		dateOfBirthMonth;

	@Size(min = 0, max = 20, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		idNumber;

	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		positiveIdUrl;

	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		oppositeIdUrl;

	@Max(value = 99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		province;

	@Max(value = 999, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		city;

	@Max(value = 9999, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		area;

	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		mobile;

	@Max(value = 5, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		auditStatus;

	@Max(value = 9, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		process;

	@Max(value = 3, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		wrongCount;

	@Max(value = 5, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		level;

	private Date		paymentDate;

	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		expert;

	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		celebrity;
	
	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String identifyName;
	
	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String email;
	
	@Size(min = 0, max = 512, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String introduction;
	
	@Size(min = 0, max = 128, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String headPortraitUrl;
	
	@Size(min = 0, max = 64, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String societyTag;
	
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Max(value = 99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer industry;
	
	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String postalAddress;
	
	@Size(min = 0, max = 13, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String fixedTel;
	
	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String qq;
	
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Max(value = 1, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer authentication;
	
	public Integer getExpert() {
		return expert;
	}

	public void setExpert(Integer expert) {
		this.expert = expert;
	}

	public Integer getCelebrity() {
		return celebrity;
	}

	public void setCelebrity(Integer celebrity) {
		this.celebrity = celebrity;
	}

	public Integer getLevel() {
		return level;
	}

	public void setLevel(Integer level) {
		this.level = level;
	}

	public Date getPaymentDate() {
		return paymentDate;
	}

	public void setPaymentDate(Date paymentDate) {
		this.paymentDate = paymentDate;
	}

	public String getId() {
		return id;
	}

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

	public String getUid() {
		return uid;
	}

	public void setUid(String uid) {
		this.uid = uid;
	}
	
	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getDateOfBirthYear() {
		return dateOfBirthYear;
	}

	public void setDateOfBirthYear(String dateOfBirthYear) {
		this.dateOfBirthYear = dateOfBirthYear;
	}

	public String getDateOfBirthMonth() {
		return dateOfBirthMonth;
	}

	public void setDateOfBirthMonth(String dateOfBirthMonth) {
		this.dateOfBirthMonth = dateOfBirthMonth;
	}

	public String getIdNumber() {
		return idNumber;
	}

	public void setIdNumber(String idNumber) {
		this.idNumber = idNumber;
	}

	public String getPositiveIdUrl() {
		return positiveIdUrl;
	}

	public void setPositiveIdUrl(String positiveIdUrl) {
		this.positiveIdUrl = positiveIdUrl;
	}

	public String getOppositeIdUrl() {
		return oppositeIdUrl;
	}

	public void setOppositeIdUrl(String oppositeIdUrl) {
		this.oppositeIdUrl = oppositeIdUrl;
	}

	public Integer getProvince() {
		return province;
	}

	public void setProvince(Integer province) {
		this.province = province;
	}

	public Integer getCity() {
		return city;
	}

	public void setCity(Integer city) {
		this.city = city;
	}

	public Integer getArea() {
		return area;
	}

	public void setArea(Integer area) {
		this.area = area;
	}
	
	public Integer getAuditStatus() {
		return auditStatus;
	}

	public void setAuditStatus(Integer auditStatus) {
		this.auditStatus = auditStatus;
	}

	public Integer getProcess() {
		return process;
	}

	public void setProcess(Integer process) {
		this.process = process;
	}

	public Integer getWrongCount() {
		return wrongCount;
	}

	public void setWrongCount(Integer wrongCount) {
		this.wrongCount = wrongCount;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getIdentifyName() {
		return identifyName;
	}

	public void setIdentifyName(String identifyName) {
		this.identifyName = identifyName;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getIntroduction() {
		return introduction;
	}

	public void setIntroduction(String introduction) {
		this.introduction = introduction;
	}

	public String getHeadPortraitUrl() {
		return headPortraitUrl;
	}

	public void setHeadPortraitUrl(String headPortraitUrl) {
		this.headPortraitUrl = headPortraitUrl;
	}

	public String getSocietyTag() {
		return societyTag;
	}

	public void setSocietyTag(String societyTag) {
		this.societyTag = societyTag;
	}

	public Integer getIndustry() {
		return industry;
	}

	public void setIndustry(Integer industry) {
		this.industry = industry;
	}

	public String getPostalAddress() {
		return postalAddress;
	}

	public void setPostalAddress(String postalAddress) {
		this.postalAddress = postalAddress;
	}

	public String getFixedTel() {
		return fixedTel;
	}

	public void setFixedTel(String fixedTel) {
		this.fixedTel = fixedTel;
	}

	public String getQq() {
		return qq;
	}

	public void setQq(String qq) {
		this.qq = qq;
	}

	public Integer getAuthentication() {
		return authentication;
	}

	public void setAuthentication(Integer authentication) {
		this.authentication = authentication;
	}
}
