Commit 20b39397427d9caa6b53ef0337fe80afa925ae5f

Authored by vitor.pacheco
1 parent 323ae7ef
Exists in master

Codificação #2723: Geração da Imagem do Selo

git-svn-id: https://svn.bento.ifrs.edu.br/default/ASES/e-selo@9595 c2178572-b5ca-4887-91d2-9e3a90c7d55b
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/AvaliacaoController.java
... ... @@ -88,22 +88,22 @@ public class AvaliacaoController {
88 88 List<Recomendacao> recomendacoesValidas;
89 89 List<RecomendacaoAvaliada> recomendacoesAvaliadas;
90 90 double somaPesosRecomendacoes = 0.0;
91   -
92   - /*Nota da Avaliação = (somatório da Nota Teste / somatório do peso)
  91 +
  92 + /*Nota da Avaliação = (somatório da Nota Teste / somatório do peso)
93 93 Nota da Avaliação = 2,025 + 2,3 / 3 + 4
94 94 Nota da Avaliação = 4,325 / 7
95 95 Nota da Avaliação = 0,61785*/
96 96 double somatorioNotaTeste=0.0;
97 97 double somatorioPesosCriterios=0.0;
98   -
  98 +
99 99 /*Nota da Recomendação = Nota da Avaliação * Peso da Recomendação
100 100 Nota da Recomendação = 0,61785 * 3
101 101 Nota da Recomendação = 1,8535 */
102 102 double somatorioNotaRecomendacoes=0.0;
103   -
  103 +
104 104 //obter os resultados
105 105 recomendacoesAvaliadas = relatorioAvaliacao.getRecomendacoes();
106   -
  106 +
107 107 ParametroAvaliacao parametroAvaliacao = paramDao.getLastParametrosAvaliacao();
108 108  
109 109 //obter as diretrizes e níveis de conformidade
... ... @@ -148,9 +148,9 @@ public class AvaliacaoController {
148 148 double conformidadeAcessibilidade = 100*(somatorioNotaRecomendacoes/somaPesosRecomendacoes);
149 149  
150 150 conformidadeAcessibilidade = (double) new Double(conformidadeAcessibilidade * 100).intValue()/100;
151   -
  151 +
152 152 gerarSelo(relatorioAvaliacao.getUrl(), conformidadeAcessibilidade);
153   -
  153 +
154 154 return conformidadeAcessibilidade;
155 155 }
156 156  
... ... @@ -173,10 +173,9 @@ public class AvaliacaoController {
173 173 if (url == null) {
174 174 url = new Url();
175 175 url.setUrl(relatorioAvaliacao.getUrl());
176   - url.setUsuario(daoUsuario.getById((long) 1));
177 176 daoUrl.save(url);
178 177 }
179   -
  178 +
180 179 resultadoAvaliacao.setPath(fullContextPath + "/static/img/" + Util.toSlug(url.getUrl()) + "/selo.png");
181 180  
182 181 resultadoAvaliacao.setUrl(url.getUrl());
... ... @@ -201,7 +200,7 @@ public class AvaliacaoController {
201 200 result.use(Results.json()).withoutRoot().from(resultadoAvaliacao)
202 201 .serialize();
203 202 }
204   -
  203 +
205 204 public void gerarSelo(String url, double nota) {
206 205 BufferedImage img = null;
207 206 SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
... ... @@ -209,7 +208,7 @@ public class AvaliacaoController {
209 208 String caminhoSelo = request.getRealPath("/static/img");
210 209 Date dataAtual = new Date(System.currentTimeMillis());
211 210 String dataFormatada = sdf.format(dataAtual);
212   -
  211 +
213 212 String tipoSelo = null;
214 213 if (nota >= 0 && nota < 60) {
215 214 tipoSelo = "bronze";
... ... @@ -230,13 +229,13 @@ public class AvaliacaoController {
230 229 g.setColor(new Color(153, 204, 0));
231 230 g.setFont(new Font("Arial", Font.PLAIN | Font.LAYOUT_LEFT_TO_RIGHT, 12));
232 231 g.drawString("Auditado em: " + dataFormatada + " (" + tipoSelo + ")", 8, 120);
233   -
  232 +
234 233 File pastaURL = new File(caminhoSelo + File.separator + Util.toSlug(url));
235   -
  234 +
236 235 if (!pastaURL.exists()) {
237 236 pastaURL.mkdirs();
238 237 }
239   -
  238 +
240 239 try {
241 240 ImageIO.write(img, "PNG", new File(caminhoSelo + File.separator + Util.toSlug(url) + File.separator
242 241 + "selo.png"));
... ... @@ -244,5 +243,5 @@ public class AvaliacaoController {
244 243 ex.printStackTrace();
245 244 }
246 245 }
247   -
  246 +
248 247 }
... ...