package com.fp.armas.portal.facade;

import java.util.Collection;

import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.ejb.TransactionAttribute;
import javax.ejb.TransactionAttributeType;

import com.fp.armas.portal.model.Tcustcompany;
import com.fp.armas.portal.model.Tcustpeople;
import com.fp.armas.portal.model.Tcustpersonaddress;
import com.fp.armas.portal.model.Tcustpersondetail;
import com.fp.armas.portal.model.Tcustpersonphone;
import com.fp.armas.portal.model.Tgeneactivity;
import com.fp.armas.portal.model.Tgenecanton;
import com.fp.armas.portal.model.Tgenecatalogdetail;
import com.fp.armas.portal.model.Tgenecity;
import com.fp.armas.portal.model.Tgenecountry;
import com.fp.armas.portal.model.Tgenefilesdetail;
import com.fp.armas.portal.model.Tgeneparroquia;
import com.fp.armas.portal.model.Tgeneprovince;
import com.fp.armas.portal.service.RegistroBean;
import com.fp.armas.portal.util.RegistroException;

@Stateless
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public class PortalServiceBean implements PortalService {
	
	@EJB
	private RegistroBean registroBean;

	@Override
	public Collection<Tgenecatalogdetail> obtenerCatalogo(String codigoTipo) {
		// TODO Auto-generated method stub
		return registroBean.obtenerCatalogo(codigoTipo);
	}
	
	@Override
	public Collection<Tgeneactivity> obtenerActividadEconomica()
			throws RegistroException {
		// TODO Auto-generated method stub
		return registroBean.obtenerActividades();
	}
	
	@Override
	public Collection<Tgenecatalogdetail> obtenerCatalogo(String codigoTipo,
			String legalCode) {
		// TODO Auto-generated method stub
		return registroBean.obtenerCalogo(codigoTipo, legalCode);
	}

	@Override
	public Collection<Tgenecountry> obtenerPais() {
		// TODO Auto-generated method stub
		return registroBean.obtenerPaises();
	}

	@Override
	public Collection<Tgeneprovince> obtenerProvincias(String codPais) {
		return registroBean.obtenerProvincias(codPais);
	}

	@Override
	public Collection<Tgenecanton> obtenerCantones(String codPais,
			String codProvincia) {
		// TODO Auto-generated method stub
		return registroBean.obtenerCantones(codPais, codProvincia);
	}

	@Override
	public Collection<Tgeneparroquia> obtenerParroquias(String codPais,
			String codProvincia, String codCanton) {
		// TODO Auto-generated method stub
		return registroBean.obtenerParroquias(codPais, codProvincia, codCanton);
	}

	@Override
	public Collection<Tgenecity> obtenerCiudades(String codPais,
			String codProvincia, String codCanton) {
		// TODO Auto-generated method stub
		return registroBean.obtenerCiudades(codPais, codProvincia, codCanton);
	}

	@Override
	public void guardarUsuarioMaia(Tcustpersondetail persona,
			Tcustpersonaddress direccionPersona,
			Tcustpersonaddress correoPersona, Tcustpersonphone telefonoPersona,
			Tcustpersonphone telefonoCelular, Tcustpeople adicionalPersona, Tcustcompany compania, Tgenefilesdetail foto) {
		// TODO Auto-generated method stub
		registroBean.guardarUsuario(persona, direccionPersona, correoPersona, telefonoPersona, telefonoCelular, adicionalPersona, compania, foto);
	}

	@Override
	public Tcustpersondetail obtenerDetallePersonaPorIdentificacion(
			String codigoIdentificacion) throws RegistroException {
		// TODO Auto-generated method stub
		return registroBean.obtenerPersonaPorIdentificacion(codigoIdentificacion);
	}

	@Override
	public void actualizarDatosUsuario(Tcustpersondetail persona,
			Tcustpersonaddress direccionPersona,
			Tcustpersonaddress correoPersona, Tcustpersonphone telefonoPersona,
			Tcustpersonphone telefonoCelular, Tcustpeople adicionalPersona,
			Tcustcompany compania, Tgenefilesdetail foto)
			throws RegistroException {
		// TODO Auto-generated method stub
		
	}

	@Override
	public Tcustcompany obtenerCompaniaPorId(Integer personcode)
			throws RegistroException {
		return registroBean.obtenerCompania(personcode);
	}

	@Override
	public Tcustpeople obtenerPersonaNaturalPorId(Integer personcode)
			throws RegistroException {
		return registroBean.obtenerPersonaNaturalId(personcode);
	}

	@Override
	public Tcustpersonaddress obtenerDireccionPrincipal(Integer personcode)
			throws RegistroException {
		return registroBean.obtenerDireccionPrincipal(personcode);
	}

	@Override
	public Tcustpersonaddress obtenerCorreo(Integer personcode)
			throws RegistroException {
		return registroBean.obtenerDireccionCorreo(personcode);
	}

	@Override
	public Tcustpersonphone obtenerTelefonoFijo(Integer personcode)
			throws RegistroException {
		return registroBean.obtenerTelefonoFijo(personcode);
	}

	@Override
	public Tcustpersonphone obtenerTelefonoCelular(Integer personcode) {
		return registroBean.obtenerTelefonoCelular(personcode);
	}

	@Override
	public Tgenefilesdetail obtenerImagen(long code){
		return registroBean.obtenerImagen(code);
	}
}
