package com.goafanti.patent.bo;

import java.util.Date;

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

import com.goafanti.common.constant.AFTConstants;
import com.goafanti.common.utils.FileUtils;


/**
 * 管理端综合管理
 */
public class PatentCompositeBo {

	private String uid;
	
	private String oid;
	
	private String pid;
	
	private Integer serialNumber;
	
	private String patentNumber;
	
	private String office;
	
	private String unitName;
	
	private Integer patentCatagory;
	
	private String patentName;
	
	private Integer patentState;
	
	private Date createTime;
	
    private Date patentApplicationDate;
    
    private Date authorizedDate;
    
    private String author;
    
    private String orgCode;
    
    private Integer locationProvince;
    
    private String locationCity;
    
    private String locationArea;
    
    private String contacts;
    
    private Integer patentField;
    
    private String patentDes;
    
    private String firstInventorName;
    
    private String firstInventorNationality;
    
    private String firstInventorIdNumber;
    
    private String secondInventorName;
    
    private String secondInventorNationality;
    
    private String thirdInventorName;
    
    private String thirdInventorNationality;
    
    private String lastYearTaxReportUrl;
    
    private String patentProryStatementUrl;
    
    private String patentWritingUrl;
    
    private String authorizationNoticeUrl;
    
    private String patentCertificateUrl;
    
   

	public String getUid() {
		return uid;
	}

	public void setUid(String uid) {
		this.uid = uid;
	}

	public String getOid() {
		return oid;
	}

	public void setOid(String oid) {
		this.oid = oid;
	}

	public String getPid() {
		return pid;
	}

	public void setPid(String pid) {
		this.pid = pid;
	}

    
	public Integer getSerialNumber() {
		return serialNumber;
	}

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

	public String getPatentNumber() {
		return patentNumber;
	}

	public void setPatentNumber(String patentNumber) {
		this.patentNumber = patentNumber;
	}

	public String getOffice() {
		return office;
	}

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

	public String getUnitName() {
		return unitName;
	}

	public void setUnitName(String unitName) {
		this.unitName = unitName;
	}

	public Integer getPatentCatagory() {
		return patentCatagory;
	}

	public void setPatentCatagory(Integer patentCatagory) {
		this.patentCatagory = patentCatagory;
	}

	public String getPatentName() {
		return patentName;
	}

	public void setPatentName(String patentName) {
		this.patentName = patentName;
	}

	public Integer getPatentState() {
		return patentState;
	}

	public void setPatentState(Integer patentState) {
		this.patentState = patentState;
	}

	public Date getCreateTime() {
		return createTime;
	}

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

	public Date getPatentApplicationDate() {
		return patentApplicationDate;
	}

	public void setPatentApplicationDate(Date patentApplicationDate) {
		this.patentApplicationDate = patentApplicationDate;
	}

	public Date getAuthorizedDate() {
		return authorizedDate;
	}

	public void setAuthorizedDate(Date authorizedDate) {
		this.authorizedDate = authorizedDate;
	}

	public String getAuthor() {
		return author;
	}

	public void setAuthor(String author) {
		this.author = author;
	}


	public Integer getLocationProvince() {
		return locationProvince;
	}

	public void setLocationProvince(Integer locationProvince) {
		this.locationProvince = locationProvince;
	}

	public String getLocationCity() {
		return locationCity;
	}

	public void setLocationCity(String locationCity) {
		this.locationCity = locationCity;
	}

	public String getLocationArea() {
		return locationArea;
	}

	public void setLocationArea(String locationArea) {
		this.locationArea = locationArea;
	}

	public String getContacts() {
		return contacts;
	}

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

	public Integer getPatentField() {
		return patentField;
	}

	public void setPatentField(Integer patentField) {
		this.patentField = patentField;
	}

	public String getPatentDes() {
		return patentDes;
	}

	public void setPatentDes(String patentDes) {
		this.patentDes = patentDes;
	}

	public String getFirstInventorName() {
		return firstInventorName;
	}

	public void setFirstInventorName(String firstInventorName) {
		this.firstInventorName = firstInventorName;
	}

	public String getFirstInventorNationality() {
		return firstInventorNationality;
	}

	public void setFirstInventorNationality(String firstInventorNationality) {
		this.firstInventorNationality = firstInventorNationality;
	}

	public String getFirstInventorIdNumber() {
		return firstInventorIdNumber;
	}

	public void setFirstInventorIdNumber(String firstInventorIdNumber) {
		this.firstInventorIdNumber = firstInventorIdNumber;
	}

	public String getSecondInventorName() {
		return secondInventorName;
	}

	public void setSecondInventorName(String secondInventorName) {
		this.secondInventorName = secondInventorName;
	}

	public String getSecondInventorNationality() {
		return secondInventorNationality;
	}

	public void setSecondInventorNationality(String secondInventorNationality) {
		this.secondInventorNationality = secondInventorNationality;
	}

	public String getThirdInventorName() {
		return thirdInventorName;
	}

	public void setThirdInventorName(String thirdInventorName) {
		this.thirdInventorName = thirdInventorName;
	}

	public String getPatentWritingUrl() {
		return patentWritingUrl;
	}

	public void setPatentWritingUrl(String patentWritingUrl) {
		this.patentWritingUrl = patentWritingUrl;
	}

	public String getAuthorizationNoticeUrl() {
		return authorizationNoticeUrl;
	}

	public void setAuthorizationNoticeUrl(String authorizationNoticeUrl) {
		this.authorizationNoticeUrl = authorizationNoticeUrl;
	}

	public String getPatentCertificateUrl() {
		return patentCertificateUrl;
	}

	public void setPatentCertificateUrl(String patentCertificateUrl) {
		this.patentCertificateUrl = patentCertificateUrl;
	}

	public String getOrgCode() {
		return orgCode;
	}

	public void setOrgCode(String orgCode) {
		this.orgCode = orgCode;
	}

	public String getLastYearTaxReportUrl() {
		return lastYearTaxReportUrl;
	}

	public void setLastYearTaxReportUrl(String lastYearTaxReportUrl) {
		this.lastYearTaxReportUrl = lastYearTaxReportUrl;
	}

	public String getPatentProryStatementUrl() {
		return patentProryStatementUrl;
	}

	public void setPatentProryStatementUrl(String patentProryStatementUrl) {
		this.patentProryStatementUrl = patentProryStatementUrl;
	}
	
	
	
	public String getThirdInventorNationality() {
		return thirdInventorNationality;
	}

	public void setThirdInventorNationality(String thirdInventorNationality) {
		this.thirdInventorNationality = thirdInventorNationality;
	}

		//授权日/发文日
		public String getAuthorizedFormattedDate() {
			if (this.authorizedDate == null) {
				return null;
			} else {
				return DateFormatUtils.format(this.getAuthorizedDate(), AFTConstants.YYYYMMDDHHMMSS);
			}
		}

		public void setAuthorizedFormattedDate(String authorizedFormattedDate) {

		}
		
		//申请日/受理日
		public String getPatentApplicationFormattedDate(){
			if (this.patentApplicationDate == null) {
				return null;
			} else {
				return DateFormatUtils.format(this.getPatentApplicationDate(), AFTConstants.YYYYMMDDHHMMSS);
			}
		}
		
		public void setPatentApplicationFormattedDate(String patentApplicationFormattedDate){
			
		}
		
		//创建时间
		public String getCreateTimeFormattedDate(){
			if (this.createTime == null) {
				return null;
			} else {
				return DateFormatUtils.format(this.getCreateTime(), AFTConstants.YYYYMMDDHHMMSS);
			}
		}
		
		public void setCreateTimeFormattedDate(String createTimeFormattedDate){
			
		}
	
		//专利代理委托书
		public String getPatentProryStatementDownloadFileName(){
			if (StringUtils.isBlank(this.patentProryStatementUrl)){
				return null;
			} else {
				return FileUtils.getDownloadFileName(this.patentProryStatementUrl);
			}
		}
		
		public void setPatentProryStatementDownloadFileName(String patentProryStatementDownloadFileName){
			
		}
		
		//专利稿件
		public String getPatentWritingDownloadFileName(){
			if (StringUtils.isBlank(this.patentWritingUrl)){
				return null;
			} else {
				return FileUtils.getDownloadFileName(this.patentWritingUrl);
			}
		}
		
		public void setPatentWritingDownloadFileName(String patentWritingDownloadFileName){
			
		}
		
		//授权通知书
		public String getAuthorizationNoticeDownloadFileName(){
			if (StringUtils.isBlank(this.authorizationNoticeUrl)){
				return null;
			} else {
				return FileUtils.getDownloadFileName(this.authorizationNoticeUrl);
			}
		}
		
		public void setAuthorizationNoticeDownloadFileName(String authorizationNoticeDownloadFileName){
			
		}
		
		//专利证书
		public String getPatentCertificateDownloadFileName(){
			if (StringUtils.isBlank(this.patentCertificateUrl)){
				return null;
			} else {
				return FileUtils.getDownloadFileName(this.patentCertificateUrl);
			}
		}
		
		public void setPatentCertificateDownloadFileName(String patentCertificateDownloadFileName){
			
		}
    
    
    
}
