From 852dae8c479af0128e938dfa12dcaec813301a9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tiago=20Sim=C3=A3o?= Date: Wed, 22 Jul 2009 11:28:47 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@1071 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../relatorio/GerirMedidasRelatorioPanel.java | 21 +++++++++++++++++-- .../siprp/logic/HigieneSegurancaLogic.java | 6 +++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java index 4cbfa188..ab6f473b 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/GerirMedidasRelatorioPanel.java @@ -12,6 +12,7 @@ import java.awt.event.ActionListener; import java.util.Collections; import java.util.Comparator; import java.util.Date; +import java.util.LinkedList; import java.util.List; import javax.swing.JOptionPane; @@ -308,8 +309,24 @@ public class GerirMedidasRelatorioPanel extends JPanel { if( root instanceof NodeRisco ) { - //TODO + HsRisco risco = (HsRisco) ((NodeRisco)root).getUserObject(); + addRisco( risco ); } + for( int i = 0; i < root.getChildCount(); ++i ) + { + addResult( (DefaultMutableTreeNode) root.getChildAt( i ) ); + } + } + } + + private void addRisco( HsRisco risco ) + { + List allPostosRiscos = risco.getHsPostoRiscoArray(); + if( !allPostosRiscos.isEmpty() && posto != null ) + { + List postosRiscos = new LinkedList(); + postosRiscos.add( allPostosRiscos.get( 0 ) ); + HigieneSegurancaLogic.revertMedidasAndRiscos( postosRiscos, posto ); } } @@ -382,7 +399,7 @@ public class GerirMedidasRelatorioPanel extends JPanel rem = true; } } - buttonAdicionar.setEnabled( add && getSelectedRisco() != null ); + buttonAdicionar.setEnabled( add ); buttonRemover.setEnabled( rem && ( getSelectedMedida() != null || getSelectedRisco() != null ) ); } diff --git a/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java b/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java index e892c8bf..341507d6 100644 --- a/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java +++ b/trunk/common/src/siprp/logic/HigieneSegurancaLogic.java @@ -238,13 +238,13 @@ public class HigieneSegurancaLogic areasInserted.put(area,rArea); } rPosto.setToHsRelatorioArea( rArea ); - addMedidasAndRiscos(posto,rPosto); + revertMedidasAndRiscos(posto.getHsPostoRiscoArray(),rPosto); } } - private static void addMedidasAndRiscos(HsPosto posto, HsRelatorioPosto rPosto) + public static void revertMedidasAndRiscos( List postosRiscos, HsRelatorioPosto rPosto ) { - for( HsPostoRisco postoRisco : posto.getHsPostoRiscoArray() ) + for( HsPostoRisco postoRisco : postosRiscos ) { HsRelatorioRisco rRelatorioRisco = new HsRelatorioRisco(); rRelatorioRisco.setToHsRelatorio( rPosto.getToHsRelatorioArea().getToHsRelatorio() );