From 6a16ae8e201080307333ff73fa0d83286067e193 Mon Sep 17 00:00:00 2001 From: magno.oliveira Date: Fri, 26 Sep 2014 18:47:22 +0000 Subject: [PATCH] Ajuste parametros de calculo --- Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/CopiadorParametroCalculo.java | 45 +++++++++++++++++++++++++++++++++++++++++++++ Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/RecomendacaoController.java | 5 ++--- 2 files changed, 47 insertions(+), 3 deletions(-) diff --git a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/CopiadorParametroCalculo.java b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/CopiadorParametroCalculo.java index 07f5be6..48762c9 100644 --- a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/CopiadorParametroCalculo.java +++ b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/CopiadorParametroCalculo.java @@ -82,4 +82,49 @@ public class CopiadorParametroCalculo { parametroCalculoDAO.save(novoParametroAvaliacao); } + public ParametroCalculo copiarParametroCalculo(ParametroCalculo parametroCalculo){ + ParametroCalculo novoParametroAvaliacao = new ParametroCalculo(); + + novoParametroAvaliacao.setDescricao(parametroCalculo.getDescricao()); + novoParametroAvaliacao.setTsInicio(new Date()); + + + for(Recomendacao recomendacao : parametroCalculo.getRecomendacoes()){ + + Recomendacao novaRecomendacao = new Recomendacao(); + novaRecomendacao.setParametroCalculo(novoParametroAvaliacao); + novaRecomendacao.setNumeroRecomendacao(recomendacao.getNumeroRecomendacao()); + novaRecomendacao.setDescricao(recomendacao.getDescricao()); + novaRecomendacao.setPeso(recomendacao.getPeso()); + + for(Criterio criterio: recomendacao.getCriterios()){ + + Criterio novoCriterio = new Criterio(); + novoCriterio.setRecomendacao(novaRecomendacao); + novoCriterio.setNumeroCriterio(criterio.getNumeroCriterio()); + novoCriterio.setDescricao(criterio.getDescricao()); + novoCriterio.setPeso(criterio.getPeso()); + novoCriterio.setTipoTeste(criterio.getTipoTeste()); + + for(Faixa faixa: criterio.getFaixas()){ + Faixa novaFaixa = new Faixa(); + novaFaixa.setCriterio(novoCriterio); + novaFaixa.setDescricao(faixa.getDescricao()); + novaFaixa.setFaixa(faixa.getFaixa()); + novaFaixa.setFaixaInicio(faixa.getFaixaInicio()); + novaFaixa.setFaixaFim(faixa.getFaixaFim()); + novaFaixa.setPercentualConformidade(faixa.getPercentualConformidade()); + + novoCriterio.addFaixa(novaFaixa); + } + + novaRecomendacao.addCriterio(novoCriterio); + } + + novoParametroAvaliacao.addRecomendacao(novaRecomendacao); + } + + return novoParametroAvaliacao; + } + } diff --git a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/RecomendacaoController.java b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/RecomendacaoController.java index c930967..1b2c6c1 100644 --- a/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/RecomendacaoController.java +++ b/Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/RecomendacaoController.java @@ -113,8 +113,7 @@ public class RecomendacaoController { } private void criarNovoParametroAvaliacao(Recomendacao recomendacao, int tipo) { - ParametroCalculo ultimoParametroAvaliacao = paDAO - .getLastParametrosCalculo(); + ParametroCalculo ultimoParametroAvaliacao = new CopiadorParametroCalculo().copiarParametroCalculo(paDAO.getLastParametrosCalculo()); boolean ok = false; switch (tipo) { @@ -125,7 +124,7 @@ public class RecomendacaoController { case ParametroCalculoController.MODO_EDIT: for (Recomendacao r : ultimoParametroAvaliacao.getRecomendacoes()) { - if (r.getId().longValue() == recomendacao.getId().longValue()) { + if (r.getNumeroRecomendacao().longValue() == recomendacao.getNumeroRecomendacao().longValue()) { r.setParametroCalculo(recomendacao.getParametroCalculo()); r.setNumeroRecomendacao(recomendacao -- libgit2 0.21.2