git-svn-id: https://svn.coded.pt/svn/SIPRP@1091 bb69d46d-e84e-40c8-a05a-06db0d633741

lxbfYeaa
Tiago Simão 16 years ago
parent 46f87228b6
commit 7eba72b07e

@ -27,15 +27,12 @@ import javax.swing.tree.DefaultTreeModel;
import javax.swing.tree.TreePath;
import javax.swing.tree.TreeSelectionModel;
import org.apache.cayenne.PersistenceState;
import leaf.ui.LeafButton;
import leaf.ui.LeafDialog;
import leaf.ui.LeafIconButton;
import leaf.ui.LeafTree;
import leaf.ui.TreeInserterDialog;
import leaf.ui.TreeTools;
import siprp.database.cayenne.objects.BaseObject;
import siprp.database.cayenne.objects.HsPostoRisco;
import siprp.database.cayenne.objects.HsRelatorioMedida;
import siprp.database.cayenne.objects.HsRelatorioPosto;
@ -43,7 +40,6 @@ import siprp.database.cayenne.objects.HsRelatorioPostoMedida;
import siprp.database.cayenne.objects.HsRelatorioPostoRisco;
import siprp.database.cayenne.objects.HsRelatorioRisco;
import siprp.database.cayenne.objects.HsRisco;
import siprp.database.cayenne.objects.HsRiscoEmpresa;
import siprp.logic.HigieneSegurancaLogic;
import siprp.logic.node.MedidaRelatorioNode;
import siprp.logic.node.NodeRisco;
@ -324,12 +320,18 @@ public class GerirMedidasRelatorioPanel extends JPanel
private void addRisco( HsRisco risco )
{
List<HsPostoRisco> allPostosRiscos = risco.getHsPostoRiscoArray();
if( !allPostosRiscos.isEmpty() && posto != null )
if( posto != null )
{
List<HsPostoRisco> postosRiscos = new LinkedList<HsPostoRisco>();
postosRiscos.add( allPostosRiscos.get( 0 ) );
HigieneSegurancaLogic.revertMedidasAndRiscos( postosRiscos, posto );
Integer order = 0;
List<HsPostoRisco> toPostos = risco.getHsPostoRiscoArray();
if( !toPostos.isEmpty() )
{
for (HsPostoRisco hsPostoRisco : toPostos)
{
order = Math.max(order, hsPostoRisco.getOrder());
}
}
HigieneSegurancaLogic.addRiscoToRelatorioPosto( risco, order+1, posto );
}
}

@ -257,34 +257,49 @@ public class HigieneSegurancaLogic
areasInserted.put(area,rArea);
}
rPosto.setToHsRelatorioArea( rArea );
revertMedidasAndRiscos(posto.getHsPostoRiscoArray(),rPosto);
revertMedidasAndRiscos(posto,rPosto);
}
}
public static void revertMedidasAndRiscos( List<HsPostoRisco> postosRiscos, HsRelatorioPosto rPosto )
public static void addRiscoToRelatorioPosto( HsRisco risco, Integer order, HsRelatorioPosto rPosto )
{
HsRelatorioRisco rRelatorioRisco = new HsRelatorioRisco();
rRelatorioRisco.setToHsRelatorio( rPosto.getToHsRelatorioArea().getToHsRelatorio() );
rRelatorioRisco.setDescription( risco.getDescription() );
HsRelatorioPostoRisco rPostoRisco = new HsRelatorioPostoRisco();
rPostoRisco.setToHsRelatorioPosto( rPosto );
rPostoRisco.setToHsRelatorioRisco( rRelatorioRisco );
rPostoRisco.setOrder( order );
for( HsRiscoMedida riscoMedida : risco.getHsRiscoMedidaArray() )
{
HsRelatorioMedida rMedida = new HsRelatorioMedida();
rMedida.setDescription( riscoMedida.getToHsMedida().getDescription() );
rMedida.setRequesitosLegais( riscoMedida.getToHsMedida().getRequesitosLegais() );
rMedida.setToHsRelatorioRisco( rRelatorioRisco );
HsRelatorioPostoMedida rPostoMedida = new HsRelatorioPostoMedida();
rPostoMedida.setIsPlanoActuacao( false );
rPostoMedida.setToHsRelatorioMedida( rMedida );
rPostoMedida.setToHsRelatorioPosto( rPosto );
}
}
private static void revertMedidasAndRiscos( HsPostoRisco postoRisco, HsRelatorioPosto rPosto )
{
addRiscoToRelatorioPosto(postoRisco.getToHsRisco(), postoRisco.getOrder(), rPosto);
}
private static void revertMedidasAndRiscos( List<HsPostoRisco> postosRiscos, HsRelatorioPosto rPosto )
{
for( HsPostoRisco postoRisco : postosRiscos )
{
HsRelatorioRisco rRelatorioRisco = new HsRelatorioRisco();
rRelatorioRisco.setToHsRelatorio( rPosto.getToHsRelatorioArea().getToHsRelatorio() );
rRelatorioRisco.setDescription( postoRisco.getToHsRisco().getDescription() );
HsRelatorioPostoRisco rPostoRisco = new HsRelatorioPostoRisco();
rPostoRisco.setToHsRelatorioPosto( rPosto );
rPostoRisco.setToHsRelatorioRisco( rRelatorioRisco );
rPostoRisco.setOrder( postoRisco.getOrder() );
for( HsRiscoMedida riscoMedida : postoRisco.getToHsRisco().getHsRiscoMedidaArray() )
{
HsRelatorioMedida rMedida = new HsRelatorioMedida();
rMedida.setDescription( riscoMedida.getToHsMedida().getDescription() );
rMedida.setRequesitosLegais( riscoMedida.getToHsMedida().getRequesitosLegais() );
rMedida.setToHsRelatorioRisco( rRelatorioRisco );
HsRelatorioPostoMedida rPostoMedida = new HsRelatorioPostoMedida();
rPostoMedida.setIsPlanoActuacao( false );
rPostoMedida.setToHsRelatorioMedida( rMedida );
rPostoMedida.setToHsRelatorioPosto( rPosto );
}
revertMedidasAndRiscos( postoRisco, rPosto );
}
}
public static void revertMedidasAndRiscos( HsPosto posto, HsRelatorioPosto rPosto )
{
revertMedidasAndRiscos(posto.getHsPostoRiscoArray(),rPosto);
}
private static void reverterLegislacao( HsRelatorio relatorio, Estabelecimentos estabelecimento ) throws Exception
{

Loading…
Cancel
Save