package com.goafanti.common.model;

import java.util.Date;

import org.apache.commons.lang3.time.DateFormatUtils;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.goafanti.common.constant.AFTConstants;

public class OrgCognizance {
	private String	id;

	private String	uid;
	
	/**
	 * 合同ID
	 */
	private String contractId;

	/**
	 * 编号
	 */
	private Integer	serialNumber;

	/**
	 * 联系人及联系方式
	 */
	private Integer	contacts;

	/**
	 * 备注
	 */
	private String	comment;

	/**
	 * 咨询师
	 */
	private String	consultant;

	/**
	 * 技术领域1st select
	 */
	private Integer	technicalField1;

	/**
	 * 技术领域2nd select
	 */
	private Integer	technicalField2;

	/**
	 * 技术领域3rd select
	 */
	private Integer	technicalField3;

	/**
	 * 基础研究投入费用总额(万元)
	 */
	private Integer	basicResearchCost;

	/**
	 * 申请认定前一年内是否发生过重大安全、重大质量或严重环境违法行为
	 */
	private Integer	accident;

	/**
	 * 派单日
	 */
	private Date	createTime;

	/**
	 * 受理日
	 */
	private Date	acceptDate;

	/**
	 * 发证日
	 */
	private Date	issuingDate;

	/**
	 * 证书编号
	 */
	private String	certificateNumber;

	/**
	 * 证书URL
	 */
	private String	certificateUrl;

	/**
	 * 状态
	 */
	private Integer	state;

	/**
	 * 申请年份
	 */
	private Integer	year;

	/**
	 * 高企申请时间
	 */
	private Date	recordTime;

	/**
	 * 是否为大额订单
	 */
	private Integer	largeOrder;

	/**
	 * 删除标记
	 */
	private Integer	deletedSign;

	/**
	 * 申请创建人
	 */
	private String	founder;
	
	/**
	 * 高企技术负责人
	 */
	private String techPrincipal;
	
	

	public String getTechPrincipal() {
		return techPrincipal;
	}

	public void setTechPrincipal(String techPrincipal) {
		this.techPrincipal = techPrincipal;
	}

	public String getFounder() {
		return founder;
	}

	public void setFounder(String founder) {
		this.founder = founder;
	}

	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 String getContractId() {
		return contractId;
	}

	public void setContractId(String contractId) {
		this.contractId = contractId;
	}

	public Integer getSerialNumber() {
		return serialNumber;
	}

	public void setSerialNumber(Integer serialNumber) {
		this.serialNumber = serialNumber;
	}

	public Integer getContacts() {
		return contacts;
	}

	public void setContacts(Integer contacts) {
		this.contacts = contacts;
	}

	public String getComment() {
		return comment;
	}

	public void setComment(String comment) {
		this.comment = comment;
	}

	public String getConsultant() {
		return consultant;
	}

	public void setConsultant(String consultant) {
		this.consultant = consultant;
	}

	public Integer getTechnicalField1() {
		return technicalField1;
	}

	public void setTechnicalField1(Integer technicalField1) {
		this.technicalField1 = technicalField1;
	}

	public Integer getTechnicalField2() {
		return technicalField2;
	}

	public void setTechnicalField2(Integer technicalField2) {
		this.technicalField2 = technicalField2;
	}

	public Integer getTechnicalField3() {
		return technicalField3;
	}

	public void setTechnicalField3(Integer technicalField3) {
		this.technicalField3 = technicalField3;
	}

	public Integer getBasicResearchCost() {
		return basicResearchCost;
	}

	public void setBasicResearchCost(Integer basicResearchCost) {
		this.basicResearchCost = basicResearchCost;
	}

	public Integer getAccident() {
		return accident;
	}

	public void setAccident(Integer accident) {
		this.accident = accident;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getAcceptDate() {
		return acceptDate;
	}

	public void setAcceptDate(Date acceptDate) {
		this.acceptDate = acceptDate;
	}

	public Date getIssuingDate() {
		return issuingDate;
	}

	public void setIssuingDate(Date issuingDate) {
		this.issuingDate = issuingDate;
	}

	public String getCertificateNumber() {
		return certificateNumber;
	}

	public void setCertificateNumber(String certificateNumber) {
		this.certificateNumber = certificateNumber;
	}

	public String getCertificateUrl() {
		return certificateUrl;
	}

	public void setCertificateUrl(String certificateUrl) {
		this.certificateUrl = certificateUrl;
	}

	public Integer getState() {
		return state;
	}

	public void setState(Integer state) {
		this.state = state;
	}

	public Integer getYear() {
		return year;
	}

	public void setYear(Integer year) {
		this.year = year;
	}

	@JsonIgnore
	public Date getRecordTime() {
		return recordTime;
	}

	public void setRecordTime(Date recordTime) {
		this.recordTime = recordTime;
	}

	@JsonFormat(shape = Shape.STRING)
	public Integer getLargeOrder() {
		return largeOrder;
	}

	public void setLargeOrder(Integer largeOrder) {
		this.largeOrder = largeOrder;
	}

	@JsonIgnore
	public Integer getDeletedSign() {
		return deletedSign;
	}

	public void setDeletedSign(Integer deletedSign) {
		this.deletedSign = deletedSign;
	}

	public String getCreateTimeFormattedDate() {
		if (this.createTime == null) {
			return null;
		} else {
			return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
		}
	}

	public void setCreateTimeFormattedDate(String createTimeFormattedDate) {

	}

	public String getAcceptDateFormattedDate() {
		if (this.acceptDate == null) {
			return null;
		} else {
			return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
		}
	}

	public void setAcceptDateFormattedDate(String acceptDateFormattedDate) {

	}

	public String getIssuingDateFormattedDate() {
		if (this.issuingDate == null) {
			return null;
		} else {
			return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
		}
	}

	public void setIssuingDateFormattedDate(String issuingDateFormattedDate) {

	}
}