forked from Coded/SIPRP
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
125 lines
3.6 KiB
125 lines
3.6 KiB
package siprp.logic;
|
|
|
|
import java.util.List;
|
|
|
|
import javax.swing.tree.DefaultMutableTreeNode;
|
|
|
|
import leaf.ui.TreeTools;
|
|
import siprp.database.cayenne.objects.Empresas;
|
|
import siprp.database.cayenne.objects.Estabelecimentos;
|
|
import siprp.database.cayenne.objects.HsArea;
|
|
import siprp.database.cayenne.objects.HsPosto;
|
|
import siprp.database.cayenne.objects.HsPostoEstabelecimento;
|
|
import siprp.database.cayenne.objects.HsRisco;
|
|
import siprp.database.cayenne.objects.HsRiscoEmpresa;
|
|
import siprp.database.cayenne.objects.HsRiscoMedida;
|
|
import siprp.database.cayenne.objects.HsRiscoTema;
|
|
import siprp.database.cayenne.providers.PlanoActuacaoDAO;
|
|
import siprp.higiene.gestao.postos.AreaNode;
|
|
import siprp.higiene.gestao.postos.PostoNode;
|
|
import siprp.higiene.gestao.riscos.NodeMedida;
|
|
import siprp.higiene.gestao.riscos.NodeRisco;
|
|
import siprp.higiene.gestao.riscos.NodeRiscoTema;
|
|
|
|
public class HigieneSegurancaLogic
|
|
{
|
|
|
|
private static final PlanoActuacaoDAO provider = new PlanoActuacaoDAO();
|
|
|
|
public static DefaultMutableTreeNode getRiscosTree()
|
|
{
|
|
DefaultMutableTreeNode result = new DefaultMutableTreeNode();
|
|
List<HsRiscoTema> temas = provider.getAllRiscoTemas();
|
|
if( temas != null )
|
|
{
|
|
for( HsRiscoTema tema : temas )
|
|
{
|
|
NodeRiscoTema temaNode = new NodeRiscoTema( tema );
|
|
for( HsRisco risco : tema.getHsRiscoArray() )
|
|
{
|
|
NodeRisco riscoNode = new NodeRisco( risco );
|
|
for( HsRiscoMedida rel : risco.getHsRiscoMedidaArray() )
|
|
{
|
|
riscoNode.add( new NodeMedida( rel ) );
|
|
}
|
|
temaNode.add( riscoNode );
|
|
}
|
|
result.add( temaNode );
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public static DefaultMutableTreeNode getRiscosTree( Empresas empresa )
|
|
{
|
|
DefaultMutableTreeNode result = new DefaultMutableTreeNode();
|
|
for( HsRiscoEmpresa rel : empresa.getHsRiscoEmpresaArray() )
|
|
{
|
|
HsRisco risco = rel.getToHsRisco();
|
|
HsRiscoTema tema = risco.getToHsRiscoTema();
|
|
DefaultMutableTreeNode temaNode = TreeTools.findNodeWithUserObject( tema, result );
|
|
if( temaNode == null )
|
|
{
|
|
temaNode = new NodeRiscoTema( tema );
|
|
result.add(temaNode);
|
|
}
|
|
temaNode.add( new NodeRisco( risco ) );
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public static DefaultMutableTreeNode getAreasTree( Empresas empresa )
|
|
{
|
|
DefaultMutableTreeNode result = new DefaultMutableTreeNode();
|
|
if( empresa != null )
|
|
{
|
|
for( HsArea area : empresa.getHsAreaArray() )
|
|
{
|
|
AreaNode areaNode = new AreaNode(area);
|
|
for( HsPosto posto : area.getHsPostoArray() )
|
|
{
|
|
areaNode.add( new PostoNode( posto ) );
|
|
}
|
|
result.add( areaNode );
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public static DefaultMutableTreeNode getAreasTree( Estabelecimentos estabelecimento )
|
|
{
|
|
DefaultMutableTreeNode result = new DefaultMutableTreeNode();
|
|
if( estabelecimento != null )
|
|
{
|
|
List<HsPostoEstabelecimento> postos = estabelecimento.getHsPostoEstabelecimentoArray();
|
|
for( HsPostoEstabelecimento rel : postos )
|
|
{
|
|
HsPosto posto = rel.getToHsPosto();
|
|
HsArea area = posto.getToHsArea();
|
|
DefaultMutableTreeNode areaNode = TreeTools.findNodeWithUserObject( area, result );
|
|
if( areaNode == null )
|
|
{
|
|
areaNode = new AreaNode( area );
|
|
result.add( areaNode );
|
|
}
|
|
areaNode.add( new PostoNode( posto ) );
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
public static DefaultMutableTreeNode getPostosTree( Estabelecimentos estabelecimento )
|
|
{
|
|
DefaultMutableTreeNode result = new DefaultMutableTreeNode();
|
|
if( estabelecimento != null )
|
|
{
|
|
List<HsPostoEstabelecimento> postos = estabelecimento.getHsPostoEstabelecimentoArray();
|
|
for( HsPostoEstabelecimento rel : postos )
|
|
{
|
|
result.add( new PostoNode( rel.getToHsPosto() ) );
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
}
|