/*
* Copyright 2011 E.J.I.E., S.A.
*
* Licencia con arreglo a la EUPL, Versión 1.1 exclusivamente (la «Licencia»);
* Solo podrá usarse esta obra si se respeta la Licencia.
* Puede obtenerse una copia de la Licencia en
*
* http://ec.europa.eu/idabc/eupl.html
*
* Salvo cuando lo exija la legislación aplicable o se acuerde por escrito,
* el programa distribuido con arreglo a la Licencia se distribuye «TAL CUAL»,
* SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ni expresas ni implícitas.
* Véase la Licencia en el idioma concreto que rige los permisos y limitaciones
* que establece la Licencia.
*/
package com.ejie.ad74a.model;

import java.util.Date;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

import com.ejie.ad74a.util.constantes.ProcedimientosEnum;
import com.ejie.ad74a.util.constantes.TareasEnum;
import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

/**
 * Bean contenedor de las propiedades que utiliza el componente table.
 * 
 * @author UDA
 *
 * @param <T> Tipo de bean que se va a representar en el table.
 */
@XmlRootElement(name = "DatosTarea")
public class DatosTareaEstudioModDireccion extends DatosTareaEstudio {

	/**
	 * 
	 */
	private static final long serialVersionUID = -8454434710807630860L;

	// Datos de tablas en string
	private String documentosAportados = null;

	// Aceptacion del cambio
	private Date fCambio;
	// No aceptacion del cambio
	private Date fRechazo;
	private String motivoRechazo;

	// Requerimiento de subsanacion
	private Integer reqSolNoFirma;
	private Integer reqRepNoFirma;
	private Integer reqRepNoAcredita;
	private Integer reqNoAutVerPadron;
	private Integer reqNoAutVerPadronSolo;
	private Integer reqAutVerPadronNoSoloInfSol;
	private Integer reqDependeciaInformeSocial;
	private Integer reqRiesgoAislamientoSinInfSocial;
	private Integer reqSinFichaSanitaria;
	private Integer reqSinTelefonoFijo;
	private Integer reqSinDatosBancarios;
	private Integer reqSolExencionBizkaia;
	private Date fSubsanacion;
	private String txtRequerimiento;

	/**
	 * Constructor.
	 */
	public DatosTareaEstudioModDireccion() {
		super(ProcedimientosEnum.MODIFICACION.getId());
	}

	@XmlElement(name = "documentosAportados", nillable = true)
	public String getDocumentosAportados() {
		return documentosAportados;
	}

	public void setDocumentosAportados(String documentosAportados) {
		this.documentosAportados = documentosAportados;
	}

	public Integer getReqSolNoFirma() {
		return reqSolNoFirma;
	}

	public void setReqSolNoFirma(Integer reqSolNoFirma) {
		this.reqSolNoFirma = reqSolNoFirma;
	}

	public Integer getReqRepNoFirma() {
		return reqRepNoFirma;
	}

	public void setReqRepNoFirma(Integer reqRepNoFirma) {
		this.reqRepNoFirma = reqRepNoFirma;
	}

	public Integer getReqRepNoAcredita() {
		return reqRepNoAcredita;
	}

	public void setReqRepNoAcredita(Integer reqRepNoAcredita) {
		this.reqRepNoAcredita = reqRepNoAcredita;
	}

	public Integer getReqNoAutVerPadron() {
		return reqNoAutVerPadron;
	}

	public void setReqNoAutVerPadron(Integer reqNoAutVerPadron) {
		this.reqNoAutVerPadron = reqNoAutVerPadron;
	}

	public Integer getReqNoAutVerPadronSolo() {
		return reqNoAutVerPadronSolo;
	}

	public void setReqNoAutVerPadronSolo(Integer reqNoAutVerPadronSolo) {
		this.reqNoAutVerPadronSolo = reqNoAutVerPadronSolo;
	}

	public Integer getReqAutVerPadronNoSoloInfSol() {
		return reqAutVerPadronNoSoloInfSol;
	}

	public void setReqAutVerPadronNoSoloInfSol(Integer reqAutVerPadronNoSoloInfSol) {
		this.reqAutVerPadronNoSoloInfSol = reqAutVerPadronNoSoloInfSol;
	}

	public Integer getReqDependeciaInformeSocial() {
		return reqDependeciaInformeSocial;
	}

	public void setReqDependeciaInformeSocial(Integer reqDependeciaInformeSocial) {
		this.reqDependeciaInformeSocial = reqDependeciaInformeSocial;
	}

	public Integer getReqRiesgoAislamientoSinInfSocial() {
		return reqRiesgoAislamientoSinInfSocial;
	}

	public void setReqRiesgoAislamientoSinInfSocial(Integer reqRiesgoAislamientoSinInfSocial) {
		this.reqRiesgoAislamientoSinInfSocial = reqRiesgoAislamientoSinInfSocial;
	}

	public Integer getReqSinFichaSanitaria() {
		return reqSinFichaSanitaria;
	}

	public void setReqSinFichaSanitaria(Integer reqSinFichaSanitaria) {
		this.reqSinFichaSanitaria = reqSinFichaSanitaria;
	}

	public Integer getReqSinTelefonoFijo() {
		return reqSinTelefonoFijo;
	}

	public void setReqSinTelefonoFijo(Integer reqSinTelefonoFijo) {
		this.reqSinTelefonoFijo = reqSinTelefonoFijo;
	}

	public Integer getReqSinDatosBancarios() {
		return reqSinDatosBancarios;
	}

	public void setReqSinDatosBancarios(Integer reqSinDatosBancarios) {
		this.reqSinDatosBancarios = reqSinDatosBancarios;
	}

	public Integer getReqSolExencionBizkaia() {
		return reqSolExencionBizkaia;
	}

	public void setReqSolExencionBizkaia(Integer reqSolExencionBizkaia) {
		this.reqSolExencionBizkaia = reqSolExencionBizkaia;
	}

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getfSubsanacion() {
		return fSubsanacion;
	}

	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setfSubsanacion(Date fSubsanacion) {
		this.fSubsanacion = fSubsanacion;
	}

	public String getTxtRequerimiento() {
		return txtRequerimiento;
	}

	public void setTxtRequerimiento(String txtRequerimiento) {
		this.txtRequerimiento = txtRequerimiento;
	}

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getfCambio() {
		return fCambio;
	}

	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setfCambio(Date fCambio) {
		this.fCambio = fCambio;
	}

	public String getMotivoRechazo() {
		return motivoRechazo;
	}

	public void setMotivoRechazo(String motivoRechazo) {
		this.motivoRechazo = motivoRechazo;
	}

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getfRechazo() {
		return fRechazo;
	}

	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setfRechazo(Date fRechazo) {
		this.fRechazo = fRechazo;
	}

}