package com.ejie.ab61.model.expedientes;

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;
import java.math.BigDecimal;
import java.util.Date;

/**
 * FechasExpediente  
 * 
 *  
 */

public class FechasExpediente implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Integer idFechaExpediente;
	private String tipoEvento;
	private String plateaType;
	private String plateaSubtype;
	private String tipoDokusi;
	private String subtipoDokusi;
	private String asuntoDocumental;
	private String taskId;
	private String situacionId;
	private BigDecimal status;
	private String etiquetaFecha;
	private String descripcionCastellano;
	private String descripcionEuskera;
	private Date fechaRegistro;
	private String usuarioRegistro;
	private Long instanceId;
	private Date fechaUltmodificacion;
	private String usuarioUltmodificacion;
	private Integer numeroRelExpFech;

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

	/**
	 * Method 'FechasExpediente'.
	 * 
	 * @param idFechaExpediente
	 *            Integer
	 */
	public FechasExpediente(Integer idFechaExpediente) {
		this.idFechaExpediente = idFechaExpediente;
	}

	/**
	 * Method 'FechasExpediente'.
	 * 
	 * @param idFechaExpediente
	 *            Integer
	 * @param tipoEvento
	 *            String
	 * @param plateaType
	 *            String
	 * @param plateaSubtype
	 *            String
	 * @param tipoDokusi
	 *            String
	 * @param subtipoDokusi
	 *            String
	 * @param asuntoDocumental
	 *            String
	 * @param taskId
	 *            String
	 * @param situacionId
	 *            String
	 * @param status
	 *            BigDecimal
	 * @param etiquetaFecha
	 *            String
	 * @param descripcionCastellano
	 *            String
	 * @param descripcionEuskera
	 *            String
	 * @param fechaRegistro
	 *            Date
	 * @param usuarioRegistro
	 *            String
	 * @param instanceId
	 *            Long
	 * @param fechaUltmodificacion
	 *            Date
	 * @param usuarioUltmodificacion
	 *            String
	 */
	public FechasExpediente(Integer idFechaExpediente, String tipoEvento, String plateaType, String plateaSubtype,
			String tipoDokusi, String subtipoDokusi, String asuntoDocumental, String taskId, String situacionId,
			BigDecimal status, String etiquetaFecha, String descripcionCastellano, String descripcionEuskera,
			Date fechaRegistro, String usuarioRegistro, Long instanceId, Date fechaUltmodificacion,
			String usuarioUltmodificacion) {

		this.idFechaExpediente = idFechaExpediente;
		this.tipoEvento = tipoEvento;
		this.plateaType = plateaType;
		this.plateaSubtype = plateaSubtype;
		this.tipoDokusi = tipoDokusi;
		this.subtipoDokusi = subtipoDokusi;
		this.asuntoDocumental = asuntoDocumental;
		this.taskId = taskId;
		this.situacionId = situacionId;
		this.status = status;
		this.etiquetaFecha = etiquetaFecha;
		this.descripcionCastellano = descripcionCastellano;
		this.descripcionEuskera = descripcionEuskera;
		this.fechaRegistro = fechaRegistro;
		this.usuarioRegistro = usuarioRegistro;
		this.instanceId = instanceId;
		this.fechaUltmodificacion = fechaUltmodificacion;
		this.usuarioUltmodificacion = usuarioUltmodificacion;
	}

	/**
	 * Method 'getIdFechaExpediente'.
	 *
	 * @return Integer
	 */

	public Integer getIdFechaExpediente() {
		return this.idFechaExpediente;
	}

	/**
	 * Method 'setIdFechaExpediente'.
	 *
	 * @param idFechaExpediente
	 *            Integer
	 * @return
	 */

	public void setIdFechaExpediente(Integer idFechaExpediente) {
		this.idFechaExpediente = idFechaExpediente;
	}

	/**
	 * Method 'getTipoEvento'.
	 *
	 * @return String
	 */

	public String getTipoEvento() {
		return this.tipoEvento;
	}

	/**
	 * Method 'setTipoEvento'.
	 *
	 * @param tipoEvento
	 *            String
	 * @return
	 */

	public void setTipoEvento(String tipoEvento) {
		this.tipoEvento = tipoEvento;
	}

	/**
	 * Method 'getPlateaType'.
	 *
	 * @return String
	 */

	public String getPlateaType() {
		return this.plateaType;
	}

	/**
	 * Method 'setPlateaType'.
	 *
	 * @param plateaType
	 *            String
	 * @return
	 */

	public void setPlateaType(String plateaType) {
		this.plateaType = plateaType;
	}

	/**
	 * Method 'getPlateaSubtype'.
	 *
	 * @return String
	 */

	public String getPlateaSubtype() {
		return this.plateaSubtype;
	}

	/**
	 * Method 'setPlateaSubtype'.
	 *
	 * @param plateaSubtype
	 *            String
	 * @return
	 */

	public void setPlateaSubtype(String plateaSubtype) {
		this.plateaSubtype = plateaSubtype;
	}

	/**
	 * Method 'getTipoDokusi'.
	 *
	 * @return String
	 */

	public String getTipoDokusi() {
		return this.tipoDokusi;
	}

	/**
	 * Method 'setTipoDokusi'.
	 *
	 * @param tipoDokusi
	 *            String
	 * @return
	 */

	public void setTipoDokusi(String tipoDokusi) {
		this.tipoDokusi = tipoDokusi;
	}

	/**
	 * Method 'getSubtipoDokusi'.
	 *
	 * @return String
	 */

	public String getSubtipoDokusi() {
		return this.subtipoDokusi;
	}

	/**
	 * Method 'setSubtipoDokusi'.
	 *
	 * @param subtipoDokusi
	 *            String
	 * @return
	 */

	public void setSubtipoDokusi(String subtipoDokusi) {
		this.subtipoDokusi = subtipoDokusi;
	}

	/**
	 * Method 'getAsuntoDocumental'.
	 *
	 * @return String
	 */

	public String getAsuntoDocumental() {
		return this.asuntoDocumental;
	}

	/**
	 * Method 'setAsuntoDocumental'.
	 *
	 * @param asuntoDocumental
	 *            String
	 * @return
	 */

	public void setAsuntoDocumental(String asuntoDocumental) {
		this.asuntoDocumental = asuntoDocumental;
	}

	/**
	 * Method 'getTaskId'.
	 *
	 * @return String
	 */

	public String getTaskId() {
		return this.taskId;
	}

	/**
	 * Method 'setTaskId'.
	 *
	 * @param taskId
	 *            String
	 * @return
	 */

	public void setTaskId(String taskId) {
		this.taskId = taskId;
	}

	/**
	 * Method 'getSituacionId'.
	 *
	 * @return String
	 */

	public String getSituacionId() {
		return this.situacionId;
	}

	/**
	 * Method 'setSituacionId'.
	 *
	 * @param situacionId
	 *            String
	 * @return
	 */

	public void setSituacionId(String situacionId) {
		this.situacionId = situacionId;
	}

	/**
	 * Method 'getStatus'.
	 *
	 * @return BigDecimal
	 */

	public BigDecimal getStatus() {
		return this.status;
	}

	/**
	 * Method 'setStatus'.
	 *
	 * @param status
	 *            BigDecimal
	 * @return
	 */

	public void setStatus(BigDecimal status) {
		this.status = status;
	}

	/**
	 * Method 'getEtiquetaFecha'.
	 *
	 * @return String
	 */

	public String getEtiquetaFecha() {
		return this.etiquetaFecha;
	}

	/**
	 * Method 'setEtiquetaFecha'.
	 *
	 * @param etiquetaFecha
	 *            String
	 * @return
	 */

	public void setEtiquetaFecha(String etiquetaFecha) {
		this.etiquetaFecha = etiquetaFecha;
	}

	/**
	 * Method 'getDescripcionCastellano'.
	 *
	 * @return String
	 */

	public String getDescripcionCastellano() {
		return this.descripcionCastellano;
	}

	/**
	 * Method 'setDescripcionCastellano'.
	 *
	 * @param descripcionCastellano
	 *            String
	 * @return
	 */

	public void setDescripcionCastellano(String descripcionCastellano) {
		this.descripcionCastellano = descripcionCastellano;
	}

	/**
	 * Method 'getDescripcionEuskera'.
	 *
	 * @return String
	 */

	public String getDescripcionEuskera() {
		return this.descripcionEuskera;
	}

	/**
	 * Method 'setDescripcionEuskera'.
	 *
	 * @param descripcionEuskera
	 *            String
	 * @return
	 */

	public void setDescripcionEuskera(String descripcionEuskera) {
		this.descripcionEuskera = descripcionEuskera;
	}

	/**
	 * Method 'getFechaRegistro'.
	 *
	 * @return java.util.Date
	 */

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

	/**
	 * Method 'setFechaRegistro'.
	 *
	 * @param fechaRegistro
	 *            java.util.Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFechaRegistro(Date fechaRegistro) {
		this.fechaRegistro = fechaRegistro;
	}

	/**
	 * Method 'getUsuarioRegistro'.
	 *
	 * @return String
	 */

	public String getUsuarioRegistro() {
		return this.usuarioRegistro;
	}

	/**
	 * Method 'setUsuarioRegistro'.
	 *
	 * @param usuarioRegistro
	 *            String
	 * @return
	 */

	public void setUsuarioRegistro(String usuarioRegistro) {
		this.usuarioRegistro = usuarioRegistro;
	}

	/**
	 * Method 'getInstanceId'.
	 *
	 * @return Long
	 */

	public Long getInstanceId() {
		return this.instanceId;
	}

	/**
	 * Method 'setInstanceId'.
	 *
	 * @param instanceId
	 *            Long
	 * @return
	 */

	public void setInstanceId(Long instanceId) {
		this.instanceId = instanceId;
	}

	/**
	 * Method 'getFechaUltmodificacion'.
	 *
	 * @return java.util.Date
	 */

	@JsonSerialize(using = JsonDateSerializer.class)
	public Date getFechaUltmodificacion() {
		return this.fechaUltmodificacion;
	}

	/**
	 * Method 'setFechaUltmodificacion'.
	 *
	 * @param fechaUltmodificacion
	 *            java.util.Date
	 * @return
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFechaUltmodificacion(Date fechaUltmodificacion) {
		this.fechaUltmodificacion = fechaUltmodificacion;
	}

	/**
	 * Method 'getUsuarioUltmodificacion'.
	 *
	 * @return String
	 */

	public String getUsuarioUltmodificacion() {
		return this.usuarioUltmodificacion;
	}

	/**
	 * Method 'setUsuarioUltmodificacion'.
	 *
	 * @param usuarioUltmodificacion
	 *            String
	 * @return
	 */

	public void setUsuarioUltmodificacion(String usuarioUltmodificacion) {
		this.usuarioUltmodificacion = usuarioUltmodificacion;
	}

	/**
	 * @return the numeroRelExpFech
	 */
	public Integer getNumeroRelExpFech() {
		return numeroRelExpFech;
	}

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

	/**
	 * Intended only for logging and debugging.
	 * 
	 * Here, the contents of every main field are placed into the result.
	 * 
	 * @return String
	 */
	@Override
	public String toString() {
		StringBuilder result = new StringBuilder();
		result.append(this.getClass().getName()).append(" Object { ");
		result.append(" [ idFechaExpediente: ").append(this.idFechaExpediente).append(" ]");
		result.append(", [ tipoEvento: ").append(this.tipoEvento).append(" ]");
		result.append(", [ plateaType: ").append(this.plateaType).append(" ]");
		result.append(", [ plateaSubtype: ").append(this.plateaSubtype).append(" ]");
		result.append(", [ tipoDokusi: ").append(this.tipoDokusi).append(" ]");
		result.append(", [ subtipoDokusi: ").append(this.subtipoDokusi).append(" ]");
		result.append(", [ asuntoDocumental: ").append(this.asuntoDocumental).append(" ]");
		result.append(", [ taskId: ").append(this.taskId).append(" ]");
		result.append(", [ situacionId: ").append(this.situacionId).append(" ]");
		result.append(", [ status: ").append(this.status).append(" ]");
		result.append(", [ etiquetaFecha: ").append(this.etiquetaFecha).append(" ]");
		result.append(", [ descripcionCastellano: ").append(this.descripcionCastellano).append(" ]");
		result.append(", [ descripcionEuskera: ").append(this.descripcionEuskera).append(" ]");
		result.append(", [ fechaRegistro: ").append(this.fechaRegistro).append(" ]");
		result.append(", [ usuarioRegistro: ").append(this.usuarioRegistro).append(" ]");
		result.append(", [ instanceId: ").append(this.instanceId).append(" ]");
		result.append(", [ fechaUltmodificacion: ").append(this.fechaUltmodificacion).append(" ]");
		result.append(", [ usuarioUltmodificacion: ").append(this.usuarioUltmodificacion).append(" ]");
		result.append("}");
		return result.toString();
	}

}
