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 @@ | @@ -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,10 +72,11 @@ public abstract class GenericDAO<T> { | ||
72 | 72 | ||
73 | public void save(T entity) throws HibernateException { | 73 | public void save(T entity) throws HibernateException { |
74 | try { | 74 | try { |
75 | + System.out.println("iniciar salvar"); | ||
75 | this.session.save(entity); | 76 | this.session.save(entity); |
76 | this.session.flush(); | 77 | this.session.flush(); |
77 | - | ||
78 | } catch (HibernateException e) { | 78 | } catch (HibernateException e) { |
79 | + System.out.println("erro salvar"); | ||
79 | logger.debug(e.getMessage()); | 80 | logger.debug(e.getMessage()); |
80 | System.out.println(e.getMessage()); | 81 | System.out.println(e.getMessage()); |
81 | throw e; | 82 | throw e; |
@@ -87,7 +88,7 @@ public abstract class GenericDAO<T> { | @@ -87,7 +88,7 @@ public abstract class GenericDAO<T> { | ||
87 | this.session.update(entity); | 88 | this.session.update(entity); |
88 | this.session.flush(); | 89 | this.session.flush(); |
89 | } catch (HibernateException e) { | 90 | } catch (HibernateException e) { |
90 | - System.out.println("erro ao atualizar"); | 91 | + |
91 | System.out.println(e.getMessage()); | 92 | System.out.println(e.getMessage()); |
92 | logger.debug(e.getMessage()); | 93 | logger.debug(e.getMessage()); |
93 | throw e; | 94 | throw e; |
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/MediaAvaliacaoDAO.java
0 → 100644
@@ -0,0 +1,62 @@ | @@ -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 | +} |