From 4134ccfa289646ea9e67513c123540888993f2c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tiago=20Sim=C3=A3o?= Date: Mon, 14 Sep 2009 16:51:39 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@1087 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../siprp/logic/HigieneSegurancaLogic.java | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java b/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java index 4c135ccc..f64560ac 100644 --- a/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java +++ b/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java @@ -6,6 +6,7 @@ import static com.evolute.utils.strings.UnicodeLatin1Map.iacute; import java.util.Collections; import java.util.HashMap; +import java.util.LinkedList; import java.util.List; import javax.swing.tree.DefaultMutableTreeNode; @@ -176,12 +177,18 @@ public class HigieneSegurancaLogic List areas = relatorio.getHsRelatorioArea(); for( HsRelatorioArea area : areas ) { - AreaRelatorioNode areaNode = new AreaRelatorioNode(area); - for( HsRelatorioPosto posto : area.getHsRelatorioPostoArray() ) + if( area.getDeletedDate() == null ) { - areaNode.add( new PostoRelatorioNode( posto ) ); + AreaRelatorioNode areaNode = new AreaRelatorioNode(area); + for( HsRelatorioPosto posto : area.getHsRelatorioPostoArray() ) + { + if( posto.getDeletedDate() == null ) + { + areaNode.add( new PostoRelatorioNode( posto ) ); + } + } + result.add( areaNode ); } - result.add( areaNode ); } } return result; @@ -211,10 +218,19 @@ public class HigieneSegurancaLogic private static void reverterAreas( HsRelatorio relatorio, Estabelecimentos estabelecimento ) throws Exception { List areas = relatorio.getHsRelatorioArea(); + areas = new LinkedList(areas); int areasSize = areas == null ? 0 : areas.size(); for( int i = 0; i < areasSize; ++i ) { - areas.get( 0 ).delete(); + HsRelatorioArea area = areas.get( i ); + List postos = area.getHsRelatorioPostoArray(); + postos = new LinkedList(postos); + int postosSize = postos == null ? 0 : postos.size(); + for( int j = 0; j < postosSize; ++j ) + { + postos.get(j).delete(); + } + area.delete(); } relatorio.save(); List postos = estabelecimento.getHsPostoEstabelecimentoArray();