package com.goafanti.portal.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 DemandSearchDetailBo extends DemandSearchListBo {
	/**
	 * 技术指标要求
	 */
	private String		technicalRequirements;

	/**
	 * 需求文件--图片URL
	 */
	private String		pictureUrl;

	/**
	 * 需求文件--文本文件
	 */
	private String		textFileUrl;

	/**
	 * 需求文件--视屏文件URL
	 */
	private String		videoUrl;

	/**
	 * 固定周期
	 */
	private String		fixedCycle;

	/**
	 * 固定人数
	 */
	private Integer		peopleNumber;

	/**
	 * 固定方案
	 */
	private String		fixedScheme;

	/**
	 * 费用托管
	 */
	private BigDecimal	costEscrow;

	/**
	 * 有效期限
	 */
	private Date		validityPeriod;

	/**
	 * 关注ID
	 */
	private String		demandInterestId;

	/**
	 * 订单ID
	 */
	private String		demandOrderId;

	/**
	 * 订单状态
	 */
	private Integer		orderStatus;

	@JsonFormat(shape = Shape.STRING)
	public Integer getOrderStatus() {
		return orderStatus;
	}

	public void setOrderStatus(Integer orderStatus) {
		this.orderStatus = orderStatus;
	}

	public String getDemandOrderId() {
		return demandOrderId;
	}

	public void setDemandOrderId(String demandOrderId) {
		this.demandOrderId = demandOrderId;
	}

	public String getDemandInterestId() {
		return demandInterestId;
	}

	public void setDemandInterestId(String demandInterestId) {
		this.demandInterestId = demandInterestId;
	}

	public String getTechnicalRequirements() {
		return technicalRequirements;
	}

	public void setTechnicalRequirements(String technicalRequirements) {
		this.technicalRequirements = technicalRequirements;
	}

	public String getPictureUrl() {
		return pictureUrl;
	}

	public void setPictureUrl(String pictureUrl) {
		this.pictureUrl = pictureUrl;
	}

	public String getTextFileUrl() {
		return textFileUrl;
	}

	public void setTextFileUrl(String textFileUrl) {
		this.textFileUrl = textFileUrl;
	}

	public String getVideoUrl() {
		return videoUrl;
	}

	public void setVideoUrl(String videoUrl) {
		this.videoUrl = videoUrl;
	}

	public String getFixedCycle() {
		return fixedCycle;
	}

	public void setFixedCycle(String fixedCycle) {
		this.fixedCycle = fixedCycle;
	}

	public Integer getPeopleNumber() {
		return peopleNumber;
	}

	public void setPeopleNumber(Integer peopleNumber) {
		this.peopleNumber = peopleNumber;
	}

	public String getFixedScheme() {
		return fixedScheme;
	}

	public void setFixedScheme(String fixedScheme) {
		this.fixedScheme = fixedScheme;
	}

	public BigDecimal getCostEscrow() {
		return costEscrow;
	}

	public void setCostEscrow(BigDecimal costEscrow) {
		this.costEscrow = costEscrow;
	}

	public Date getValidityPeriod() {
		return validityPeriod;
	}

	public void setValidityPeriod(Date validityPeriod) {
		this.validityPeriod = validityPeriod;
	}

	public String getValidityPeriodFormattedDate() {
		if (this.validityPeriod == null) {
			return null;
		} else {
			return DateFormatUtils.format(this.getValidityPeriod(), AFTConstants.YYYYMMDD);
		}
	}

	public void setValidityPeriodFormattedDate(String validityPeriodFormattedDate) {

	}
}
