package com.ejie.ab79.model.expedientes;

import com.ejie.ab79.model.nora.T17Localidad;
import com.ejie.ab79.model.nora.T17Municipio;
import com.ejie.ab79.model.nora.T17Pais;
import com.ejie.ab79.model.nora.T17Provincia;

/**
 * DatosDirecciones  
 * 
 *  
 */

public class DatosDirecciones implements java.io.Serializable {

	private static final long serialVersionUID = 1L;
	private Integer idDireccion;
	private DatosTerceros datosTerceros;
	private TiposDireccion tiposDireccion;
	private String direccion;
	private String numero;
	private String escalera;
	private String piso;
	private String letra;
	private String codigoPostal;
	private Long idPais;
	private Long idProvincia;
	private Long idMunicipio;
	private Long idLocalidad;
	private String usuarioRegistro;
	private String usuarioUltmodificacion;
	private String establecimiento;
	private String descripcionCiudad;
	private String descripcionProvincia;

	private String identificadorEstablecimiento;
	private String identificadorEstablecimientoUno;
	private String identificadorEstablecimientoDos;
	private String identificadorEstablecimientoTres;
	private T17Pais pais;
	private T17Provincia provincia;
	private T17Municipio municipio;
	private T17Localidad localidad;

	private String complementoDireccion;

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

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

	/**
	 * Method 'DatosDirecciones'.
	 * 
	 * @param idDireccion
	 *            Integer
	 * @param direccion
	 *            String
	 * @param numero
	 *            String
	 * @param escalera
	 *            String
	 * @param piso
	 *            String
	 * @param letra
	 *            String
	 * @param codigoPostal
	 *            String
	 * @param idProvincia
	 *            Long
	 * @param idMunicipio
	 *            Long
	 * @param idLocalidad
	 *            Long
	 * @param fechaRegistro
	 *            Date
	 * @param usuarioRegistro
	 *            String
	 * @param fechaUltmodificacion
	 *            Date
	 * @param usuarioUltmodificacion
	 *            String
	 * @param datosTerceros
	 *            DatosTerceros
	 * @param tiposDireccion
	 *            TiposDireccion
	 */
	public DatosDirecciones(Integer idDireccion, String establecimiento, String direccion, String numero,
			String escalera, String piso, String letra, String codigoPostal, Long idProvincia, Long idMunicipio,
			Long idLocalidad, String usuarioRegistro, String usuarioUltmodificacion, DatosTerceros datosTerceros,
			TiposDireccion tiposDireccion) {

		this.idDireccion = idDireccion;
		this.establecimiento = establecimiento;
		this.datosTerceros = datosTerceros;
		this.tiposDireccion = tiposDireccion;
		this.direccion = direccion;
		this.numero = numero;
		this.escalera = escalera;
		this.piso = piso;
		this.letra = letra;
		this.codigoPostal = codigoPostal;
		this.idProvincia = idProvincia;
		this.idMunicipio = idMunicipio;
		this.idLocalidad = idLocalidad;
		this.usuarioRegistro = usuarioRegistro;
		this.usuarioUltmodificacion = usuarioUltmodificacion;
	}

	public DatosDirecciones(String identificadorEstablecimiento) {
		this.identificadorEstablecimiento = identificadorEstablecimiento;
	}

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

	public Integer getIdDireccion() {
		return this.idDireccion;
	}

	/**
	 * Method 'setIdDireccion'.
	 *
	 * @param idDireccion
	 *            Integer
	 * @return
	 */

	public void setIdDireccion(Integer idDireccion) {
		this.idDireccion = idDireccion;
	}

	/**
	 * Method 'getDatosTerceros'.
	 *
	 * @return DatosTerceros
	 */

	public DatosTerceros getDatosTerceros() {
		return this.datosTerceros;
	}

	/**
	 * Method 'setDatosTerceros'.
	 *
	 * @param datosTerceros
	 *            DatosTerceros
	 * @return
	 */

	public void setDatosTerceros(DatosTerceros datosTerceros) {
		this.datosTerceros = datosTerceros;
	}

	/**
	 * Method 'getTiposDireccion'.
	 *
	 * @return TiposDireccion
	 */

	public TiposDireccion getTiposDireccion() {
		return this.tiposDireccion;
	}

	/**
	 * Method 'setTiposDireccion'.
	 *
	 * @param tiposDireccion
	 *            TiposDireccion
	 * @return
	 */

	public void setTiposDireccion(TiposDireccion tiposDireccion) {
		this.tiposDireccion = tiposDireccion;
	}

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

	public String getDireccion() {
		return this.direccion;
	}

	/**
	 * Method 'setDireccion'.
	 *
	 * @param direccion
	 *            String
	 * @return
	 */

	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

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

	public String getNumero() {
		return this.numero;
	}

	/**
	 * Method 'setNumero'.
	 *
	 * @param numero
	 *            String
	 * @return
	 */

	public void setNumero(String numero) {
		this.numero = numero;
	}

	public String getIdentificadorEstablecimiento() {
		return identificadorEstablecimiento;
	}

	public void setIdentificadorEstablecimiento(String identificadorEstablecimiento) {
		this.identificadorEstablecimiento = identificadorEstablecimiento;
		if (null != this.identificadorEstablecimiento && this.identificadorEstablecimiento.length() == 8
				&& !"".equals(identificadorEstablecimiento)) {
			this.identificadorEstablecimientoUno = identificadorEstablecimiento.substring(0, 1);
			this.identificadorEstablecimientoDos = identificadorEstablecimiento.substring(1, 3);
			this.identificadorEstablecimientoTres = identificadorEstablecimiento.substring(3, 8);
		} else {
			this.identificadorEstablecimiento = "";
		}
	}

	/**
	 * @return the identificadorEstablecimientoUno
	 */
	public String getIdentificadorEstablecimientoUno() {
		return this.identificadorEstablecimientoUno;
	}

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

	/**
	 * @return the identificadorEstablecimientoDos
	 */
	public String getIdentificadorEstablecimientoDos() {
		return this.identificadorEstablecimientoDos;
	}

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

	/**
	 * @return the identificadorEstablecimientoTres
	 */
	public String getIdentificadorEstablecimientoTres() {
		return this.identificadorEstablecimientoTres;
	}

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

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

	public String getEscalera() {
		return this.escalera;
	}

	/**
	 * Method 'setEscalera'.
	 *
	 * @param escalera
	 *            String
	 * @return
	 */

	public void setEscalera(String escalera) {
		this.escalera = escalera;
	}

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

	public String getPiso() {
		return this.piso;
	}

	/**
	 * Method 'setPiso'.
	 *
	 * @param piso
	 *            String
	 * @return
	 */

	public void setPiso(String piso) {
		this.piso = piso;
	}

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

	public String getLetra() {
		return this.letra;
	}

	/**
	 * Method 'setLetra'.
	 *
	 * @param letra
	 *            String
	 * @return
	 */

	public void setLetra(String letra) {
		this.letra = letra;
	}

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

	public String getCodigoPostal() {
		return this.codigoPostal;
	}

	/**
	 * Method 'setCodigoPostal'.
	 *
	 * @param codigoPostal
	 *            String
	 * @return
	 */

	public void setCodigoPostal(String codigoPostal) {
		this.codigoPostal = codigoPostal;
	}

	/**
	 * @return the idPais
	 */
	public Long getIdPais() {
		return this.idPais;
	}

	/**
	 * @param idPais
	 *            the idPais to set
	 */
	public void setIdPais(Long idPais) {
		this.idPais = idPais;
	}

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

	public Long getIdProvincia() {
		return this.idProvincia;
	}

	/**
	 * Method 'setIdProvincia'.
	 *
	 * @param idProvincia
	 *            Long
	 * @return
	 */

	public void setIdProvincia(Long idProvincia) {
		this.idProvincia = idProvincia;
	}

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

	public Long getIdMunicipio() {
		return this.idMunicipio;
	}

	/**
	 * Method 'setIdMunicipio'.
	 *
	 * @param idMunicipio
	 *            Long
	 * @return
	 */

	public void setIdMunicipio(Long idMunicipio) {
		this.idMunicipio = idMunicipio;
	}

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

	public Long getIdLocalidad() {
		return this.idLocalidad;
	}

	/**
	 * Method 'setIdLocalidad'.
	 *
	 * @param idLocalidad
	 *            Long
	 * @return
	 */

	public void setIdLocalidad(Long idLocalidad) {
		this.idLocalidad = idLocalidad;
	}

	/**
	 * 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 '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 establecimiento
	 */
	public String getEstablecimiento() {
		return establecimiento;
	}

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

	public String getDescripcionCiudad() {
		return descripcionCiudad;
	}

	public void setDescripcionCiudad(String descripcionCiudad) {
		this.descripcionCiudad = descripcionCiudad;
	}

	public String getDescripcionProvincia() {
		return descripcionProvincia;
	}

	public void setDescripcionProvincia(String descripcionProvincia) {
		this.descripcionProvincia = descripcionProvincia;
	}

	/*
	 * (non-Javadoc)
	 * 
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "DatosDirecciones [idDireccion=" + idDireccion + ", datosTerceros=" + datosTerceros + ", tiposDireccion="
				+ tiposDireccion + ", direccion=" + direccion + ", numero=" + numero + ", escalera=" + escalera
				+ ", piso=" + piso + ", letra=" + letra + ", codigoPostal=" + codigoPostal + ", idProvincia="
				+ idProvincia + ", idMunicipio=" + idMunicipio + ", idLocalidad=" + idLocalidad + ", usuarioRegistro="
				+ usuarioRegistro + ", usuarioUltmodificacion=" + usuarioUltmodificacion + ", establecimiento="
				+ establecimiento + "]";
	}

	public T17Pais getPais() {
		return pais;
	}

	public void setPais(T17Pais pais) {
		this.pais = pais;
	}

	public T17Provincia getProvincia() {
		return provincia;
	}

	public void setProvincia(T17Provincia provincia) {
		this.provincia = provincia;
	}

	public T17Municipio getMunicipio() {
		return municipio;
	}

	public void setMunicipio(T17Municipio municipio) {
		this.municipio = municipio;
	}

	public T17Localidad getLocalidad() {
		return localidad;
	}

	public void setLocalidad(T17Localidad localidad) {
		this.localidad = localidad;
	}

	public String getComplementoDireccion() {
		return complementoDireccion;
	}

	public void setComplementoDireccion(String complementoDireccion) {
		this.complementoDireccion = complementoDireccion;
	}

}
