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

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

import com.fasterxml.jackson.annotation.JsonFormat;
import com.google.common.collect.Lists;
import com.jeeplus.modules.sys.entity.Office;

import com.jeeplus.common.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;
import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;

/**
 * 企业资质Entity
 * @author liuw
 * @version 2017-12-05
 */
public class Officequalify extends DataEntity<Officequalify> {
	//附件 109   //编号模板23
	public static final String SERIAL_BIZCODE = "23";
	private static final long serialVersionUID = 1L;
	private String name;		// 资质名称
	private String qualifyGrade;		// 资质等级
	private String specialty;		// 专业
	private Date firstDate;		// 初次取得时间
	private Date endDate;		// 到期时间
	private Date continueDate;		// 延续注册时间
	private String issuedAgency;		// 颁发机构
	private String introduction;		// 企业简介
	private String image;		// 图片
	private Office office;		// 企业外键
	private String companyId;  //公司ID
	private String 	companyName;  //公司名称
	private String num;  //编号（公司简称+4位流水）
	private Date uploadDate; //上传日期
	private List<WorkClientAttachment> workAttachments = Lists.newArrayList(); //附件

	private String url;
	private String uName;

	public Officequalify() {
		super();
	}

	public Officequalify(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="资质等级", dictType="qualify_grade", align=2, sort=8)
	public String getQualifyGrade() {
		return qualifyGrade;
	}

	public void setQualifyGrade(String qualifyGrade) {
		this.qualifyGrade = qualifyGrade;
	}

	public String getCompanyId() {
		return companyId;
	}

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

	@ExcelField(title="专业", align=2, sort=9)
	public String getSpecialty() {
		return specialty;
	}

	public void setSpecialty(String specialty) {
		this.specialty = specialty;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="初次取得时间", align=2, sort=10)
	public Date getFirstDate() {
		return firstDate;
	}

	public void setFirstDate(Date firstDate) {
		this.firstDate = firstDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="到期时间", align=2, sort=11)
	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="延续注册时间", align=2, sort=12)
	public Date getContinueDate() {
		return continueDate;
	}

	public void setContinueDate(Date continueDate) {
		this.continueDate = continueDate;
	}
	
	@ExcelField(title="颁发机构", align=2, sort=13)
	public String getIssuedAgency() {
		return issuedAgency;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public String getuName() {
		return uName;
	}

	public void setuName(String uName) {
		this.uName = uName;
	}

	public void setIssuedAgency(String issuedAgency) {
		this.issuedAgency = issuedAgency;
	}
	
	@ExcelField(title="企业简介", align=2, sort=14)
	public String getIntroduction() {
		return introduction;
	}

	public void setIntroduction(String introduction) {
		this.introduction = introduction;
	}
	
	@ExcelField(title="图片", align=2, sort=15)
	public String getImage() {
		return image;
	}

	public void setImage(String image) {
		this.image = image;
	}
	
	@ExcelField(title="企业外键", align=2, sort=16)
	public Office getOffice() {
		return office;
	}

	public void setOffice(Office office) {
		this.office = office;
	}

	public String getCompanyName() {
		return companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}

	public String getNum() {
		return num;
	}

	public void setNum(String num) {
		this.num = num;
	}

	public Date getUploadDate() {
		return uploadDate;
	}

	public void setUploadDate(Date uploadDate) {
		this.uploadDate = uploadDate;
	}

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

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