/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package br.edu.ifnmg.GerenciamentoEventos.Infraestrutura.Dados; import br.edu.ifnmg.DomainModel.AreaConhecimento; import br.edu.ifnmg.DomainModel.Services.AreaConhecimentoRepositorio; import java.util.List; import javax.ejb.Singleton; /** * * @author Isla Guedes */ @Singleton public class AreaConhecimentoDAO extends DAO<AreaConhecimento> implements AreaConhecimentoRepositorio { public AreaConhecimentoDAO() { super(AreaConhecimento.class); } @Override public List<AreaConhecimento> Buscar(AreaConhecimento filtro) { return IgualA("id", filtro.getId()) .Like("nome", filtro.getNome()) .Ordenar("numeroCNPQ", "ASC") .Buscar(); } @Override public List<AreaConhecimento> BuscarTexto(String nome) { List<AreaConhecimento> list = getManager() .createNativeQuery("SELECT * FROM areasconhecimento WHERE MATCH(nome,numerocnpq) AGAINST(? IN BOOLEAN MODE)", AreaConhecimento.class) .setParameter(1, nome+"*") .getResultList(); return list; } @Override public AreaConhecimento Abrir(String numeroCNPQ) { return Like("numeroCNPQ", numeroCNPQ).Abrir(); } @Override public List<AreaConhecimento> GrandesAreas() { return Like("numeroCNPQ", "_.00.00.00-_") .Ordenar("numeroCNPQ", "ASC") .Buscar(); } @Override public List<AreaConhecimento> Areas() { return Like("numeroCNPQ", "_.__.00.00-_") .NotLike("numeroCNPQ", "_.00.00.00-_") //.Ordenar("nome", "ASC") .Ordenar("numeroCNPQ", "ASC") .Buscar(); } }