Commit b33ed1cba08647ec868771cf52b13ee0c960e039

Authored by 96409975520
1 parent dfd0ecd5
Exists in master

Consultas para o painel de acessibilidade.

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&lt;T&gt; {
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&lt;T&gt; {
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 +}
... ...