package com.ejie.ab04b.model;

import java.util.Date;

import org.codehaus.jackson.annotate.JsonIgnore;
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;

/**
 * Ab0496s00 generated by UDA, 05-Apr-2017 09:34:33.
 * 
 * @author UDA
 */

public class TareaOS3 extends TareaProcedimiento implements
		java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private Long idTarea096;
	private TramiteOS3 tramiteOS3;
	private String mailboxTaskId096;
	private Tarea tipoTarea;
	private Long estado096;
	private Date fechaIni096;
	private Date fechaFin096;
	private String usuario096;
	private String notas044;

	private String error;
	private String relanzar;

	/**
	 * Method 'Ab0496s00'.
	 */
	public TareaOS3() {
	}

	/**
	 * Method 'Ab0496s00'.
	 * 
	 * idTarea096 Long
	 * 
	 * @param idTarea096
	 *            the id tarea 096
	 */
	public TareaOS3(Long idTarea096) {
		this.idTarea096 = idTarea096;
	}

	/**
	 * Method 'Ab0496s00'.
	 * 
	 * idTarea096 Long mailboxTaskId096 String tipoTarea Tarea estado096 Long
	 * fechaIni096 Date fechaFin096 Date usuario096 String tramiteOS3 Ab0495s00
	 * 
	 * @param idTarea096
	 *            the id tarea 096
	 * @param mailboxTaskId096
	 *            the mailbox task id 096
	 * @param tipoTarea
	 *            the tipo tarea
	 * @param estado096
	 *            the estado 096
	 * @param fechaIni096
	 *            the fecha ini 096
	 * @param fechaFin096
	 *            the fecha fin 096
	 * @param usuario096
	 *            the usuario 096
	 * @param tramiteOS3
	 *            the tramite OS 3
	 */
	public TareaOS3(Long idTarea096, String mailboxTaskId096, Tarea tipoTarea,
			Long estado096, Date fechaIni096, Date fechaFin096,
			String usuario096, TramiteOS3 tramiteOS3) {
		this.idTarea096 = idTarea096;
		this.tramiteOS3 = tramiteOS3;
		this.mailboxTaskId096 = mailboxTaskId096;
		this.tipoTarea = tipoTarea;
		this.estado096 = estado096;
		this.fechaIni096 = fechaIni096;
		this.fechaFin096 = fechaFin096;
		this.usuario096 = usuario096;
	}

	/**
	 * Method 'getIdTarea096'.
	 * 
	 * Long
	 * 
	 * @return the id tarea 096
	 */

	public Long getIdTarea096() {
		return this.idTarea096;
	}

	/**
	 * Method 'setIdTarea096'.
	 * 
	 * idTarea096 Long
	 * 
	 * @param idTarea096
	 *            the new id tarea 096
	 */

	public void setIdTarea096(Long idTarea096) {
		this.idTarea096 = idTarea096;
	}

	/**
	 * Method 'getTramiteOS3'.
	 * 
	 * TramiteOS3
	 * 
	 * @return the tramite OS 3
	 */
	@JsonIgnore()
	public TramiteOS3 getTramiteOS3() {
		return this.tramiteOS3;
	}

	/**
	 * Method 'setTramiteOS3'.
	 * 
	 * tramiteOS3 TramiteOS3
	 * 
	 * @param tramiteOS3
	 *            the new tramite OS 3
	 */

	public void setTramiteOS3(TramiteOS3 tramiteOS3) {
		this.tramiteOS3 = tramiteOS3;
	}

	/**
	 * Method 'getMailboxTaskId096'.
	 * 
	 * String
	 * 
	 * @return the mailbox task id 096
	 */

	public String getMailboxTaskId096() {
		return this.mailboxTaskId096;
	}

	/**
	 * Method 'setMailboxTaskId096'.
	 * 
	 * mailboxTaskId096 String
	 * 
	 * @param mailboxTaskId096
	 *            the new mailbox task id 096
	 */

	public void setMailboxTaskId096(String mailboxTaskId096) {
		this.mailboxTaskId096 = mailboxTaskId096;
	}

	/**
	 * Method 'getTipoTarea'.
	 * 
	 * Tarea
	 * 
	 * @return the tipo tarea
	 */

	public Tarea getTipoTarea() {
		return this.tipoTarea;
	}

	/**
	 * Method 'setTipoTarea'.
	 * 
	 * tipoTarea Tarea
	 * 
	 * @param tipoTarea
	 *            the new tipo tarea
	 */

	public void setTipoTarea(Tarea tipoTarea) {
		this.tipoTarea = tipoTarea;
	}

	/**
	 * Method 'getEstado096'.
	 * 
	 * Long
	 * 
	 * @return the estado 096
	 */

	public Long getEstado096() {
		return this.estado096;
	}

	/**
	 * Method 'setEstado096'.
	 * 
	 * estado096 Long
	 * 
	 * @param estado096
	 *            the new estado 096
	 */

	public void setEstado096(Long estado096) {
		this.estado096 = estado096;
	}

	/**
	 * Method 'getFechaIni096'.
	 * 
	 * java.util.Date
	 * 
	 * @return the fecha ini 096
	 */

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

	/**
	 * Method 'setFechaIni096'.
	 * 
	 * fechaIni096 java.util.Date
	 * 
	 * @param fechaIni096
	 *            the new fecha ini 096
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFechaIni096(Date fechaIni096) {
		this.fechaIni096 = fechaIni096;
	}

	/**
	 * Method 'getFechaFin096'.
	 * 
	 * java.util.Date
	 * 
	 * @return the fecha fin 096
	 */

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

	/**
	 * Method 'setFechaFin096'.
	 * 
	 * fechaFin096 java.util.Date
	 * 
	 * @param fechaFin096
	 *            the new fecha fin 096
	 */
	@JsonDeserialize(using = JsonDateDeserializer.class)
	public void setFechaFin096(Date fechaFin096) {
		this.fechaFin096 = fechaFin096;
	}

	/**
	 * Method 'getUsuario096'.
	 * 
	 * String
	 * 
	 * @return the usuario 096
	 */

	public String getUsuario096() {
		return this.usuario096;
	}

	/**
	 * Method 'setUsuario096'.
	 * 
	 * usuario096 String
	 * 
	 * @param usuario096
	 *            the new usuario 096
	 */

	public void setUsuario096(String usuario096) {
		this.usuario096 = usuario096;
	}

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

	/**
	 * @return the notas044
	 */
	public String getNotas044() {
		return notas044;
	}

	/**
	 * Intended only for logging and debugging.
	 * 
	 * Here, the contents of every main field are placed into the result.
	 * 
	 * String
	 * 
	 * @return the string
	 */
	@Override()
	public String toString() {
		StringBuilder result = new StringBuilder();
		result.append(this.getClass().getName()).append(" Object { ");
		result.append(" [ idTarea096: ").append(this.idTarea096).append(" ]");
		result.append(", [ mailboxTaskId096: ").append(this.mailboxTaskId096)
				.append(" ]");
		result.append(", [ tipoTarea096: ").append(this.tipoTarea).append(" ]");
		result.append(", [ estado096: ").append(this.estado096).append(" ]");
		result.append(", [ fechaIni096: ").append(this.fechaIni096)
				.append(" ]");
		result.append(", [ fechaFin096: ").append(this.fechaFin096)
				.append(" ]");
		result.append(", [ usuario096: ").append(this.usuario096).append(" ]");
		result.append("}");
		return result.toString();
	}

	public String getError() {
		return error;
	}

	public void setError(String error) {
		this.error = error;
	}

	public String getRelanzar() {
		return relanzar;
	}

	public void setRelanzar(String relanzar) {
		this.relanzar = relanzar;
	}

}
