Commit 5cb629968a8e1994ec69635d8450423b60c4c9e1

Authored by magno.oliveira
1 parent c54a19f5
Exists in master

git-svn-id: https://svn.bento.ifrs.edu.br/default/ASES/e-selo@9657 c2178572-b5ca…

…-4887-91d2-9e3a90c7d55b
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/CopiadorParametroAvaliacao.java 0 → 100644
... ... @@ -0,0 +1,73 @@
  1 +package br.com.eselo.component;
  2 +
  3 +import java.util.Date;
  4 +
  5 +import org.hibernate.Session;
  6 +
  7 +import br.com.eselo.dao.ParametroAvaliacaoDAO;
  8 +import br.com.eselo.dao.UsuarioDAO;
  9 +import br.com.eselo.model.Criterio;
  10 +import br.com.eselo.model.Faixa;
  11 +import br.com.eselo.model.ParametroAvaliacao;
  12 +import br.com.eselo.model.Recomendacao;
  13 +import br.com.eselo.model.Usuario;
  14 +
  15 +public class CopiadorParametroAvaliacao {
  16 +
  17 + public void criarNovoParametroAvaliacao(ParametroAvaliacao ultimoParametroAvaliacao, UsuarioWeb usuarioWeb, Session session) {
  18 +
  19 + ParametroAvaliacaoDAO parametroAvaliacaoDAO = new ParametroAvaliacaoDAO(session);
  20 +
  21 + UsuarioDAO usuarioDAO = new UsuarioDAO(session);
  22 + Usuario usuario = usuarioDAO.load(usuarioWeb.getId());
  23 +
  24 + // Cria o parametro
  25 + ParametroAvaliacao novoParametroAvaliacao = new ParametroAvaliacao();
  26 + novoParametroAvaliacao.setUsuario(usuario);
  27 + novoParametroAvaliacao.setTsInicio(new Date());
  28 + novoParametroAvaliacao.setTsFim(null);
  29 +
  30 + for(Recomendacao recomendacao:ultimoParametroAvaliacao.getRecomendacoes()){
  31 +
  32 + Recomendacao novaRecomendacao = new Recomendacao();
  33 + novaRecomendacao.setParametroAvaliacao(novoParametroAvaliacao);
  34 + novaRecomendacao.setNumeroRecomendacao(recomendacao.getNumeroRecomendacao());
  35 + novaRecomendacao.setDescricao(recomendacao.getDescricao());
  36 + novaRecomendacao.setPeso(recomendacao.getPeso());
  37 + novaRecomendacao.setTipoRecomendacao(recomendacao.getTipoRecomendacao());
  38 +
  39 + for(Criterio criterio: recomendacao.getCriterios()){
  40 +
  41 + Criterio novoCriterio = new Criterio();
  42 + novoCriterio.setRecomendacao(novaRecomendacao);
  43 + novoCriterio.setNumeroCriterio(criterio.getNumeroCriterio());
  44 + novoCriterio.setDescricao(criterio.getDescricao());
  45 + novoCriterio.setPeso(criterio.getPeso());
  46 + novoCriterio.setTipoTeste(criterio.getTipoTeste());
  47 +
  48 + for(Faixa faixa: criterio.getFaixas()){
  49 + Faixa novaFaixa = new Faixa();
  50 + novaFaixa.setCriterio(novoCriterio);
  51 + novaFaixa.setDescricao(faixa.getDescricao());
  52 + novaFaixa.setFaixa(faixa.getFaixa());
  53 + novaFaixa.setFaixaInicio(faixa.getFaixaInicio());
  54 + novaFaixa.setFaixaFim(faixa.getFaixaFim());
  55 + novaFaixa.setPercentualConformidade(faixa.getPercentualConformidade());
  56 +
  57 + novoCriterio.addFaixa(novaFaixa);
  58 + }
  59 +
  60 + novaRecomendacao.addCriterio(novoCriterio);
  61 + }
  62 +
  63 + novoParametroAvaliacao.addRecomendacao(novaRecomendacao);
  64 + }
  65 +
  66 + // Salva novo e atualiza o ultimo
  67 + parametroAvaliacaoDAO.save(novoParametroAvaliacao);
  68 + ultimoParametroAvaliacao = parametroAvaliacaoDAO.load(ultimoParametroAvaliacao.getId());
  69 + ultimoParametroAvaliacao.setTsFim(novoParametroAvaliacao.getTsInicio());
  70 + parametroAvaliacaoDAO.update(ultimoParametroAvaliacao);
  71 + }
  72 +
  73 +}
... ...