Commit b94bcdd418e29e766bf65fbf43ea7defd69d5948

Authored by magno.oliveira
1 parent cb346337
Exists in master

Ajustes no parametro de calculo

git-svn-id: https://svn.bento.ifrs.edu.br/default/ASES/e-selo@9851 c2178572-b5ca-4887-91d2-9e3a90c7d55b
Desenvolvimento/Codificacao/e-Selo/.classpath
1 -<?xml version="1.0" encoding="UTF-8"?>  
2 -<classpath>  
3 - <classpathentry kind="src" output="target/classes" path="src/main/java">  
4 - <attributes>  
5 - <attribute name="optional" value="true"/>  
6 - <attribute name="maven.pomderived" value="true"/>  
7 - </attributes>  
8 - </classpathentry>  
9 - <classpathentry including="**/*.java" kind="src" path="src/main/resources"/>  
10 - <classpathentry kind="src" output="target/test-classes" path="src/test/java">  
11 - <attributes>  
12 - <attribute name="optional" value="true"/>  
13 - <attribute name="maven.pomderived" value="true"/>  
14 - </attributes>  
15 - </classpathentry>  
16 - <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">  
17 - <attributes>  
18 - <attribute name="maven.pomderived" value="true"/>  
19 - <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>  
20 - </attributes>  
21 - </classpathentry>  
22 - <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v7.0"/>  
23 - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7">  
24 - <attributes>  
25 - <attribute name="maven.pomderived" value="true"/>  
26 - </attributes>  
27 - </classpathentry>  
28 - <classpathentry kind="output" path="target/classes"/>  
29 -</classpath> 1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<classpath>
  3 + <classpathentry kind="src" output="target/classes" path="src/main/java">
  4 + <attributes>
  5 + <attribute name="optional" value="true"/>
  6 + <attribute name="maven.pomderived" value="true"/>
  7 + </attributes>
  8 + </classpathentry>
  9 + <classpathentry including="**/*.java" kind="src" path="src/main/resources"/>
  10 + <classpathentry kind="src" output="target/test-classes" path="src/test/java">
  11 + <attributes>
  12 + <attribute name="optional" value="true"/>
  13 + <attribute name="maven.pomderived" value="true"/>
  14 + </attributes>
  15 + </classpathentry>
  16 + <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
  17 + <attributes>
  18 + <attribute name="maven.pomderived" value="true"/>
  19 + <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
  20 + </attributes>
  21 + </classpathentry>
  22 + <classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v7.0"/>
  23 + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
  24 + <classpathentry kind="output" path="target/classes"/>
  25 +</classpath>
Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/criterios/form.jsp
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 5
6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp"> 6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp">
7 <tiles:putAttribute name="body"> 7 <tiles:putAttribute name="body">
8 - <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculo.id}"/>"><strong><span class="glyphicon glyphicon-check"></span> Parametros de Cálculo</strong></a> 8 + <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculo.id}"/>"><strong><span class="glyphicon glyphicon-check"></span>Cadastro de Parâmetros de Cálculo</strong></a>
9 9
10 <hr /> 10 <hr />
11 11
Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/faixa/add.jsp
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 5
6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp"> 6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp">
7 <tiles:putAttribute name="body"> 7 <tiles:putAttribute name="body">
8 - <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculo.id}"/>"><strong><span class="glyphicon glyphicon-check"></span> Parametros de Cálculo</strong></a> 8 + <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculo.id}"/>"><strong><span class="glyphicon glyphicon-check"></span> Cadastro de Parâmetros de Cálculo</strong></a>
9 9
10 <hr /> 10 <hr />
11 11
Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/faixa/form.jsp
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 5
6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp"> 6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp">
7 <tiles:putAttribute name="body"> 7 <tiles:putAttribute name="body">
8 - <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculo.id}"/>"><strong><span class="glyphicon glyphicon-check"></span> Parametros de Cálculo</strong></a> 8 + <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculo.id}"/>"><strong><span class="glyphicon glyphicon-check"></span> Cadastro de Parâmetros de Cálculo</strong></a>
9 9
10 <hr /> 10 <hr />
11 11
Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/parametroCalculo/lista.jsp
@@ -5,8 +5,13 @@ @@ -5,8 +5,13 @@
5 5
6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp"> 6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp">
7 <tiles:putAttribute name="body"> 7 <tiles:putAttribute name="body">
8 - <a href="<c:url value="/parametrosCalculo" />"><strong><span class="glyphicon glyphicon-check"></span> Parametros de Cálculo</strong></a>  
9 - 8 + <a href="/eselo/painel"><strong><span class="glyphicon glyphicon-dashboard"></span> Meu Painel</strong></a>
  9 +
  10 + <br/>
  11 + <hr />
  12 +
  13 + <h3>Parâmetros de Cálculo</h3>
  14 + <br/><br/>
10 <c:choose> 15 <c:choose>
11 <c:when test="${ultimoParametro != null}"> 16 <c:when test="${ultimoParametro != null}">
12 <a href="<c:url value="/parametrosCalculo/atualizar/${ultimoParametro.id}" />" class="btn btn-default btn-confirm-modal pull-right"><span class="glyphicon glyphicon-plus"></span> Incluir Parametro de Cálculo</a> 17 <a href="<c:url value="/parametrosCalculo/atualizar/${ultimoParametro.id}" />" class="btn btn-default btn-confirm-modal pull-right"><span class="glyphicon glyphicon-plus"></span> Incluir Parametro de Cálculo</a>
Desenvolvimento/Codificacao/e-Selo/WebContent/WEB-INF/jsp/recomendacao/form.jsp
@@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
5 5
6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp"> 6 <tiles:insertTemplate template="/WEB-INF/jsp/template/template.jsp">
7 <tiles:putAttribute name="body"> 7 <tiles:putAttribute name="body">
8 - <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculoId}"/>"><strong><span class="glyphicon glyphicon-check"></span> Parametros de Cálculo</strong></a> 8 + <a href="<c:url value="/parametrosCalculo/atualizar/${parametroCalculoId}"/>"><strong><span class="glyphicon glyphicon-check"></span>Cadastro de Parâmetros de Cálculo</strong></a>
9 9
10 <hr /> 10 <hr />
11 11
@@ -75,7 +75,7 @@ @@ -75,7 +75,7 @@
75 </tr> 75 </tr>
76 </thead> 76 </thead>
77 <tbody> 77 <tbody>
78 - <c:forEach items="${recomendacao.criterios}" var="criterio"> 78 + <c:forEach items="${criterioList}" var="criterio">
79 <tr> 79 <tr>
80 <td>${criterio.numeroCriterio}</td> 80 <td>${criterio.numeroCriterio}</td>
81 <td>${criterio.peso}</td> 81 <td>${criterio.peso}</td>
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/component/messages.properties
@@ -7,6 +7,7 @@ criterio.validacao.descricao=É obrigatório informar a descrição do criteiro. @@ -7,6 +7,7 @@ criterio.validacao.descricao=É obrigatório informar a descrição do criteiro.
7 criterio.validacao.tipo_teste=É obrigatório informar o Tipo de teste. 7 criterio.validacao.tipo_teste=É obrigatório informar o Tipo de teste.
8 faixas.mensagem.salva=Faixa de conformidade salva com sucesso. 8 faixas.mensagem.salva=Faixa de conformidade salva com sucesso.
9 faixas.mensagem.alterada=Faixa de conformidade alterada com sucesso. 9 faixas.mensagem.alterada=Faixa de conformidade alterada com sucesso.
  10 +faixas.mensagem.excluida=Faixa excluída com suceso.
10 faixas.validacao.diretriz=A Diretriz é obrigatória. 11 faixas.validacao.diretriz=A Diretriz é obrigatória.
11 faixas.validacao.descricao=A descrição é obrigatória. 12 faixas.validacao.descricao=A descrição é obrigatória.
12 faixas.validacao.faixa=O número da Faixa é obrigatório. 13 faixas.validacao.faixa=O número da Faixa é obrigatório.
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/CriteriosController.java
@@ -85,8 +85,7 @@ public class CriteriosController { @@ -85,8 +85,7 @@ public class CriteriosController {
85 validarCriterio(criterio); 85 validarCriterio(criterio);
86 86
87 result.include("recomendacaoId", criterio.getRecomendacao().getId()); 87 result.include("recomendacaoId", criterio.getRecomendacao().getId());
88 - result.include("parametroCalculo", criterio.getRecomendacao()  
89 - .getParametroCalculo()); 88 + result.include("parametroCalculo", criterio.getRecomendacao().getParametroCalculo());
90 result.include("tipoTeste", criterio.getTipoTeste()); 89 result.include("tipoTeste", criterio.getTipoTeste());
91 populateSelectLists(); 90 populateSelectLists();
92 91
@@ -99,12 +98,13 @@ public class CriteriosController { @@ -99,12 +98,13 @@ public class CriteriosController {
99 98
100 dao.save(criterio); 99 dao.save(criterio);
101 result.include("mensagem", Messages.getString("criterio.salvo")); 100 result.include("mensagem", Messages.getString("criterio.salvo"));
  101 + result.redirectTo(RecomendacaoController.class).form(criterio.getRecomendacao().getId());
102 }else{ 102 }else{
103 this.criarNovoParametroAvaliacao(criterio,ParametroCalculoController.MODO_ADD); 103 this.criarNovoParametroAvaliacao(criterio,ParametroCalculoController.MODO_ADD);
104 - result.include("mensagem", Messages.getString("criterio.salvo")); 104 + result.include("mensagem", Messages.getString("criterio.salvo")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  105 + result.redirectTo(ParametroCalculoController.class).index(1);
105 } 106 }
106 107
107 - result.redirectTo(RecomendacaoController.class).form(criterio.getRecomendacao().getId());  
108 } 108 }
109 109
110 @Put("/criterio") 110 @Put("/criterio")
@@ -135,54 +135,53 @@ public class CriteriosController { @@ -135,54 +135,53 @@ public class CriteriosController {
135 criterioCadastrado.setNumeroCriterio(criterio.getNumeroCriterio()); 135 criterioCadastrado.setNumeroCriterio(criterio.getNumeroCriterio());
136 criterioCadastrado.setDescricao(criterio.getDescricao()); 136 criterioCadastrado.setDescricao(criterio.getDescricao());
137 criterioCadastrado.setPeso(criterio.getPeso()); 137 criterioCadastrado.setPeso(criterio.getPeso());
  138 + criterioCadastrado.setTipoTeste(new TipoTesteDAO(dao.getSession()).load(criterio.getTipoTeste().getId()));
138 139
139 dao.update(criterioCadastrado); 140 dao.update(criterioCadastrado);
140 result.include("mensagem", Messages.getString("criterio.atualizado")); 141 result.include("mensagem", Messages.getString("criterio.atualizado"));
  142 + result.redirectTo(RecomendacaoController.class).form(criterio.getRecomendacao().getId());
141 }else{ 143 }else{
  144 + criterio.setRecomendacao(criterioCadastrado.getRecomendacao());
142 criarNovoParametroAvaliacao(criterio,ParametroCalculoController.MODO_EDIT); 145 criarNovoParametroAvaliacao(criterio,ParametroCalculoController.MODO_EDIT);
143 - result.include("mensagem", Messages.getString("criterio.salvo")); 146 + result.include("mensagem", Messages.getString("criterio.salvo")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  147 + result.redirectTo(ParametroCalculoController.class).index(1);
144 } 148 }
145 }else{ 149 }else{
146 criterioCadastrado.setDescricao(criterio.getDescricao()); 150 criterioCadastrado.setDescricao(criterio.getDescricao());
147 dao.update(criterioCadastrado); 151 dao.update(criterioCadastrado);
148 result.include("mensagem", Messages.getString("validacao.sem_alteracao")); 152 result.include("mensagem", Messages.getString("validacao.sem_alteracao"));
  153 + result.redirectTo(CriteriosController.class).form(criterio.getId());
149 } 154 }
150 -  
151 - result.redirectTo(CriteriosController.class).form(  
152 - criterio.getId());  
153 } 155 }
154 156
155 @Path("/criterio/delete/{id}") 157 @Path("/criterio/delete/{id}")
156 @Restrito(descricao = "CRITERIO_EXCLUIR") 158 @Restrito(descricao = "CRITERIO_EXCLUIR")
157 public void excluir(Long id) { 159 public void excluir(Long id) {
158 - Criterio criteiro = dao.load(id);  
159 - long idRecomendacao = criteiro.getRecomendacao().getId();  
160 - ParametroCalculo pc = paDAO.load(criteiro.getRecomendacao().getParametroCalculo().getId());  
161 -  
162 - result.include("mensagem", Messages.getString("criterio.excluído")); 160 + Criterio criterio = dao.load(id);
  161 + long idRecomendacao = criterio.getRecomendacao().getId();
163 162
  163 + ParametroCalculo pc = paDAO.load(criterio.getRecomendacao().getParametroCalculo().getId());
164 if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){ 164 if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){
165 - dao.remove(criteiro.getId());  
166 - result.redirectTo("/recomendacao/form/"+idRecomendacao); 165 + dao.remove(criterio.getId());
  166 + result.include("mensagem", Messages.getString("criterio.excluído"));
  167 + result.redirectTo(RecomendacaoController.class).form(idRecomendacao);
167 }else{ 168 }else{
168 - criarNovoParametroAvaliacao(criteiro,  
169 - ParametroCalculoController.MODO_DELETE); 169 + criarNovoParametroAvaliacao(criterio,ParametroCalculoController.MODO_DELETE);
  170 + result.include("mensagem", Messages.getString("criterio.excluído")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());;
170 result.redirectTo(ParametroCalculoController.class).index(1); 171 result.redirectTo(ParametroCalculoController.class).index(1);
171 } 172 }
172 173
173 } 174 }
174 175
175 private void criarNovoParametroAvaliacao(Criterio criterio, int tipo) { 176 private void criarNovoParametroAvaliacao(Criterio criterio, int tipo) {
176 - ParametroCalculo ultimoParametroAvaliacao = paDAO  
177 - .getLastParametrosCalculo(); 177 + ParametroCalculo ultimoParametroAvaliacao = new CopiadorParametroCalculo().copiarParametroCalculo(paDAO.getLastParametrosCalculo());
178 boolean ok = false; 178 boolean ok = false;
179 179
180 switch (tipo) { 180 switch (tipo) {
181 case ParametroCalculoController.MODO_ADD: 181 case ParametroCalculoController.MODO_ADD:
182 for (Recomendacao recomendacao : ultimoParametroAvaliacao 182 for (Recomendacao recomendacao : ultimoParametroAvaliacao
183 .getRecomendacoes()) { 183 .getRecomendacoes()) {
184 - if (recomendacao.getId().equals(  
185 - criterio.getRecomendacao().getId())) { 184 + if (recomendacao.getNumeroRecomendacao().longValue() == criterio.getRecomendacao().getNumeroRecomendacao().longValue()) {
186 recomendacao.addCriterio(criterio); 185 recomendacao.addCriterio(criterio);
187 ok = true; 186 ok = true;
188 break; 187 break;
@@ -192,12 +191,12 @@ public class CriteriosController { @@ -192,12 +191,12 @@ public class CriteriosController {
192 break; 191 break;
193 192
194 case ParametroCalculoController.MODO_EDIT: 193 case ParametroCalculoController.MODO_EDIT:
  194 + ultimoParametroAvaliacao = paDAO.getLastParametrosCalculo();
195 for (Recomendacao recomendacao : ultimoParametroAvaliacao 195 for (Recomendacao recomendacao : ultimoParametroAvaliacao
196 .getRecomendacoes()) { 196 .getRecomendacoes()) {
197 - if (recomendacao.getId().equals(  
198 - criterio.getRecomendacao().getId())) { 197 + if (recomendacao.getNumeroRecomendacao().longValue() == criterio.getRecomendacao().getNumeroRecomendacao().longValue()) {
199 for (Criterio c : recomendacao.getCriterios()) { 198 for (Criterio c : recomendacao.getCriterios()) {
200 - if (criterio.getId().equals(c.getId())) { 199 + if (criterio.getNumeroCriterio().longValue() == c.getNumeroCriterio().longValue()) {
201 c.setDescricao(criterio.getDescricao()); 200 c.setDescricao(criterio.getDescricao());
202 c.setFaixas(criterio.getFaixas()); 201 c.setFaixas(criterio.getFaixas());
203 c.setId(criterio.getId()); 202 c.setId(criterio.getId());
@@ -216,13 +215,15 @@ public class CriteriosController { @@ -216,13 +215,15 @@ public class CriteriosController {
216 break; 215 break;
217 216
218 case ParametroCalculoController.MODO_DELETE: 217 case ParametroCalculoController.MODO_DELETE:
219 - for (Recomendacao recomendacao : ultimoParametroAvaliacao  
220 - .getRecomendacoes()) {  
221 - if (recomendacao.getId().equals(  
222 - criterio.getRecomendacao().getId())) {  
223 - recomendacao.removeCriterio(criterio);  
224 - ok = true;  
225 - break; 218 + for (Recomendacao recomendacao : ultimoParametroAvaliacao.getRecomendacoes()) {
  219 + if (recomendacao.getNumeroRecomendacao().longValue() == criterio.getRecomendacao().getNumeroRecomendacao().longValue()) {
  220 + for(int i=0; i< recomendacao.getCriterios().size(); i++){
  221 + if(recomendacao.getCriterios().get(i).getNumeroCriterio().longValue() == criterio.getNumeroCriterio().longValue()){
  222 + recomendacao.getCriterios().remove(i);
  223 + ok = true;
  224 + break;
  225 + }
  226 + }
226 } 227 }
227 } 228 }
228 break; 229 break;
@@ -303,7 +304,7 @@ public class CriteriosController { @@ -303,7 +304,7 @@ public class CriteriosController {
303 && criterio.getTipoTeste().getId() != null) { 304 && criterio.getTipoTeste().getId() != null) {
304 Recomendacao recomendacao = criterio.getRecomendacao(); 305 Recomendacao recomendacao = criterio.getRecomendacao();
305 306
306 - List<Criterio> listaCadastrada = dao.listAllAtivas(recomendacao); 307 + List<Criterio> listaCadastrada = dao.criterioDaRecomendacao(recomendacao);
307 308
308 for (Criterio criterioCadastrado : listaCadastrada) { 309 for (Criterio criterioCadastrado : listaCadastrada) {
309 if (criterioCadastrado.getNumeroCriterio().longValue() == criterio 310 if (criterioCadastrado.getNumeroCriterio().longValue() == criterio
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/FaixaController.java
@@ -148,12 +148,12 @@ public class FaixaController { @@ -148,12 +148,12 @@ public class FaixaController {
148 dao.save(faixa); 148 dao.save(faixa);
149 } 149 }
150 result.include("mensagem", Messages.getString("faixas.mensagem.salva")); 150 result.include("mensagem", Messages.getString("faixas.mensagem.salva"));
  151 + result.redirectTo(CriteriosController.class).form(criterio.getId());
151 }else{ 152 }else{
152 this.criarNovoParametroAvaliacao(faixas,ParametroCalculoController.MODO_ADD); 153 this.criarNovoParametroAvaliacao(faixas,ParametroCalculoController.MODO_ADD);
153 - result.include("mensagem", Messages.getString("faixas.mensagem.salva")); 154 + result.include("mensagem", Messages.getString("faixas.mensagem.salva")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  155 + result.redirectTo(ParametroCalculoController.class).index(1);
154 } 156 }
155 -  
156 - result.redirectTo(CriteriosController.class).form(criterio.getId());  
157 } 157 }
158 158
159 @Put("/faixas") 159 @Put("/faixas")
@@ -167,50 +167,60 @@ public class FaixaController { @@ -167,50 +167,60 @@ public class FaixaController {
167 result.include("criterio", criterio); 167 result.include("criterio", criterio);
168 result.include("parametroCalculo", criterio.getRecomendacao().getParametroCalculo()); 168 result.include("parametroCalculo", criterio.getRecomendacao().getParametroCalculo());
169 169
170 - faixa.setCriterio(criterio);  
171 -  
172 validarFaixa(faixa); 170 validarFaixa(faixa);
173 171
174 validator.onErrorRedirectTo(FaixaController.class).form(faixaCadastrada.getId()); 172 validator.onErrorRedirectTo(FaixaController.class).form(faixaCadastrada.getId());
175 173
176 if(validarAtualizacaoFaixa(faixa)){ 174 if(validarAtualizacaoFaixa(faixa)){
177 - faixaCadastrada.setCriterio(faixa.getCriterio());  
178 - faixaCadastrada.setFaixaInicio(faixa.getFaixaInicio());  
179 - faixaCadastrada.setFaixaFim(faixa.getFaixaFim());  
180 - faixaCadastrada.setDescricao(faixa.getDescricao());  
181 - faixaCadastrada.setPercentualConformidade(faixa.getPercentualConformidade());  
182 -  
183 - List<Faixa> faixas = new ArrayList<Faixa>();  
184 - faixas.add(faixaCadastrada);  
185 -  
186 175
187 ParametroCalculo pc = paDAO.load(criterio.getRecomendacao().getParametroCalculo().getId()); 176 ParametroCalculo pc = paDAO.load(criterio.getRecomendacao().getParametroCalculo().getId());
188 if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){ 177 if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){
  178 + faixaCadastrada.setCriterio(faixa.getCriterio());
  179 + faixaCadastrada.setFaixaInicio(faixa.getFaixaInicio());
  180 + faixaCadastrada.setFaixaFim(faixa.getFaixaFim());
  181 + faixaCadastrada.setDescricao(faixa.getDescricao());
  182 + faixaCadastrada.setPercentualConformidade(faixa.getPercentualConformidade());
  183 +
189 dao.update(faixaCadastrada); 184 dao.update(faixaCadastrada);
190 result.include("mensagem", Messages.getString("faixas.mensagem.alterada")); 185 result.include("mensagem", Messages.getString("faixas.mensagem.alterada"));
  186 + result.redirectTo(CriteriosController.class).form(criterio.getId());
191 }else{ 187 }else{
  188 + List<Faixa> faixas = new ArrayList<Faixa>();
  189 + faixa.setCriterio(faixaCadastrada.getCriterio());
  190 + faixas.add(faixa);
  191 +
192 criarNovoParametroAvaliacao(faixas, ParametroCalculoController.MODO_EDIT); 192 criarNovoParametroAvaliacao(faixas, ParametroCalculoController.MODO_EDIT);
193 - result.include("mensagem", Messages.getString("faixas.mensagem.alterada")); 193 + result.include("mensagem", Messages.getString("faixas.mensagem.alterada")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  194 + result.redirectTo(ParametroCalculoController.class).index(1);
194 } 195 }
195 }else{ 196 }else{
196 faixaCadastrada.setDescricao(faixa.getDescricao()); 197 faixaCadastrada.setDescricao(faixa.getDescricao());
197 dao.update(faixaCadastrada); 198 dao.update(faixaCadastrada);
198 result.include("mensagem", Messages.getString("validacao.sem_alteracao")); 199 result.include("mensagem", Messages.getString("validacao.sem_alteracao"));
  200 + result.redirectTo(FaixaController.class).form(faixa.getId());
199 } 201 }
200 -  
201 - result.redirectTo(FaixaController.class).form(faixa.getId()); } 202 + }
202 203
203 @Path("/faixas/delete/{id}") 204 @Path("/faixas/delete/{id}")
204 @Restrito(descricao = "CONFORMIDADES_EXCLUIR") 205 @Restrito(descricao = "CONFORMIDADES_EXCLUIR")
205 public void excluir(Long id) { 206 public void excluir(Long id) {
206 Faixa faixa = dao.load(id); 207 Faixa faixa = dao.load(id);
207 - 208 + long idCriterio = faixa.getCriterio().getId();
  209 +
208 List<Faixa> faixas = new ArrayList<Faixa>(); 210 List<Faixa> faixas = new ArrayList<Faixa>();
209 faixas.add(faixa); 211 faixas.add(faixa);
210 - criarNovoParametroAvaliacao(faixas, ParametroCalculoController.MODO_DELETE); 212 +
  213 + ParametroCalculo pc = paDAO.load(faixa.getCriterio().getRecomendacao().getParametroCalculo().getId());
211 214
212 - result.include("mensagem", "Conformidade excluída com sucesso.");  
213 - result.redirectTo(ParametroCalculoController.class).index(1); 215 + if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){
  216 + dao.remove(faixa.getId());
  217 + result.include("mensagem", Messages.getString("faixas.mensagem.excluida"));
  218 + result.redirectTo(CriteriosController.class).form(idCriterio);
  219 + }else{
  220 + criarNovoParametroAvaliacao(faixas,ParametroCalculoController.MODO_DELETE);
  221 + result.include("mensagem", Messages.getString("faixas.mensagem.excluida")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  222 + result.redirectTo(ParametroCalculoController.class).index(1);
  223 + }
214 } 224 }
215 225
216 private void populateSelectLists() { 226 private void populateSelectLists() {
@@ -271,7 +281,7 @@ public class FaixaController { @@ -271,7 +281,7 @@ public class FaixaController {
271 } 281 }
272 282
273 private void criarNovoParametroAvaliacao(List<Faixa> faixas, int tipo) { 283 private void criarNovoParametroAvaliacao(List<Faixa> faixas, int tipo) {
274 - ParametroCalculo ultimoParametroAvaliacao = paDAO.getLastParametrosCalculo(); 284 + ParametroCalculo ultimoParametroAvaliacao = new CopiadorParametroCalculo().copiarParametroCalculo(paDAO.getLastParametrosCalculo());
275 boolean ok = false; 285 boolean ok = false;
276 Faixa faixa; 286 Faixa faixa;
277 287
@@ -279,9 +289,9 @@ public class FaixaController { @@ -279,9 +289,9 @@ public class FaixaController {
279 case ParametroCalculoController.MODO_ADD: 289 case ParametroCalculoController.MODO_ADD:
280 for(Faixa f:faixas){ 290 for(Faixa f:faixas){
281 for(Recomendacao recomendacao: ultimoParametroAvaliacao.getRecomendacoes()){ 291 for(Recomendacao recomendacao: ultimoParametroAvaliacao.getRecomendacoes()){
282 - if(recomendacao.getId().longValue()==f.getCriterio().getRecomendacao().getId().longValue()){ 292 + if(recomendacao.getNumeroRecomendacao().longValue()==f.getCriterio().getRecomendacao().getNumeroRecomendacao().longValue()){
283 for(Criterio criterio: recomendacao.getCriterios()){ 293 for(Criterio criterio: recomendacao.getCriterios()){
284 - if(criterio.getId().longValue()==f.getCriterio().getId().longValue()){ 294 + if(criterio.getNumeroCriterio().longValue()==f.getCriterio().getNumeroCriterio().longValue()){
285 criterio.addFaixa(f); 295 criterio.addFaixa(f);
286 ok=true; 296 ok=true;
287 break; 297 break;
@@ -295,13 +305,14 @@ public class FaixaController { @@ -295,13 +305,14 @@ public class FaixaController {
295 break; 305 break;
296 306
297 case ParametroCalculoController.MODO_EDIT: 307 case ParametroCalculoController.MODO_EDIT:
  308 + //ultimoParametroAvaliacao = paDAO.getLastParametrosCalculo();
298 faixa = faixas.get(0); 309 faixa = faixas.get(0);
299 for(Recomendacao recomendacao: ultimoParametroAvaliacao.getRecomendacoes()){ 310 for(Recomendacao recomendacao: ultimoParametroAvaliacao.getRecomendacoes()){
300 - if(recomendacao.getId().longValue()==faixa.getCriterio().getRecomendacao().getId().longValue()){ 311 + if(recomendacao.getNumeroRecomendacao().longValue()==faixa.getCriterio().getRecomendacao().getNumeroRecomendacao().longValue()){
301 for(Criterio criterio: recomendacao.getCriterios()){ 312 for(Criterio criterio: recomendacao.getCriterios()){
302 - if(criterio.getId().longValue()==faixa.getCriterio().getId().longValue()){ 313 + if(criterio.getNumeroCriterio().longValue()==faixa.getCriterio().getNumeroCriterio().longValue()){
303 for(Faixa f: criterio.getFaixas()){ 314 for(Faixa f: criterio.getFaixas()){
304 - if(f.getId().longValue()==faixa.getId().longValue()){ 315 + if(f.getFaixa().longValue()==faixa.getFaixa().longValue()){
305 f.setCriterio(faixa.getCriterio()); 316 f.setCriterio(faixa.getCriterio());
306 f.setDescricao(faixa.getDescricao()); 317 f.setDescricao(faixa.getDescricao());
307 f.setFaixa(faixa.getFaixa()); 318 f.setFaixa(faixa.getFaixa());
@@ -322,13 +333,17 @@ public class FaixaController { @@ -322,13 +333,17 @@ public class FaixaController {
322 case ParametroCalculoController.MODO_DELETE: 333 case ParametroCalculoController.MODO_DELETE:
323 faixa = faixas.get(0); 334 faixa = faixas.get(0);
324 for(Recomendacao recomendacao: ultimoParametroAvaliacao.getRecomendacoes()){ 335 for(Recomendacao recomendacao: ultimoParametroAvaliacao.getRecomendacoes()){
325 - if(recomendacao.getId().longValue()==faixa.getCriterio().getRecomendacao().getId().longValue()){ 336 + if(recomendacao.getNumeroRecomendacao().longValue()==faixa.getCriterio().getRecomendacao().getNumeroRecomendacao().longValue()){
326 for(Criterio criterio: recomendacao.getCriterios()){ 337 for(Criterio criterio: recomendacao.getCriterios()){
327 - if(criterio.getId().longValue()==faixa.getCriterio().getId().longValue()){  
328 - criterio.removeFaixa(faixa);  
329 - ok=true;  
330 - break; 338 + if(criterio.getNumeroCriterio().longValue()==faixa.getCriterio().getNumeroCriterio().longValue()){
  339 + for(int i=0; i< criterio.getFaixas().size(); i++){
  340 + if(faixa.getFaixa().longValue() == criterio.getFaixas().get(i).getFaixa().longValue()){
  341 + criterio.getFaixas().remove(i);
  342 + ok=true;
  343 + break;
  344 + }
331 345
  346 + }
332 } 347 }
333 } 348 }
334 } 349 }
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/controller/RecomendacaoController.java
@@ -15,6 +15,7 @@ import br.com.eselo.component.CopiadorParametroCalculo; @@ -15,6 +15,7 @@ import br.com.eselo.component.CopiadorParametroCalculo;
15 import br.com.eselo.component.Messages; 15 import br.com.eselo.component.Messages;
16 import br.com.eselo.component.UsuarioWeb; 16 import br.com.eselo.component.UsuarioWeb;
17 import br.com.eselo.dao.AvaliacaoDAO; 17 import br.com.eselo.dao.AvaliacaoDAO;
  18 +import br.com.eselo.dao.CriterioDAO;
18 import br.com.eselo.dao.ParametroCalculoDAO; 19 import br.com.eselo.dao.ParametroCalculoDAO;
19 import br.com.eselo.dao.RecomendacaoDAO; 20 import br.com.eselo.dao.RecomendacaoDAO;
20 import br.com.eselo.model.ParametroCalculo; 21 import br.com.eselo.model.ParametroCalculo;
@@ -60,7 +61,9 @@ public class RecomendacaoController { @@ -60,7 +61,9 @@ public class RecomendacaoController {
60 result.include("parametroCalculoId", recomendacao.getParametroCalculo() 61 result.include("parametroCalculoId", recomendacao.getParametroCalculo()
61 .getId()); 62 .getId());
62 result.include("parametroCalculo", recomendacao.getParametroCalculo()); 63 result.include("parametroCalculo", recomendacao.getParametroCalculo());
63 - 64 + result.include("criterioList",
  65 + new CriterioDAO(dao.getSession())
  66 + .listAllAtivas(recomendacao));
64 return recomendacao; 67 return recomendacao;
65 } 68 }
66 69
@@ -78,10 +81,10 @@ public class RecomendacaoController { @@ -78,10 +81,10 @@ public class RecomendacaoController {
78 81
79 dao.save(recomendacao); 82 dao.save(recomendacao);
80 result.include("mensagem", Messages.getString("recomendacao.salva")); 83 result.include("mensagem", Messages.getString("recomendacao.salva"));
81 - result.redirectTo(ParametroCalculoController.class).atualizar(pc); 84 + result.redirectTo(ParametroCalculoController.class).form(pc.getId());
82 }else{ 85 }else{
83 criarNovoParametroAvaliacao(recomendacao,ParametroCalculoController.MODO_ADD); 86 criarNovoParametroAvaliacao(recomendacao,ParametroCalculoController.MODO_ADD);
84 - result.include("mensagem", Messages.getString("recomendacao.salva")); 87 + result.include("mensagem", Messages.getString("recomendacao.salva")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
85 result.redirectTo(ParametroCalculoController.class).index(1); 88 result.redirectTo(ParametroCalculoController.class).index(1);
86 } 89 }
87 90
@@ -106,17 +109,18 @@ public class RecomendacaoController { @@ -106,17 +109,18 @@ public class RecomendacaoController {
106 109
107 dao.update(recomendacaoCadastrada); 110 dao.update(recomendacaoCadastrada);
108 result.include("mensagem", Messages.getString("recomendacao.atualizada")); 111 result.include("mensagem", Messages.getString("recomendacao.atualizada"));
  112 + result.redirectTo(ParametroCalculoController.class).form(pc.getId());
109 }else{ 113 }else{
110 criarNovoParametroAvaliacao(recomendacao,ParametroCalculoController.MODO_EDIT); 114 criarNovoParametroAvaliacao(recomendacao,ParametroCalculoController.MODO_EDIT);
111 - result.include("mensagem", Messages.getString("recomendacao.salva")); 115 + result.include("mensagem", Messages.getString("recomendacao.salva")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  116 + result.redirectTo(ParametroCalculoController.class).index(1);
112 } 117 }
113 }else{ 118 }else{
114 recomendacaoCadastrada.setDescricao(recomendacao.getDescricao()); 119 recomendacaoCadastrada.setDescricao(recomendacao.getDescricao());
115 dao.update(recomendacaoCadastrada); 120 dao.update(recomendacaoCadastrada);
116 result.include("mensagem", Messages.getString("validacao.sem_alteracao")); 121 result.include("mensagem", Messages.getString("validacao.sem_alteracao"));
  122 + result.redirectTo(RecomendacaoController.class).form(recomendacao.getId());
117 } 123 }
118 -  
119 - result.redirectTo(RecomendacaoController.class).form(recomendacao.getId());  
120 } 124 }
121 125
122 @Path("/recomendacao/delete/{id}") 126 @Path("/recomendacao/delete/{id}")
@@ -124,14 +128,16 @@ public class RecomendacaoController { @@ -124,14 +128,16 @@ public class RecomendacaoController {
124 public void excluir(Long id) { 128 public void excluir(Long id) {
125 Recomendacao recomendacao = dao.load(id); 129 Recomendacao recomendacao = dao.load(id);
126 130
127 - result.include("mensagem", Messages.getString("recomendacao.exclusao"));  
128 ParametroCalculo pc = paDAO.load(recomendacao.getParametroCalculo().getId()); 131 ParametroCalculo pc = paDAO.load(recomendacao.getParametroCalculo().getId());
129 if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){ 132 if(!(new AvaliacaoDAO(dao.getSession()).existeAvaliacao(pc))){
  133 + result.include("mensagem", Messages.getString("recomendacao.exclusao"));
130 dao.remove(recomendacao.getId()); 134 dao.remove(recomendacao.getId());
131 - result.redirectTo("/parametrosCalculo/atualizar/"+pc.getId()); 135 + result.redirectTo(ParametroCalculoController.class).form(pc.getId());
132 }else{ 136 }else{
133 - criarNovoParametroAvaliacao(recomendacao, 137 + criarNovoParametroAvaliacao(recomendacao,
134 ParametroCalculoController.MODO_DELETE); 138 ParametroCalculoController.MODO_DELETE);
  139 + result.include("mensagem", Messages.getString("recomendacao.exclusao")+" "+Messages.getString("parametro_calculo.criado")+" "+pc.getDescricao());
  140 +
135 result.redirectTo(ParametroCalculoController.class).index(1); 141 result.redirectTo(ParametroCalculoController.class).index(1);
136 } 142 }
137 143
Desenvolvimento/Codificacao/e-Selo/src/main/java/br/com/eselo/dao/CriterioDAO.java
1 package br.com.eselo.dao; 1 package br.com.eselo.dao;
2 2
  3 +import java.util.ArrayList;
3 import java.util.List; 4 import java.util.List;
4 5
5 import org.hibernate.Session; 6 import org.hibernate.Session;
@@ -30,6 +31,20 @@ public class CriterioDAO extends GenericDAO&lt;Criterio&gt; { @@ -30,6 +31,20 @@ public class CriterioDAO extends GenericDAO&lt;Criterio&gt; {
30 .add(Restrictions.eq("recomendacao", recomendacao)) 31 .add(Restrictions.eq("recomendacao", recomendacao))
31 .addOrder(Order.asc("numeroCriterio")).list(); 32 .addOrder(Order.asc("numeroCriterio")).list();
32 } 33 }
  34 +
  35 + public List<Criterio> criterioDaRecomendacao(Recomendacao recomendacao) {
  36 + List<Criterio> criterios = this.listAll();
  37 + List<Criterio> criterioRecomendacoesDoUltimoParametro = new ArrayList<Criterio>();
  38 +
  39 + for (Criterio criterio : criterios) {
  40 + if (criterio.getRecomendacao().getId() == recomendacao
  41 + .getId()) {
  42 + criterioRecomendacoesDoUltimoParametro.add(criterio);
  43 + }
  44 + }
  45 +
  46 + return criterioRecomendacoesDoUltimoParametro;
  47 + }
33 48
34 public Object getAllTipoTeste() { 49 public Object getAllTipoTeste() {
35 TipoTesteDAO tipoTesteDao = (TipoTesteDAO) new TipoTesteDAO( 50 TipoTesteDAO tipoTesteDao = (TipoTesteDAO) new TipoTesteDAO(