package com.ejie.ab04b.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.codehaus.jackson.annotate.JsonIgnore;

/**
 * Ab0462s00 generated by UDA, 02-Feb-2017 13:49:16.
 * 
 * @author UDA
 */

public class TramiteOS2 extends TramiteProcedimiento
		implements java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private Long idTramite092;
	private Tramite tipoTramite;
	private OS2 os2;
	private List<TareaOS2> listaTareas = new ArrayList<TareaOS2>();

	private List<DocumentoOS2> listaDocumentos;

	// datos registro
	private String numRegistro092;
	private Date fecRegistro092;

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

	/**
	 * Method 'Ab0462s00'.
	 * 
	 *  idTramite092
	 *            Long
	 *
	 * @param idTramite092 the id tramite 092
	 */
	public TramiteOS2(Long idTramite092) {
		this.idTramite092 = idTramite092;
	}

	/**
	 * Method 'Ab0462s00'.
	 * 
	 *  idTramite092
	 *            Long
	 *  tipoTramite
	 *            Tramite
	 *  os2
	 *            OS2
	 *
	 * @param idTramite092 the id tramite 092
	 * @param tipoTramite the tipo tramite
	 * @param os2 the os 2
	 */
	public TramiteOS2(Long idTramite092, Tramite tipoTramite, OS2 os2) {
		this.idTramite092 = idTramite092;
		this.tipoTramite = tipoTramite;
		this.os2 = os2;
	}

	/**
	 * Method 'Ab0462s00'.
	 * 
	 *  idTramite092
	 *            Long
	 *  tipoTramite
	 *            Tramite
	 *  os2
	 *            OS2
	 *  listaTareas
	 *            List<Ab0463s00>
	 *
	 * @param idTramite092 the id tramite 092
	 * @param tipoTramite the tipo tramite
	 * @param os2 the os 2
	 * @param listaTareas the lista tareas
	 */
	public TramiteOS2(Long idTramite092, Tramite tipoTramite, OS2 os2,
			List<TareaOS2> listaTareas) {

		this.idTramite092 = idTramite092;
		this.tipoTramite = tipoTramite;
		this.os2 = os2;
		this.listaTareas = listaTareas;
	}

	/**
	 * Method 'getIdTramite092'.
	 * 
	 *  Long
	 *
	 * @return the id tramite 092
	 */

	public Long getIdTramite092() {
		return this.idTramite092;
	}

	/**
	 * Method 'setIdTramite092'.
	 * 
	 *  idTramite092            Long
	 *
	 * @param idTramite092 the new id tramite 092
	 */

	public void setIdTramite092(Long idTramite092) {
		this.idTramite092 = idTramite092;
	}

	/**
	 * Method 'getTipoTramite'.
	 * 
	 *  Tramite
	 *
	 * @return the tipo tramite
	 */

	public Tramite getTipoTramite() {
		return this.tipoTramite;
	}

	/**
	 * Method 'setTipoTramite'.
	 * 
	 *  tipoTramite            Tramite
	 *
	 * @param tipoTramite the new tipo tramite
	 */

	public void setTipoTramite(Tramite tipoTramite) {
		this.tipoTramite = tipoTramite;
	}

	/**
	 * Method 'getos2'.
	 * 
	 *  OS2
	 *
	 * @return the os 2
	 */

	public OS2 getos2() {
		return this.os2;
	}

	/**
	 * Method 'setos2'.
	 * 
	 *  os2            OS2
	 *
	 * @param os2 the new os 2
	 */

	public void setos2(OS2 os2) {
		this.os2 = os2;
	}

	/**
	 * Method 'getListaTareasos2s'.
	 * 
	 *  List
	 *
	 * @return the lista tareas
	 */
	@JsonIgnore()
	public List<TareaOS2> getListaTareas() {
		return this.listaTareas;
	}

	/**
	 * Method 'setListaTareasos2s'.
	 * 
	 *  listaTareas            List
	 *
	 * @param listaTareas the new lista tareas
	 */
	public void setListaTareas(List<TareaOS2> listaTareas) {
		this.listaTareas = listaTareas;
	}

	/**
	 * Gets the lista documentos.
	 * 
	 *  List<DocumentoOS2>
	 *
	 * @return the lista documentos
	 */
	public List<DocumentoOS2> getListaDocumentos() {
		return this.listaDocumentos;
	}

	/**
	 * Sets the lista documentos.
	 * 
	 *  listaDocumentos            List<DocumentoOS2>
	 *
	 * @param listaDocumentos the new lista documentos
	 */
	public void setListaDocumentos(List<DocumentoOS2> listaDocumentos) {
		this.listaDocumentos = listaDocumentos;
	}

	/**
	 * Gets the num registro 092.
	 * 
	 *  the numRegistro092
	 *
	 * @return the num registro 092
	 */
	public String getNumRegistro092() {
		return numRegistro092;
	}

	/**
	 * Sets the num registro 092.
	 * 
	 *  numRegistro092            the numRegistro092 to set
	 *
	 * @param numRegistro092 the new num registro 092
	 */
	public void setNumRegistro092(String numRegistro092) {
		this.numRegistro092 = numRegistro092;
	}

	/**
	 * Gets the fec registro 092.
	 * 
	 *  the fecRegistro092
	 *
	 * @return the fec registro 092
	 */
	public Date getFecRegistro092() {
		return fecRegistro092;
	}

	/**
	 * Sets the fec registro 092.
	 * 
	 *  fecRegistro092            the fecRegistro092 to set
	 *
	 * @param fecRegistro092 the new fec registro 092
	 */
	public void setFecRegistro092(Date fecRegistro092) {
		this.fecRegistro092 = fecRegistro092;
	}

	/**
	 * 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(" [ idTramite092: ").append(this.idTramite092)
				.append(" ]");
		result.append(", [ proceedingId092: ").append(this.tipoTramite)
				.append(" ]");
		result.append(", [ idos2092: ").append(this.os2).append(" ]");
		result.append("}");
		return result.toString();
	}

}
