Como fazer uma busca assim, usando criteria?
Tenho uma classe de Resgates
nessa classe, tenho quem foi o responsável pelo resgate, o responsável deste responsável, e qual status do resgate (ex: 1 - pendente; 2 - concluido).
Se eu quisesse fazer uma busca para agrupar todos os responsáveis em uma posição, e nas outras, a contagem da incidência dos pendentes e dos concluídos, como eu poderia fazer?
Pq atualmente eu faço assim:
public List<Resgates> contaPendencias() {
Criteria criterio = getSession().createCriteria(Resgates.class)
.add(Restrictions.ne("statusAtual", Long.parseLong("99"))) //concluídos
.add(Restrictions.ne("statusAtual", Long.parseLong("98"))) //cancelados
.add(Restrictions.ne("statusAtual", Long.parseLong("97"))) //iniciado
.add(Restrictions.ne("statusAtual", Long.parseLong("96"))) //devolvido
.add(Restrictions.ne("statusAtual", Long.parseLong("100"))) //contabilizar
.add(Restrictions.ne("statusAtual", Long.parseLong("101"))); //exportado
ProjectionList list = Projections.projectionList();
list.add(Projections.groupProperty("ujaResp"), "nomeDaUja");
list.add(Projections.count("ujaResp"), "quantidadePendencias");
criterio.setProjection(list);
criterio.setResultTransformer(new AliasToBeanConstructorResultTransformer(ContaPendencias.class.getConstructors()[0]));
return criterio.list();
}
e a classe ContaPendencias:
[code] private final Object nomeDaUja; //na verdade vem o prefixo
private final Object quantidadePendencias;
public ContaPendencias(Object nomeDaUja, Object quantidadePendencias) {
this.nomeDaUja = nomeDaUja;
this.quantidadePendencias = quantidadePendencias;
}
public Object getNomeDaUja() {
return nomeDaUja;
}
public Object getQuantidadePendencias() {
return quantidadePendencias;
} [/code]
Ai me vem um arraylist de objetos preenchidos em [0] e [1] mas não consigo separar por cada tipo de status em seu respectivo responsável