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 TramiteAperturas extends TramiteProcedimiento
		implements java.io.Serializable {

	private static final long serialVersionUID = 1L;

	private Long idTramite062;
	private Tramite tipoTramite;
	private ComunicacionApertura apertura;
	private List<TareaAperturas> listaTareas = new ArrayList<TareaAperturas>();

	private List<DocumentoAperturas> listaDocumentos;
	
	//datos registro
	private String numRegistro062;
	private Date fecRegistro062;
				
	/**
	 * Method 'TramiteAperturas'.
	 */
	public TramiteAperturas() {
	}

	/**
	 * Method 'Ab0462s00'.
	 * 
	 *  idTramite062
	 *            Long
	 *
	 * @param idTramite062 the id tramite 062
	 */
	public TramiteAperturas(Long idTramite062) {
		this.idTramite062 = idTramite062;
	}

	/**
	 * Method 'Ab0462s00'.
	 * 
	 *  idTramite062
	 *            Long
	 *  tipoTramite
	 *            Tramite
	 *  apertura
	 *            ComunicacionApertura
	 *
	 * @param idTramite062 the id tramite 062
	 * @param tipoTramite the tipo tramite
	 * @param apertura the apertura
	 */
	public TramiteAperturas(Long idTramite062, Tramite tipoTramite,
			ComunicacionApertura apertura) {
		this.idTramite062 = idTramite062;
		this.tipoTramite = tipoTramite;
		this.apertura = apertura;
	}

	/**
	 * Method 'Ab0462s00'.
	 * 
	 *  idTramite062
	 *            Long
	 *  tipoTramite
	 *            Tramite
	 *  apertura
	 *            ComunicacionApertura
	 *  listaTareas
	 *            List<Ab0463s00>
	 *
	 * @param idTramite062 the id tramite 062
	 * @param tipoTramite the tipo tramite
	 * @param apertura the apertura
	 * @param listaTareas the lista tareas
	 */
	public TramiteAperturas(Long idTramite062, Tramite tipoTramite,
			ComunicacionApertura apertura, List<TareaAperturas> listaTareas) {

		this.idTramite062 = idTramite062;
		this.tipoTramite = tipoTramite;
		this.apertura = apertura;
		this.listaTareas = listaTareas;
	}

	/**
	 * Method 'getIdTramite062'.
	 * 
	 *  Long
	 *
	 * @return the id tramite 062
	 */

	public Long getIdTramite062() {
		return this.idTramite062;
	}

	/**
	 * Method 'setIdTramite062'.
	 * 
	 *  idTramite062            Long
	 *
	 * @param idTramite062 the new id tramite 062
	 */

	public void setIdTramite062(Long idTramite062) {
		this.idTramite062 = idTramite062;
	}

	/**
	 * 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 'getApertura'.
	 * 
	 *  ComunicacionApertura
	 *
	 * @return the apertura
	 */

	public ComunicacionApertura getApertura() {
		return this.apertura;
	}

	/**
	 * Method 'setApertura'.
	 * 
	 *  apertura            ComunicacionApertura
	 *
	 * @param apertura the new apertura
	 */

	public void setApertura(ComunicacionApertura apertura) {
		this.apertura = apertura;
	}

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

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

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

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

	/**
	 * Gets the num registro 062.
	 * 
	 *  the numRegistro062
	 *
	 * @return the num registro 062
	 */
	public String getNumRegistro062() {
		return numRegistro062;
	}

	/**
	 * Sets the num registro 062.
	 * 
	 *  numRegistro062 the numRegistro062 to set
	 *
	 * @param numRegistro062 the new num registro 062
	 */
	public void setNumRegistro062(String numRegistro062) {
		this.numRegistro062 = numRegistro062;
	}

	/**
	 * Gets the fec registro 062.
	 * 
	 *  the fecRegistro062
	 *
	 * @return the fec registro 062
	 */
	public Date getFecRegistro062() {
		return fecRegistro062;
	}

	/**
	 * Sets the fec registro 062.
	 * 
	 *  fecRegistro062 the fecRegistro062 to set
	 *
	 * @param fecRegistro062 the new fec registro 062
	 */
	public void setFecRegistro062(Date fecRegistro062) {
		this.fecRegistro062 = fecRegistro062;
	}
		

	/**
	 * 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(" [ idTramite062: ").append(this.idTramite062)
				.append(" ]");
		result.append(", [ proceedingId062: ").append(this.tipoTramite)
				.append(" ]");
		result.append(", [ idApertura062: ").append(this.apertura).append(" ]");
		result.append("}");
		return result.toString();
	}

}
