package com.goafanti.cognizance.bo;

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

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.Size;

import com.goafanti.common.constant.ErrorConstants;

public class InputOrgActivityCost {

	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		id;

	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		aid;

	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		uid;

	@Max(value = 3000, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 2000, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private Integer		year;

	@Size(min = 0, max = 32, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		activityNumber;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalLaborCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalDirectCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalDepreciationCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalAmortizationCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalDesignCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalEquipmentCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	internalOtherCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	externalTotalCost;

	@Max(value = (long) 999999.99, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	@Min(value = 0, message = "{" + ErrorConstants.PARAM_ERROR + "}")
	private BigDecimal	externalAbroadCost;

	@Size(min = 0, max = 16, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		enterpriseFiller;

	/**
	 * 企业填报人签字日期
	 */
	private Date		signDate;

	@Size(min = 0, max = 32, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		sortNumber;

	private Date		startDate;

	private Date		endDate;

	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
	private String		accountUrl;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getAid() {
		return aid;
	}

	public void setAid(String aid) {
		this.aid = aid;
	}

	public String getUid() {
		return uid;
	}

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

	public Integer getYear() {
		return year;
	}

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

	public String getActivityNumber() {
		return activityNumber;
	}

	public void setActivityNumber(String activityNumber) {
		this.activityNumber = activityNumber;
	}

	public BigDecimal getInternalLaborCost() {
		return internalLaborCost;
	}

	public void setInternalLaborCost(BigDecimal internalLaborCost) {
		this.internalLaborCost = internalLaborCost;
	}

	public BigDecimal getInternalDirectCost() {
		return internalDirectCost;
	}

	public void setInternalDirectCost(BigDecimal internalDirectCost) {
		this.internalDirectCost = internalDirectCost;
	}

	public BigDecimal getInternalDepreciationCost() {
		return internalDepreciationCost;
	}

	public void setInternalDepreciationCost(BigDecimal internalDepreciationCost) {
		this.internalDepreciationCost = internalDepreciationCost;
	}

	public BigDecimal getInternalAmortizationCost() {
		return internalAmortizationCost;
	}

	public void setInternalAmortizationCost(BigDecimal internalAmortizationCost) {
		this.internalAmortizationCost = internalAmortizationCost;
	}

	public BigDecimal getInternalDesignCost() {
		return internalDesignCost;
	}

	public void setInternalDesignCost(BigDecimal internalDesignCost) {
		this.internalDesignCost = internalDesignCost;
	}

	public BigDecimal getInternalEquipmentCost() {
		return internalEquipmentCost;
	}

	public void setInternalEquipmentCost(BigDecimal internalEquipmentCost) {
		this.internalEquipmentCost = internalEquipmentCost;
	}

	public BigDecimal getInternalOtherCost() {
		return internalOtherCost;
	}

	public void setInternalOtherCost(BigDecimal internalOtherCost) {
		this.internalOtherCost = internalOtherCost;
	}

	public BigDecimal getExternalTotalCost() {
		return externalTotalCost;
	}

	public void setExternalTotalCost(BigDecimal externalTotalCost) {
		this.externalTotalCost = externalTotalCost;
	}

	public BigDecimal getExternalAbroadCost() {
		return externalAbroadCost;
	}

	public void setExternalAbroadCost(BigDecimal externalAbroadCost) {
		this.externalAbroadCost = externalAbroadCost;
	}

	public String getEnterpriseFiller() {
		return enterpriseFiller;
	}

	public void setEnterpriseFiller(String enterpriseFiller) {
		this.enterpriseFiller = enterpriseFiller;
	}

	public Date getSignDate() {
		return signDate;
	}

	public void setSignDate(Date signDate) {
		this.signDate = signDate;
	}

	public String getSortNumber() {
		return sortNumber;
	}

	public void setSortNumber(String sortNumber) {
		this.sortNumber = sortNumber;
	}

	public Date getStartDate() {
		return startDate;
	}

	public void setStartDate(Date startDate) {
		this.startDate = startDate;
	}

	public Date getEndDate() {
		return endDate;
	}

	public void setEndDate(Date endDate) {
		this.endDate = endDate;
	}

	public String getAccountUrl() {
		return accountUrl;
	}

	public void setAccountUrl(String accountUrl) {
		this.accountUrl = accountUrl;
	}

}
