package com.ejie.m62fb.model;

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

import org.codehaus.jackson.map.annotate.JsonDeserialize;
import org.codehaus.jackson.map.annotate.JsonSerialize;

import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;

/**
 * TitularesVivienda.
 * 
XXXX
 */
public class TitularesVivienda implements java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private BigDecimal numVivienda;
	private BigDecimal idPersona;
	private String numExpediente;
	private Integer numContrato;

	private Date fecEntrada;
	private Date fecVisado;
	private Date fecRenuncia;
	private Date fecDenegacion;
	private Date fecInicio;
	private Date fecFin;

	/**
	 * Method 'TitularesVivienda'.
	 */
	public TitularesVivienda() {
		super();
	}

	/**
	 * Method 'getNumVivienda'
	 * 
	 * @return numVivienda
	 */
	public BigDecimal getNumVivienda() {
		return this.numVivienda;
	}

	/**
	 * Method 'setNumVivienda'
	 * 
	 * @param numVivienda
	 *            BigDecimal
	 */
	public void setNumVivienda(BigDecimal numVivienda) {
		this.numVivienda = numVivienda;
	}

	/**
	 * Method 'getIdPersona'
	 * 
	 * @return idPersona
	 */
	public BigDecimal getIdPersona() {
		return this.idPersona;
	}

	/**
	 * Method 'setIdPersona'
	 * 
	 * @param idPersona
	 *            BigDecimal
	 */
	public void setIdPersona(BigDecimal idPersona) {
		this.idPersona = idPersona;
	}

	/**
	 * Method 'getNumExpediente'
	 * 
	 * @return numExpediente
	 */
	public String getNumExpediente() {
		return this.numExpediente!=null?numExpediente.toUpperCase():null;
	}

	/**
	 * Method 'setNumExpediente'
	 * 
	 * @param numExpediente
	 *            String
	 */
	public void setNumExpediente(String numExpediente) {
		this.numExpediente = numExpediente!=null?numExpediente.toUpperCase():null;
	}

	/**
	 * Method 'getNumContrato'
	 * 
	 * @return numContrato
	 */
	public Integer getNumContrato() {
		return this.numContrato;
	}

	/**
	 * Method 'setNumContrato'
	 * 
	 * @param numContrato
	 *            Integer
	 */
	public void setNumContrato(Integer numContrato) {
		this.numContrato = numContrato;
	}

	/**
	 * Method 'getFecEntrada'.
	 * 
	 * @return Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecEntrada() {
		return this.fecEntrada;
	}

	/**
	 * Method 'setFecEntrada'.
	 * 
	 * @param fecEntrada
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecEntrada(Date fecEntrada) {
		this.fecEntrada = fecEntrada;
	}

	/**
	 * Method 'getFecVisado'.
	 * 
	 * @return Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecVisado() {
		return this.fecVisado;
	}

	/**
	 * Method 'setFecVisado'.
	 * 
	 * @param fecVisado
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecVisado(Date fecVisado) {
		this.fecVisado = fecVisado;
	}

	/**
	 * Method 'getFecRenuncia'.
	 * 
	 * @return Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecRenuncia() {
		return this.fecRenuncia;
	}

	/**
	 * Method 'setFecRenuncia'.
	 * 
	 * @param fecRenuncia
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecRenuncia(Date fecRenuncia) {
		this.fecRenuncia = fecRenuncia;
	}

	/**
	 * Method 'getFecDenegacion'.
	 * 
	 * @return Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecDenegacion() {
		return this.fecDenegacion;
	}

	/**
	 * Method 'setFecDenegacion'.
	 * 
	 * @param fecDenegacion
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecDenegacion(Date fecDenegacion) {
		this.fecDenegacion = fecDenegacion;
	}

	/**
	 * Method 'getFecInicio'.
	 * 
	 * @return Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecInicio() {
		return this.fecInicio;
	}

	/**
	 * Method 'setFecInicio'.
	 * 
	 * @param fecInicio
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecInicio(Date fecInicio) {
		this.fecInicio = fecInicio;
	}

	/**
	 * Method 'getFecFin'.
	 * 
	 * @return Date
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFecFin() {
		return this.fecFin;
	}

	/**
	 * Method 'setFecFin'.
	 * 
	 * @param fecFin
	 *            Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFecFin(Date fecFin) {
		this.fecFin = fecFin;
	}
}