Commit b33ed1cba08647ec868771cf52b13ee0c960e039
1 parent
dfd0ecd5
Exists in
master
Consultas para o painel de acessibilidade.
Showing
3 changed files
with
173 additions
and
2 deletions
Show diff stats
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/ErrosMaisComunsDAO.java
0 → 100644
... | ... | @@ -0,0 +1,108 @@ |
1 | +package br.com.eselo.dao; | |
2 | + | |
3 | +import java.util.ArrayList; | |
4 | +import java.util.List; | |
5 | + | |
6 | +import org.hibernate.SQLQuery; | |
7 | +import org.hibernate.Session; | |
8 | + | |
9 | +import br.com.caelum.vraptor.ioc.Component; | |
10 | +import br.com.eselo.model.ErrosMaisComuns; | |
11 | + | |
12 | +@Component | |
13 | +public class ErrosMaisComunsDAO extends GenericDAO<ErrosMaisComuns>{ | |
14 | + | |
15 | + public ErrosMaisComunsDAO(Session _session) { | |
16 | + super(_session); | |
17 | + } | |
18 | + | |
19 | + public List<ErrosMaisComuns> errosMaisComuns() { | |
20 | + List<ErrosMaisComuns> lsErrosMaisComuns = new ArrayList<ErrosMaisComuns>(); | |
21 | + StringBuffer query = new StringBuffer(); | |
22 | + | |
23 | + | |
24 | + query.append(" select sum(qtd_erros) qtd_erros, 0 criterio, 0 peso, 'Total' descricao from "); | |
25 | + query.append(" (select sum(a.nu_erros) qtd_erros, a.id_criterio criterio, b.vl_peso peso, b.ds_descricao descricao "); | |
26 | + query.append(" from sel_resultado_criterio a, sel_criterio b, sel_resultado_recomendacao c, sel_avaliacao d "); | |
27 | + query.append(" where a.id_criterio = b.id_criterio "); | |
28 | + query.append(" and d.id_avaliacao = c.id_avaliacao "); | |
29 | + query.append(" and c.id_resultado_recomendacao = a.id_resultado_rescomendacao "); | |
30 | + query.append(" and b.lo_erro = true "); | |
31 | + query.append(" and b.lo_verificacao_automatica = true "); | |
32 | + query.append(" and d.id_avaliacao in ( select aval1.id_avaliacao from sel_avaliacao aval1 "); | |
33 | + query.append(" where aval1.id_avaliacao = (select max(aval2.id_avaliacao) from sel_avaliacao aval2 where aval2.id_url = aval1.id_url)) "); | |
34 | + query.append(" group by a.id_criterio, b.vl_peso, b.ds_descricao "); | |
35 | + query.append(" having sum(a.nu_erros) > 0 "); | |
36 | + query.append(" order by sum(a.nu_erros) desc, b.vl_peso desc) k "); | |
37 | + query.append(" union all "); | |
38 | + query.append(" select sum(a.nu_erros) qtd_erros, a.id_criterio criterio, b.vl_peso peso, b.ds_descricao descricao "); | |
39 | + query.append(" from sel_resultado_criterio a, sel_criterio b, sel_resultado_recomendacao c, sel_avaliacao d "); | |
40 | + query.append(" where a.id_criterio = b.id_criterio "); | |
41 | + query.append(" and d.id_avaliacao = c.id_avaliacao "); | |
42 | + query.append(" and c.id_resultado_recomendacao = a.id_resultado_rescomendacao "); | |
43 | + query.append(" and b.lo_erro = true "); | |
44 | + query.append(" and b.lo_verificacao_automatica = true "); | |
45 | + query.append(" and d.id_avaliacao in ( select aval1.id_avaliacao from sel_avaliacao aval1 "); | |
46 | + query.append(" where aval1.id_avaliacao = (select max(aval2.id_avaliacao) from sel_avaliacao aval2 where aval2.id_url = aval1.id_url)) "); | |
47 | + query.append(" group by a.id_criterio, b.vl_peso, b.ds_descricao "); | |
48 | + query.append(" having sum(a.nu_erros) > 0 "); | |
49 | + query.append(" order by qtd_erros desc, peso desc "); | |
50 | + query.append(" limit 11"); | |
51 | + | |
52 | + | |
53 | + SQLQuery sqlQuery = session.createSQLQuery(query.toString()); | |
54 | + sqlQuery.addEntity(ErrosMaisComuns.class); | |
55 | + List list = sqlQuery.list(); | |
56 | + | |
57 | + for (Object object : list) { | |
58 | + lsErrosMaisComuns.add((ErrosMaisComuns)object); | |
59 | + } | |
60 | + | |
61 | + return lsErrosMaisComuns; | |
62 | + } | |
63 | + | |
64 | + public List<ErrosMaisComuns> OutrosErrosMaisComuns() { | |
65 | + List<ErrosMaisComuns> lsErrosMaisComuns = new ArrayList<ErrosMaisComuns>(); | |
66 | + StringBuffer query = new StringBuffer(); | |
67 | + | |
68 | + | |
69 | + query.append(" select sum(qtd_erros) qtd_erros, 0 criterio, 0 peso, 'Total' descricao from "); | |
70 | + query.append(" (select sum(a.nu_erros) qtd_erros, a.id_criterio criterio, b.vl_peso peso, b.ds_descricao descricao "); | |
71 | + query.append(" from sel_resultado_criterio a, sel_criterio b, sel_resultado_recomendacao c, sel_avaliacao d "); | |
72 | + query.append(" where a.id_criterio = b.id_criterio "); | |
73 | + query.append(" and d.id_avaliacao = c.id_avaliacao "); | |
74 | + query.append(" and c.id_resultado_recomendacao = a.id_resultado_rescomendacao "); | |
75 | + query.append(" and b.lo_erro = true "); | |
76 | + query.append(" and b.lo_verificacao_automatica = true "); | |
77 | + query.append(" and d.id_avaliacao in ( select aval1.id_avaliacao from sel_avaliacao aval1 "); | |
78 | + query.append(" where aval1.id_avaliacao = (select max(aval2.id_avaliacao) from sel_avaliacao aval2 where aval2.id_url = aval1.id_url)) "); | |
79 | + query.append(" group by a.id_criterio, b.vl_peso, b.ds_descricao "); | |
80 | + query.append(" having sum(a.nu_erros) > 0 "); | |
81 | + query.append(" order by sum(a.nu_erros) desc, b.vl_peso desc) k "); | |
82 | + query.append(" union all "); | |
83 | + query.append(" select sum(a.nu_erros) qtd_erros, a.id_criterio criterio, b.vl_peso peso, b.ds_descricao descricao "); | |
84 | + query.append(" from sel_resultado_criterio a, sel_criterio b, sel_resultado_recomendacao c, sel_avaliacao d "); | |
85 | + query.append(" where a.id_criterio = b.id_criterio "); | |
86 | + query.append(" and d.id_avaliacao = c.id_avaliacao "); | |
87 | + query.append(" and c.id_resultado_recomendacao = a.id_resultado_rescomendacao "); | |
88 | + query.append(" and b.lo_erro = true "); | |
89 | + query.append(" and b.lo_verificacao_automatica = true "); | |
90 | + query.append(" and d.id_avaliacao in ( select aval1.id_avaliacao from sel_avaliacao aval1 "); | |
91 | + query.append(" where aval1.id_avaliacao = (select max(aval2.id_avaliacao) from sel_avaliacao aval2 where aval2.id_url = aval1.id_url)) "); | |
92 | + query.append(" group by a.id_criterio, b.vl_peso, b.ds_descricao "); | |
93 | + query.append(" having sum(a.nu_erros) > 0 "); | |
94 | + query.append(" order by qtd_erros desc, peso desc "); | |
95 | + | |
96 | + | |
97 | + SQLQuery sqlQuery = session.createSQLQuery(query.toString()); | |
98 | + sqlQuery.addEntity(ErrosMaisComuns.class); | |
99 | + List list = sqlQuery.list(); | |
100 | + | |
101 | + for (Object object : list) { | |
102 | + lsErrosMaisComuns.add((ErrosMaisComuns)object); | |
103 | + } | |
104 | + | |
105 | + return lsErrosMaisComuns; | |
106 | + | |
107 | + } | |
108 | +} | ... | ... |
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/GenericDAO.java
... | ... | @@ -72,10 +72,11 @@ public abstract class GenericDAO<T> { |
72 | 72 | |
73 | 73 | public void save(T entity) throws HibernateException { |
74 | 74 | try { |
75 | + System.out.println("iniciar salvar"); | |
75 | 76 | this.session.save(entity); |
76 | 77 | this.session.flush(); |
77 | - | |
78 | 78 | } catch (HibernateException e) { |
79 | + System.out.println("erro salvar"); | |
79 | 80 | logger.debug(e.getMessage()); |
80 | 81 | System.out.println(e.getMessage()); |
81 | 82 | throw e; |
... | ... | @@ -87,7 +88,7 @@ public abstract class GenericDAO<T> { |
87 | 88 | this.session.update(entity); |
88 | 89 | this.session.flush(); |
89 | 90 | } catch (HibernateException e) { |
90 | - System.out.println("erro ao atualizar"); | |
91 | + | |
91 | 92 | System.out.println(e.getMessage()); |
92 | 93 | logger.debug(e.getMessage()); |
93 | 94 | throw e; | ... | ... |
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/MediaAvaliacaoDAO.java
0 → 100644
... | ... | @@ -0,0 +1,62 @@ |
1 | +package br.com.eselo.dao; | |
2 | + | |
3 | +import java.util.ArrayList; | |
4 | +import java.util.List; | |
5 | + | |
6 | +import org.hibernate.SQLQuery; | |
7 | +import org.hibernate.Session; | |
8 | + | |
9 | +import br.com.caelum.vraptor.ioc.Component; | |
10 | +import br.com.eselo.model.ErrosMaisComuns; | |
11 | +import br.com.eselo.model.MediaAvaliacao; | |
12 | +import br.com.eselo.model.UltimaAvaliacao; | |
13 | + | |
14 | +@Component | |
15 | +public class MediaAvaliacaoDAO extends GenericDAO<MediaAvaliacao>{ | |
16 | + | |
17 | + public MediaAvaliacaoDAO(Session _session) { | |
18 | + super(_session); | |
19 | + } | |
20 | + | |
21 | + | |
22 | + public List<MediaAvaliacao> mediaAvaliacao(String tipo, String id) { | |
23 | + List<MediaAvaliacao> lsMediaAvaliacao = new ArrayList<MediaAvaliacao>(); | |
24 | + StringBuffer query = new StringBuffer(); | |
25 | + | |
26 | + | |
27 | + query.append(" SELECT * FROM RetornaMediaGrupoElmAcessibilidade('"+ tipo +"', "+ id +") AS (id bigint, nome varchar, total bigint, media numeric); "); | |
28 | + | |
29 | + | |
30 | + SQLQuery sqlQuery = session.createSQLQuery(query.toString()); | |
31 | + sqlQuery.addEntity(MediaAvaliacao.class); | |
32 | + List list = sqlQuery.list(); | |
33 | + | |
34 | + | |
35 | + for (Object object : list) { | |
36 | + lsMediaAvaliacao.add((MediaAvaliacao)object); | |
37 | + } | |
38 | + | |
39 | + return lsMediaAvaliacao; | |
40 | + | |
41 | + } | |
42 | + | |
43 | + | |
44 | + public UltimaAvaliacao ultimaAvaliacao() { | |
45 | + UltimaAvaliacao ultimaAvaliacao = new UltimaAvaliacao(); | |
46 | + StringBuffer query = new StringBuffer(); | |
47 | + | |
48 | + | |
49 | + //query.append(" SELECT to_char(max(data_media), 'DD/MM/YYYY') AS data_ultima_avaliacao FROM sel_media_avaliacao_sitio; "); | |
50 | + query.append(" SELECT max(data_media) AS data_ultima_avaliacao FROM sel_media_avaliacao_sitio; "); | |
51 | + | |
52 | + SQLQuery sqlQuery = session.createSQLQuery(query.toString()); | |
53 | + sqlQuery.addEntity(UltimaAvaliacao.class); | |
54 | + ultimaAvaliacao = (UltimaAvaliacao) sqlQuery.uniqueResult(); | |
55 | + | |
56 | + | |
57 | + | |
58 | + return ultimaAvaliacao; | |
59 | + | |
60 | + } | |
61 | + | |
62 | +} | ... | ... |