package cn.com.countrygarden.bi.main.dto.investment;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;

import cn.com.countrygarden.bi.main.model.investment.InvestProjectAccount;

public class InvestProjectExcelVO implements Serializable {
	
	//
	/**
	 * 个人区域投资id
	 */
	private int regionInvestmentId;
	/**
	 * 人员名称
	 */
	private String userName;
	/**
	 * 区域id
	 */
	private String regionId;
	/**
	 * 区域名称
	 */
	private String regionName;
	/**
	 * 项目id
	 */
	private String projectId;
	/**
	 * 项目名称
	 */
	private String projectName;
	/**
	 * 跟投（资金池）
	 */
	private BigDecimal followCapital;
	/**
	 * 跟投时间（资金池）
	 */
	@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
	private Date followTime;
	/**
	 * 跟投（独资金账户）
	 */
	private BigDecimal followCapitalAccount;
	/**
	 * 跟投时间（独资金账户）
	 */
	@JsonFormat(pattern = "yyyy/MM/dd", timezone = "GMT+8")
	private Date followCapitalAccountTime;
	/**
	 * 资金池（理财收益）
	 */
	private BigDecimal financialIncomeCapital;
	/**
	 * 单独资金账户（理财收益）
	 */
	private BigDecimal financialIncomeCapitalAccount;
	/**
	 * 资金池（募集资金余额）
	 */
	private BigDecimal raisingBalanceCapital;
	/**
	 * 单独资金账户（募集资金余额）
	 */
	private BigDecimal raisingBalanceCapitalAccount;
	/**
	 * 资金池（可用资金余额）
	 */
	private BigDecimal availableBalanceCapital;
	/**
	 * 单独资金账户（可用资金余额）
	 */
	private BigDecimal availableBalanceCapitalAccount;

	/**
	 * 资金池（房产发放）
	 */
	private BigDecimal propertyDistributionCapital;
	/**
	 * 单独资金账户（房产发放）
	 */
	private BigDecimal propertyDistributionCapitalAccount;
	/**
	 * 资金池（个人已发放）
	 */
	private BigDecimal issuedCapital;
	/**
	 * 单独资金账户（个人已发放）
	 */
	private BigDecimal issuedCapitalAccount;
	/**
	 * 资金池（个人未发放）
	 */
	private BigDecimal unissuedCapital;
	/**
	 * 单独资金账户（个人未发放）
	 */
	private BigDecimal unissuedCapitalAccount;
	/**
	 * 资金池（区域跟投）
	 */
	private BigDecimal regionFollowCapital;
	/**
	 * 单独资金账户（区域跟投）
	 */
	private BigDecimal regionFollowCapitalAccount;
	/**
	 * 资金池（阶段性现金返还）
	 */
	private BigDecimal cashReturnCapital;
	/**
	 * 单独资金账户（阶段性现金返还）
	 */
	private BigDecimal cashReturnCapitalAccount;
	/**
	 * 资金池（本金返还）
	 */
	private BigDecimal principalReturnCapital;
	/**
	 * 单独资金账户（本金返还）
	 */
	private BigDecimal principalReturnCapitalAccount;
	/**
	 * 资金池（利润分配）
	 */
	private BigDecimal profitDistributionCapital;
	/**
	 * 单独资金账户（利润分配）
	 */

	private BigDecimal profitDistributionCapitalAccount;
	/**
	 * 资金池（本金未收回）
	 */
	private BigDecimal principalNotrecoveredCapital;

	/**
	 * 单独资金账户（本金未收回）
	 */
	private BigDecimal principalNotrecoveredCapitalAccount;

	/**
	 * 个人单独项目跟投表 -关联个人区域投资ID
	 */
	private Integer investRegionInvestmentId;
	/**
	 * 个人单独项目跟投表 -单独资金账户跟投本金
	 */
	@Column(name = "follow_capital_account")
	private BigDecimal investProjectFollowCapitalAccount;
	/**
	 * 个人单独项目跟投表 -单独资金账户跟投时间
	 */
	@JSONField(format = "yyyy/MM/dd HH:mm")
	@JsonFormat(pattern = "yyyy/MM/dd HH:mm", timezone = "GMT+8")
	private Date investProjectFollowCapitalAccountTime;

	public Integer getInvestRegionInvestmentId() {
		return investRegionInvestmentId;
	}

	public void setInvestRegionInvestmentId(Integer investRegionInvestmentId) {
		this.investRegionInvestmentId = investRegionInvestmentId;
	}

	public BigDecimal getInvestProjectFollowCapitalAccount() {
		if (investProjectFollowCapitalAccount == null) {
			return investProjectFollowCapitalAccount = new BigDecimal(0);
		}
		return investProjectFollowCapitalAccount;
	}

	public void setInvestProjectFollowCapitalAccount(BigDecimal investProjectFollowCapitalAccount) {
		this.investProjectFollowCapitalAccount = investProjectFollowCapitalAccount;
	}

	public Date getInvestProjectFollowCapitalAccountTime() {
		return investProjectFollowCapitalAccountTime;
	}

	public void setInvestProjectFollowCapitalAccountTime(Date investProjectFollowCapitalAccountTime) {
		this.investProjectFollowCapitalAccountTime = investProjectFollowCapitalAccountTime;
	}

	public String getUserName() {
		return userName;
	}

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

	public String getRegionName() {
		return regionName;
	}

	public void setRegionName(String regionName) {
		this.regionName = regionName;
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public BigDecimal getFollowCapital() {
		if (followCapital == null) {
			return followCapital = new BigDecimal(0);
		}
		return followCapital;
	}

	public void setFollowCapital(BigDecimal followCapital) {
		this.followCapital = followCapital;
	}

	public Date getFollowTime() {
		return followTime;
	}

	public void setFollowTime(Date followTime) {
		this.followTime = followTime;
	}

	public BigDecimal getFollowCapitalAccount() {
		if (followCapitalAccount == null) {
			return followCapitalAccount = new BigDecimal(0);
		}
		return followCapitalAccount;
	}

	public void setFollowCapitalAccount(BigDecimal followCapitalAccount) {
		this.followCapitalAccount = followCapitalAccount;
	}

	public Date getFollowCapitalAccountTime() {
		return followCapitalAccountTime;
	}

	public void setFollowCapitalAccountTime(Date followCapitalAccountTime) {
		this.followCapitalAccountTime = followCapitalAccountTime;
	}

	public BigDecimal getFinancialIncomeCapital() {
		if (financialIncomeCapital == null) {
			return financialIncomeCapital = new BigDecimal(0);
		}
		return financialIncomeCapital;
	}

	public void setFinancialIncomeCapital(BigDecimal financialIncomeCapital) {
		this.financialIncomeCapital = financialIncomeCapital;
	}

	public BigDecimal getFinancialIncomeCapitalAccount() {
		if (financialIncomeCapitalAccount == null) {
			return financialIncomeCapitalAccount = new BigDecimal(0);
		}
		return financialIncomeCapitalAccount;
	}

	public void setFinancialIncomeCapitalAccount(BigDecimal financialIncomeCapitalAccount) {
		this.financialIncomeCapitalAccount = financialIncomeCapitalAccount;
	}

	public BigDecimal getRaisingBalanceCapital() {
		if (raisingBalanceCapital == null) {
			return raisingBalanceCapital = new BigDecimal(0);
		}
		return raisingBalanceCapital;
	}

	public void setRaisingBalanceCapital(BigDecimal raisingBalanceCapital) {
		this.raisingBalanceCapital = raisingBalanceCapital;
	}

	public BigDecimal getRaisingBalanceCapitalAccount() {
		if (raisingBalanceCapitalAccount == null) {
			return raisingBalanceCapitalAccount = new BigDecimal(0);
		}
		return raisingBalanceCapitalAccount;
	}

	public void setRaisingBalanceCapitalAccount(BigDecimal raisingBalanceCapitalAccount) {
		this.raisingBalanceCapitalAccount = raisingBalanceCapitalAccount;
	}

	public BigDecimal getAvailableBalanceCapital() {
		if (availableBalanceCapital == null) {
			return availableBalanceCapital = new BigDecimal(0);
		}
		return availableBalanceCapital;
	}

	public void setAvailableBalanceCapital(BigDecimal availableBalanceCapital) {
		this.availableBalanceCapital = availableBalanceCapital;
	}

	public BigDecimal getAvailableBalanceCapitalAccount() {
		if (availableBalanceCapitalAccount == null) {
			return availableBalanceCapitalAccount = new BigDecimal(0);
		}
		return availableBalanceCapitalAccount;
	}

	public void setAvailableBalanceCapitalAccount(BigDecimal availableBalanceCapitalAccount) {
		this.availableBalanceCapitalAccount = availableBalanceCapitalAccount;
	}

	public BigDecimal getPropertyDistributionCapital() {
		if (propertyDistributionCapital == null) {
			return propertyDistributionCapital = new BigDecimal(0);
		}
		return propertyDistributionCapital;
	}

	public void setPropertyDistributionCapital(BigDecimal propertyDistributionCapital) {
		this.propertyDistributionCapital = propertyDistributionCapital;
	}

	public BigDecimal getPropertyDistributionCapitalAccount() {
		if (propertyDistributionCapitalAccount == null) {
			return propertyDistributionCapitalAccount = new BigDecimal(0);
		}
		return propertyDistributionCapitalAccount;
	}

	public void setPropertyDistributionCapitalAccount(BigDecimal propertyDistributionCapitalAccount) {
		this.propertyDistributionCapitalAccount = propertyDistributionCapitalAccount;
	}

	public BigDecimal getIssuedCapital() {
		if (issuedCapital == null) {
			return issuedCapital = new BigDecimal(0);
		}
		return issuedCapital;
	}

	public void setIssuedCapital(BigDecimal issuedCapital) {
		this.issuedCapital = issuedCapital;
	}

	public BigDecimal getIssuedCapitalAccount() {
		if (issuedCapitalAccount == null) {
			return issuedCapitalAccount = new BigDecimal(0);
		}
		return issuedCapitalAccount;
	}

	public void setIssuedCapitalAccount(BigDecimal issuedCapitalAccount) {
		this.issuedCapitalAccount = issuedCapitalAccount;
	}

	public BigDecimal getUnissuedCapital() {
		if (unissuedCapital == null) {
			return unissuedCapital = new BigDecimal(0);
		}
		return unissuedCapital;
	}

	public void setUnissuedCapital(BigDecimal unissuedCapital) {
		this.unissuedCapital = unissuedCapital;
	}

	public BigDecimal getUnissuedCapitalAccount() {
		if (unissuedCapitalAccount == null) {
			return unissuedCapitalAccount = new BigDecimal(0);
		}
		return unissuedCapitalAccount;
	}

	public void setUnissuedCapitalAccount(BigDecimal unissuedCapitalAccount) {
		this.unissuedCapitalAccount = unissuedCapitalAccount;
	}

	public BigDecimal getRegionFollowCapital() {
		if (regionFollowCapital == null) {
			return regionFollowCapital = new BigDecimal(0);
		}
		return regionFollowCapital;
	}

	public void setRegionFollowCapital(BigDecimal regionFollowCapital) {
		this.regionFollowCapital = regionFollowCapital;
	}

	public BigDecimal getRegionFollowCapitalAccount() {
		if (regionFollowCapitalAccount == null) {
			return regionFollowCapitalAccount = new BigDecimal(0);
		}
		return regionFollowCapitalAccount;
	}

	public void setRegionFollowCapitalAccount(BigDecimal regionFollowCapitalAccount) {
		this.regionFollowCapitalAccount = regionFollowCapitalAccount;
	}

	public BigDecimal getCashReturnCapital() {
		if (cashReturnCapital == null) {
			return cashReturnCapital = new BigDecimal(0);
		}
		return cashReturnCapital;
	}

	public void setCashReturnCapital(BigDecimal cashReturnCapital) {
		this.cashReturnCapital = cashReturnCapital;
	}

	public BigDecimal getCashReturnCapitalAccount() {
		if (cashReturnCapitalAccount == null) {
			return cashReturnCapitalAccount = new BigDecimal(0);
		}
		return cashReturnCapitalAccount;
	}

	public void setCashReturnCapitalAccount(BigDecimal cashReturnCapitalAccount) {
		this.cashReturnCapitalAccount = cashReturnCapitalAccount;
	}

	public BigDecimal getProfitDistributionCapital() {
		if (profitDistributionCapital == null) {
			return profitDistributionCapital = new BigDecimal(0);
		}
		return profitDistributionCapital;
	}

	public void setProfitDistributionCapital(BigDecimal profitDistributionCapital) {
		this.profitDistributionCapital = profitDistributionCapital;
	}

	public BigDecimal getProfitDistributionCapitalAccount() {
		if (profitDistributionCapitalAccount == null) {
			return profitDistributionCapitalAccount = new BigDecimal(0);
		}
		return profitDistributionCapitalAccount;
	}

	public void setProfitDistributionCapitalAccount(BigDecimal profitDistributionCapitalAccount) {
		this.profitDistributionCapitalAccount = profitDistributionCapitalAccount;
	}

	public BigDecimal getPrincipalReturnCapital() {
		if (principalReturnCapital == null) {
			return principalReturnCapital = new BigDecimal(0);
		}
		return principalReturnCapital;
	}

	public void setPrincipalReturnCapital(BigDecimal principalReturnCapital) {
		this.principalReturnCapital = principalReturnCapital;
	}

	public BigDecimal getPrincipalReturnCapitalAccount() {
		if (principalReturnCapitalAccount == null) {
			return principalReturnCapitalAccount = new BigDecimal(0);
		}
		return principalReturnCapitalAccount;
	}

	public void setPrincipalReturnCapitalAccount(BigDecimal principalReturnCapitalAccount) {
		this.principalReturnCapitalAccount = principalReturnCapitalAccount;
	}

	public BigDecimal getPrincipalNotrecoveredCapital() {
		if (principalNotrecoveredCapital == null) {
			return principalNotrecoveredCapital = new BigDecimal(0);
		}
		return principalNotrecoveredCapital;
	}

	public void setPrincipalNotrecoveredCapital(BigDecimal principalNotrecoveredCapital) {
		this.principalNotrecoveredCapital = principalNotrecoveredCapital;
	}

	public BigDecimal getPrincipalNotrecoveredCapitalAccount() {
		if (principalNotrecoveredCapitalAccount == null) {
			return principalNotrecoveredCapitalAccount = new BigDecimal(0);
		}
		return principalNotrecoveredCapitalAccount;
	}

	public void setPrincipalNotrecoveredCapitalAccount(BigDecimal principalNotrecoveredCapitalAccount) {
		this.principalNotrecoveredCapitalAccount = principalNotrecoveredCapitalAccount;
	}

	public int getRegionInvestmentId() {
		return regionInvestmentId;
	}

	public void setRegionInvestmentId(int regionInvestmentId) {
		this.regionInvestmentId = regionInvestmentId;
	}

	public String getProjectId() {
		return projectId;
	}

	public void setProjectId(String projectId) {
		this.projectId = projectId;
	}

	public String getRegionId() {
		return regionId;
	}

	public void setRegionId(String regionId) {
		this.regionId = regionId;
	}

	
}
