Boa tarde,
Tenho uma tabela de levantamentos com uma coluna chamada ujaResp.
Eu preciso saber quantos registros tem para cada UjaResp.
Ai fiz uma consulta assim:
public List<Levantamentos> listaLevantamentos() {
Criteria criterio = getSession().createCriteria(Levantamentos.class);
ProjectionList list = Projections.projectionList();
list.add(Projections.groupProperty("ujaResp"), "nomeDaUja");
list.add(Projections.count("ujaResp"), "quantidadePendencias");
criterio.setProjection(list);
return criterio.list();
}
Obviamente isso deu problema, vinha um arrayList que na posição 1 tinha o nome de cada UjaResp e na posição 2 a quantidade…
ai lendo a respeito, eu fiz a seguinte classe:
[code]public class ContaPendenciasPorUja {
private String nomeDaUja;
private Integer quantidadePendencias;
public ContaPendenciasPorUja(String nomeDaUja, Integer quantidadePendencias) {
this.nomeDaUja = nomeDaUja;
this.quantidadePendencias = quantidadePendencias;
}
public String getNomeDaUja() {
return nomeDaUja;
}
public void setNomeDaUja(String nomeDaUja) {
this.nomeDaUja = nomeDaUja;
}
public Integer getQuantidadePendencias() {
return quantidadePendencias;
}
public void setQuantidadePendencias(Integer quantidadePendencias) {
this.quantidadePendencias = quantidadePendencias;
}[/code]
e a consulta ficou assim:
ProjectionList list = Projections.projectionList();
list.add(Projections.groupProperty("ujaResp"), "nomeDaUja");
list.add(Projections.count("ujaResp"), "quantidadePendencias");
criterio.setProjection(list);
criterio.setResultTransformer(Transformers.aliasToBean(ContaPendenciasPorUja.class));
Agora a parte que me perdi: Eu não estou sabendo como chamar essa consulta…
pq se eu uso por exemplo:
Object obj = levantamentosDao.contaPendenciasPorUja();
com a consulta:
public Object contaPendenciasPorUja() {
Criteria criterio = getSession().createCriteria(Levantamentos.class);
ProjectionList list = Projections.projectionList();
list.add(Projections.groupProperty("ujaResp"), "nomeDaUja");
list.add(Projections.count("ujaResp"), "quantidadePendencias");
criterio.setProjection(list);
criterio.setResultTransformer(Transformers.aliasToBean(ContaPendenciasPorUja.class));
return(ContaPendenciasPorUja) criterio.uniqueResult();
}
da erro.