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.m62fb.model.base.AbstractM62FBModel;
import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;

/**
 * M62r02t0- Table BD reference
 * 
XXXX
 */

public class ExpedienteVivienda extends AbstractM62FBModel implements
		java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private String numExpediente;
	private Vivienda vivienda;

	private BigDecimal numOrden;
	private Date fecSolicitud;
	private Date fecPrimerResol;

	/**
	 * Method 'ExpedienteVivienda'.
	 */
	public ExpedienteVivienda() {
	}

	/**
	 * Method 'ExpedienteVivienda'.
	 * 
	 * @param numExpediente
	 *            String
	 */
	public ExpedienteVivienda(String numExpediente) {
		this.numExpediente = numExpediente;
	}

	/**
	 * 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 'getVivienda'
	 * 
	 * @return vivienda
	 */
	public Vivienda getVivienda() {
		return this.vivienda;
	}

	/**
	 * Method 'setVivienda'
	 * 
	 * @param vivienda
	 *            Vivienda
	 */
	public void setVivienda(Vivienda vivienda) {
		this.vivienda = vivienda;
	}

	/**
	 * Method 'getNumOrden'
	 * 
	 * @return numOrden
	 */
	public BigDecimal getNumOrden() {
		return this.numOrden;
	}

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

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

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

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

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