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

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.google.common.collect.Lists;
import com.jeeplus.common.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;
import com.jeeplus.modules.sys.entity.Area;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 客户管理Entity
 * @author 丁旭
 * @version 2017-03-20
 */
public class WorkClientInfoImport extends DataEntity<WorkClientInfoImport> {

	private static final long serialVersionUID = 1L;
	private String name;		// 客户名称
	private String nameForShort;		// 客户名称缩写
	private String orUnicode;		// 组织机构代码
	private String companyType;		// 客户性质
	private String companyIndustry;		// 客户行业
	private String clientType;		// 客户类型
	private String creditRank;		// 信用等级
	private Area area;		// 地区Id
	private String zipCode;		// 邮政编码
	private String fax;		// 传真
    private String lawerPresint;  //法人代表
	private String ourBank;		// 开户银行
	private String bankNumber;		// 开户账号
	private String taxId;		// 税务号
	private String email;		// 电子邮箱
	private String address;		// 详细地址
	private String registerAddress;		// 注册地址
	private String companyUrl;		// 公司网址
	private String companyId;
	private String officeId;
	private String workLinkName; 	//联系人查询条件
	private String param; 	//联系人查询条件
	private String linkManNames;
	private String linkname;		// 联系人姓名
	private String position;		// 职务
	private String qq;		// QQ
	private String linkPhone;		// 联系人电话
	private String linkMobile;		// 联系人手机
	private String linkemail;		// E-mail
	private String nowDate;
	private String userName;
	private String errInfo;

	@NotNull(message="客户名称不能为空")
	@ExcelField(title="客户名称", align=2, sort=1)
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@NotNull(message="组织机构代码不能为空")
	@ExcelField(title="组织机构代码", align=2, sort=2)
	public String getOrUnicode() {
		return orUnicode;
	}

	public void setOrUnicode(String orUnicode) {
		this.orUnicode = orUnicode;
	}

	@NotNull(message="客户性质不能为空")
	@ExcelField(title="客户性质", mainDictType="company_type", align=2, sort=3)
	public String getCompanyType() {
		return companyType;
	}

	public void setCompanyType(String companyType) {
		this.companyType = companyType;
	}

	@ExcelField(title="客户行业", mainDictType="company_industry", align=2, sort=4)
	public String getCompanyIndustry() {
		return companyIndustry;
	}

	public void setCompanyIndustry(String companyIndustry) {
		this.companyIndustry = companyIndustry;
	}

	@ExcelField(title="客户类型", mainDictType="client_type", align=2, sort=5)
	public String getClientType() {
		return clientType;
	}

	public void setClientType(String clientType) {
		this.clientType = clientType;
	}

	@ExcelField(title="信用等级", dictType="credit_rank", align=2, sort=6)
	public String getCreditRank() {
		return creditRank;
	}

	public void setCreditRank(String creditRank) {
		this.creditRank = creditRank;
	}

	@JsonIgnore
	@NotNull(message="地区名称不能为空")
	@ExcelField(title="地区名称",align=2,sort=7)
	public Area getArea() {
		return area;
	}

	public void setArea(Area area) {
		this.area = area;
	}

	@ExcelField(title="邮政编码", align=2, sort=8)
	public String getZipCode() {
		return zipCode;
	}

	public void setZipCode(String zipCode) {
		this.zipCode = zipCode;
	}

	@ExcelField(title="传真", align=2, sort=9)
	public String getFax() {
		return fax;
	}

	public void setFax(String fax) {
		this.fax = fax;
	}

	@ExcelField(title="开户银行", align=2, sort=15)
	public String getOurBank() {
		return ourBank;
	}

	public void setOurBank(String ourBank) {
		this.ourBank = ourBank;
	}

	@ExcelField(title="开户账号", align=2, sort=16)
	public String getBankNumber() {
		return bankNumber;
	}

	public void setBankNumber(String bankNumber) {
		this.bankNumber = bankNumber;
	}

	@ExcelField(title="税务号", align=2, sort=10)
	public String getTaxId() {
		return taxId;
	}

	public void setTaxId(String taxId) {
		this.taxId = taxId;
	}

	@ExcelField(title="电子邮箱", align=2, sort=11)
	public String getEmail() {
		return email;
	}

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

	@ExcelField(title="详细地址", align=2, sort=12)
	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	@ExcelField(title="注册地址", align=2, sort=13)
	public String getRegisterAddress() {
		return registerAddress;
	}

	public void setRegisterAddress(String registerAddress) {
		this.registerAddress = registerAddress;
	}

	@ExcelField(title="公司网址", align=2, sort=14)
	public String getCompanyUrl() {
		return companyUrl;
	}

	public void setCompanyUrl(String companyUrl) {
		this.companyUrl = companyUrl;
	}

	@NotNull(message="联系人姓名不能为空")
	@ExcelField(title="联系人姓名", align=2, sort=17)
	public String getLinkemail() {
		return linkemail;
	}

	public void setLinkemail(String linkemail) {
		this.linkemail = linkemail;
	}

	@ExcelField(title="联系人职务", align=2, sort=18)
	public String getPosition() {
		return position;
	}

	public void setPosition(String position) {
		this.position = position;
	}

	@ExcelField(title="联系人QQ", align=2, sort=19)
	public String getQq() {
		return qq;
	}

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

	@ExcelField(title="联系人电话", align=2, sort=20)
	public String getLinkPhone() {
		return linkPhone;
	}

	public void setLinkPhone(String linkPhone) {
		this.linkPhone = linkPhone;
	}

	@ExcelField(title="联系人手机", align=2, sort=21)
	public String getLinkMobile() {
		return linkMobile;
	}

	public void setLinkMobile(String linkMobile) {
		this.linkMobile = linkMobile;
	}

	@ExcelField(title="联系人E-mail", align=2, sort=22)
	public String getLinkname() {
		return linkname;
	}

	public void setLinkname(String linkname) {
		this.linkname = linkname;
	}

	@ExcelField(title="导入时间", align=2, sort=23)
	public String getNowDate() {
		return nowDate;
	}

	public void setNowDate(String nowDate) {
		this.nowDate = nowDate;
	}

	@ExcelField(title="导入用户", align=2, sort=24)
	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	@ExcelField(title="失败原因", align=2, sort=25)
	public String getErrInfo() {
		return errInfo;
	}

	public void setErrInfo(String errInfo) {
		this.errInfo = errInfo;
	}
}