/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package com.cosmodas.FacadeCosmos;

import com.cosmodas.EntCosmos.Consultores;

import java.util.List;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

/**
 * @author obper
 */
@Stateless
public class FacadeConsultores implements FacadeConsultoresLocal {

    @PersistenceContext(unitName = "wcosmodasPersistent")
    EntityManager em;

    @Override
    public Consultores buscaConsultor(String consultorCodigo) {
        return em.find(Consultores.class, consultorCodigo);
    }

    @Override
    public Consultores BusquedaPorDui(String consultorNumeroDocumento) {

        Query q = em.createNamedQuery("Consultores.findByConsultorNumeroDocumento");
        q.setParameter("consultorNumeroDocumento", consultorNumeroDocumento);
        Consultores rs = (Consultores) q.getResultList().get(0);
        return rs;
    }

    @Override
    public Consultores BusquedaPorNit(String consultorNit) {
        Query q = em.createNamedQuery("Consultores.findByConsultorNit");
        q.setParameter("consultorNit", consultorNit);
        Consultores rs = (Consultores) q.getResultList().get(0);
        return rs;
    }

    @Override
    public List<Consultores> BusquedasPorNombre(String consultorNombre1, String consultorNombre2, String consultorApellido1, String consultorApellido2) {
        Query q = em.createNamedQuery("Consultores.findByConsultorNombresCompletos");
        q.setParameter("consultorNombre1", consultorNombre1);
        q.setParameter("consultorNombre2", "%" + consultorNombre2 + "%");
        q.setParameter("consultorApellido1", consultorApellido1);
        q.setParameter("consultorApellido2", "%" + consultorApellido2 + "%");
        List<Consultores> rs = q.getResultList();
        System.out.println(rs.size());
        return rs;
    }

    @Override
    public List<Consultores> Busqueda1Nombre(String nombre1) {
        Query q = em.createNamedQuery("Consultores.findByConsultorNombresCompletos");
        q.setParameter("consultorNombre1", nombre1);
        return q.getResultList();
    }


}
