package com.goafanti.user.bo;

import java.math.BigDecimal;
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.goafanti.common.constant.AFTConstants;

public class OrgIdentityDetailBo {
	private String		id;

	private String		uid;

	/**
	 * 单位名称
	 */
	private String		unitName;

	/**
	 * 身份类型
	 */
	private Integer		identityType;

	/**
	 * 法人
	 */
	private String		legalPerson;

	/**
	 * 法人身份证号
	 */
	private String		legalPersonIdCard;

	/**
	 * 注册时间
	 */
	private Date		registrationTime;

	/**
	 * 营业执照注册号
	 */
	private String		licenceNumber;

	/**
	 * 营业执照所在地--省
	 */
	private Integer		licenceProvince;

	/**
	 * 营业执照所在地-市
	 */
	private Integer		licenceCity;

	/**
	 * 营业执照所在地-区(县)
	 */
	private Integer		licenceArea;

	/**
	 * 营业执照副本扫描件URL
	 */
	private String		licenceScanningUrl;

	/**
	 * 组织机构代码证号码
	 */
	private String		orgCode;

	/**
	 * 组织机构代码证URL
	 */
	private String		orgCodeUrl;

	/**
	 * 开户行
	 */
	private String		banks;

	/**
	 * 开户行支行
	 */
	private String		bankBranch;

	/**
	 * 银行卡号
	 */
	private String		bankCardNumber;

	/**
	 * 开户行所在地-省
	 */
	private Integer		locationProvince;

	/**
	 * 开户行所在地-市
	 */
	private Integer		locationCity;

	/**
	 * 开户行所在地-区(县)
	 */
	private Integer		locationArea;

	/**
	 * 打入账内信息
	 */
	private BigDecimal	validationAmount;

	/**
	 * 打款日期
	 */
	private Date		paymentDate;

	/**
	 * 审核状态
	 */
	private Integer		auditStatus;
	/**
	 * 上年度纳税报表
	 */
	private String		lastYearTaxReportUrl;

	/**
	 * 注册资金
	 */
	private BigDecimal	registeredCapital;

	public BigDecimal getRegisteredCapital() {
		return registeredCapital;
	}

	public void setRegisteredCapital(BigDecimal registeredCapital) {
		this.registeredCapital = registeredCapital;
	}

	private String field;

	public String getField() {
		return field;
	}

	public void setField(String field) {
		this.field = field;
	}

	public String getLastYearTaxReportUrl() {
		return lastYearTaxReportUrl;
	}

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

	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 getUnitName() {
		return unitName;
	}

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

	@JsonFormat(shape = Shape.STRING)
	public Integer getIdentityType() {
		return identityType;
	}

	public void setIdentityType(Integer identityType) {
		this.identityType = identityType;
	}

	public String getLegalPerson() {
		return legalPerson;
	}

	public void setLegalPerson(String legalPerson) {
		this.legalPerson = legalPerson;
	}

	public String getLegalPersonIdCard() {
		return legalPersonIdCard;
	}

	public void setLegalPersonIdCard(String legalPersonIdCard) {
		this.legalPersonIdCard = legalPersonIdCard;
	}

	public Date getRegistrationTime() {
		return registrationTime;
	}

	public void setRegistrationTime(Date registrationTime) {
		this.registrationTime = registrationTime;
	}

	public String getLicenceNumber() {
		return licenceNumber;
	}

	public void setLicenceNumber(String licenceNumber) {
		this.licenceNumber = licenceNumber;
	}

	public String getLicenceScanningUrl() {
		return licenceScanningUrl;
	}

	public void setLicenceScanningUrl(String licenceScanningUrl) {
		this.licenceScanningUrl = licenceScanningUrl;
	}

	public String getOrgCode() {
		return orgCode;
	}

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

	public String getOrgCodeUrl() {
		return orgCodeUrl;
	}

	public void setOrgCodeUrl(String orgCodeUrl) {
		this.orgCodeUrl = orgCodeUrl;
	}

	public String getBanks() {
		return banks;
	}

	public void setBanks(String banks) {
		this.banks = banks;
	}

	public String getBankBranch() {
		return bankBranch;
	}

	public void setBankBranch(String bankBranch) {
		this.bankBranch = bankBranch;
	}

	public String getBankCardNumber() {
		return bankCardNumber;
	}

	public void setBankCardNumber(String bankCardNumber) {
		this.bankCardNumber = bankCardNumber;
	}

	public Integer getLicenceProvince() {
		return licenceProvince;
	}

	public void setLicenceProvince(Integer licenceProvince) {
		this.licenceProvince = licenceProvince;
	}

	public Integer getLicenceCity() {
		return licenceCity;
	}

	public void setLicenceCity(Integer licenceCity) {
		this.licenceCity = licenceCity;
	}

	public Integer getLicenceArea() {
		return licenceArea;
	}

	public void setLicenceArea(Integer licenceArea) {
		this.licenceArea = licenceArea;
	}

	public Integer getLocationProvince() {
		return locationProvince;
	}

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

	public Integer getLocationCity() {
		return locationCity;
	}

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

	public Integer getLocationArea() {
		return locationArea;
	}

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

	public BigDecimal getValidationAmount() {
		return validationAmount;
	}

	public void setValidationAmount(BigDecimal validationAmount) {
		this.validationAmount = validationAmount;
	}

	public Date getPaymentDate() {
		return paymentDate;
	}

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

	@JsonFormat(shape = Shape.STRING)
	public Integer getAuditStatus() {
		return auditStatus;
	}

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

	// 打款日期
	public String getPaymentDateFormattedDate() {
		if (this.paymentDate == null) {
			return null;
		} else {
			return DateFormatUtils.format(this.getPaymentDate(), AFTConstants.YYYYMMDD);
		}
	}

	public void setPaymentDateFormattedDate(String paymentDateFormattedDate) {

	}

}
