Pessoal,
Tentei criar um método genérico para uma pesquisa com vários parâmetros para não ficar criando um Criteria para cada combinação que o usuário escolha. Mas não deu muito certo.
public List<ServicoDiario> pesquisarServicoDiario(String setor, String cliente, String regime){
Criteria crt = this.session.createCriteria(ServicoDiario.class);
if(cliente.equals("Selecione")){
cliente = "";
}
if(regime.equals("Selecione")){
regime = "";
}
if(setor.equals("Selecione")){
setor = "";
}
crt.add(Restrictions.like("setor", setor+"%"));
crt.createAlias("cliente", "cliente");
crt.add(Restrictions.like("cliente.nome", cliente+"%"));
crt.add(Restrictions.like("regime", regime+"%"));
return crt.list();
}
Ou seja, não precisaria criar um Criteria para cada opção de busca que o usuário escolher, e sim um método só que englobe todas as opções de escolha do usuário.
Teria que ter uma forma de passar para o Criteria o seguinte: “Quando o campo vier em branco pegue qualquer coisa”. Estou usando para isso o “%”.
Alguém pode dar uma luz??
Abraço a todos…