package com.ejie.ab61.model.moduloAdministrativo;

import java.sql.Clob;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import com.ejie.x38.serialization.JsonDateDeserializer;
import com.ejie.x38.serialization.JsonDateSerializer;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

public class Trazas implements java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private Integer idTraza;
	private Integer idSolicitud;
	private Integer idExpediente;
	private String codigoProcedimiento;
	private String excepcion;
	private String metodo;
	private String estadoSolicitud;
	private Clob tareas;
	private Date fechaRegistro;
	private String fechaRegistroStr;
	private Integer idMensaje;

	private String ficheroTareas;

	/**
	 * @return the idTraza
	 */
	public Integer getIdTraza() {
		return idTraza;
	}

	/**
	 * @param idTraza
	 *            the idTraza to set
	 */
	public void setIdTraza(Integer idTraza) {
		this.idTraza = idTraza;
	}

	/**
	 * @return the idSolicitud
	 */
	public Integer getIdSolicitud() {
		return idSolicitud;
	}

	/**
	 * @param idSolicitud
	 *            the idSolicitud to set
	 */
	public void setIdSolicitud(Integer idSolicitud) {
		this.idSolicitud = idSolicitud;
	}

	/**
	 * @return the idExpediente
	 */
	public Integer getIdExpediente() {
		return idExpediente;
	}

	/**
	 * @param idExpediente
	 *            the idExpediente to set
	 */
	public void setIdExpediente(Integer idExpediente) {
		this.idExpediente = idExpediente;
	}

	/**
	 * @return the codigoProcedimiento
	 */
	public String getCodigoProcedimiento() {
		return codigoProcedimiento;
	}

	/**
	 * @param codigoProcedimiento
	 *            the codigoProcedimiento to set
	 */
	public void setCodigoProcedimiento(String codigoProcedimiento) {
		this.codigoProcedimiento = codigoProcedimiento;
	}

	/**
	 * @return the excepcion
	 */
	public String getExcepcion() {
		return excepcion;
	}

	/**
	 * @param excepcion
	 *            the excepcion to set
	 */
	public void setExcepcion(String excepcion) {
		this.excepcion = excepcion;
	}

	/**
	 * @return the metodo
	 */
	public String getMetodo() {
		return metodo;
	}

	/**
	 * @param metodo
	 *            the metodo to set
	 */
	public void setMetodo(String metodo) {
		this.metodo = metodo;
	}

	/**
	 * @return the estadoSolicitud
	 */
	public String getEstadoSolicitud() {
		return estadoSolicitud;
	}

	/**
	 * @param estadoSolicitud
	 *            the estadoSolicitud to set
	 */
	public void setEstadoSolicitud(String estadoSolicitud) {
		this.estadoSolicitud = estadoSolicitud;
	}

	/**
	 * @return the tareas
	 */
	@JsonIgnore
	public Clob getTareas() {
		return tareas;
	}

	/**
	 * @param tareas
	 *            the tareas to set
	 */
	@JsonIgnore
	public void setTareas(Clob tareas) {
		this.tareas = tareas;
	}

	/**
	 * @return the fechaRegistro
	 */
	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFechaRegistro() {
		return fechaRegistro;
	}

	/**
	 * @param fechaRegistro
	 *            the fechaRegistro to set
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFechaRegistro(Date fechaRegistro) {
		this.fechaRegistro = fechaRegistro;
	}

	public String getFechaRegistroStr() {
		if (fechaRegistro != null) {
			return fechaRegistro.toString().replaceAll("-", "/");
		} else {
			return "";
		}
	}

	public void setFechaRegistroStr(String fechaRegistroStr) {
		this.fechaRegistroStr = fechaRegistroStr;
	}

	/**
	 * @return the idMensaje
	 */
	public Integer getIdMensaje() {
		return idMensaje;
	}

	/**
	 * @param idMensaje
	 *            the idMensaje to set
	 */
	public void setIdMensaje(Integer idMensaje) {
		this.idMensaje = idMensaje;
	}

	/**
	 * @return the ficheroTareas
	 */
	public String getFicheroTareas() {
		return ficheroTareas;
	}

	/**
	 * @param ficheroTareas
	 *            the ficheroTareas to set
	 */
	public void setFicheroTareas(String ficheroTareas) {
		this.ficheroTareas = ficheroTareas;
	}

}