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

0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
Frederico Palma 17 years ago
parent ea1e259805
commit d6ac7f5291

@ -7,38 +7,42 @@ import org.jdom.Element;
public class LegislacaoAplicavelToPrint
implements PrintableInterface
{
protected Vector<String> diplomas;
protected Vector<String> diplomasGerais;
protected String[] nomesGruposEspecificos;
protected Vector<String>[] diplomasEspecificos;
public LegislacaoAplicavelToPrint( Vector<String> diplomas )
public LegislacaoAplicavelToPrint( Vector<String> diplomasGerais,
String[] nomesGruposEspecificos, Vector<String>[] diplomasEspecificos )
{
super();
this.diplomas = diplomas;
this.diplomasGerais = diplomasGerais;
this.nomesGruposEspecificos = nomesGruposEspecificos;
this.diplomasEspecificos = diplomasEspecificos;
}
public Vector<String> getDiplomas()
{
return diplomas;
}
public void setDiplomas( Vector<String> diplomas )
{
this.diplomas = diplomas;
}
protected void addDiploma( String diploma )
{
diplomas.add( diploma );
}
@Override
public Element toJdomElement() throws Exception
{
Element legislacaoAplicavelElement = new Element( "legislacao-aplicavel" );
for( String diploma : diplomas )
Element legislacaoGeralElement = new Element( "legislacao-geral" );
for( String diploma : diplomasGerais )
{
Element diplomaElement = new Element( "diploma" );
diplomaElement.setText( diploma );
legislacaoAplicavelElement.addContent( diploma );
legislacaoGeralElement.addContent( diplomaElement );
}
legislacaoAplicavelElement.addContent( legislacaoGeralElement );
for( int e = 0; e < nomesGruposEspecificos.length; e++ )
{
Element legislacaoEspecificaElement = new Element( "legislacao-especifica" );
for( String diploma : diplomasEspecificos[ e ] )
{
Element diplomaElement = new Element( "diploma" );
diplomaElement.setText( diploma );
legislacaoEspecificaElement.addContent( diplomaElement );
}
legislacaoAplicavelElement.addContent( legislacaoEspecificaElement );
}
return legislacaoAplicavelElement;
}

@ -0,0 +1,43 @@
package siprp.higiene.relatorio.print;
import java.util.Vector;
import org.jdom.Element;
public class NormalizacaoToPrint
implements PrintableInterface
{
protected Vector<String> normasPortuguesas;
protected Vector<String> normasInternacionais;
public NormalizacaoToPrint( Vector<String> normasPortuguesas, Vector<String> normasInternacionais )
{
super();
this.normasPortuguesas = normasPortuguesas;
this.normasInternacionais = normasInternacionais;
}
@Override
public Element toJdomElement() throws Exception
{
Element normalizacaoElement = new Element( "normalizacao-aplicavel" );
Element portuguesaElement = new Element( "normalizacao-portuguesa" );
addNormas( portuguesaElement, normasPortuguesas );
normalizacaoElement.addContent( portuguesaElement );
Element internacionalElement = new Element( "normalizacao-internacional" );
addNormas( internacionalElement, normasInternacionais );
normalizacaoElement.addContent( internacionalElement );
return normalizacaoElement;
}
protected void addNormas( Element element, Vector<String> normas )
{
for( String norma : normas )
{
Element normaElement = new Element( "norma" );
normaElement.setText( norma );
element.addContent( normaElement );
}
}
}

@ -154,14 +154,82 @@ public class RelatorioPrintDataProvider
return array.columnLength() > 0 ? ( Integer ) array.get( 0, 0 ) : null;
}
public LegislacaoAplicavelToPrint getLegislacaoAplicavel( Integer empresaId, Integer estabelecimentoId )
public LegislacaoAplicavelToPrint getLegislacaoAplicavel( Integer relatorioId )
throws Exception
{
//TODO:
LegislacaoAplicavelToPrint legislacao = new LegislacaoAplicavelToPrint( new Vector<String>() );
Select select =
new Select2(
new String[]{ "hs_relatorio_legislacao" },
new Integer[]{},
new Expression[]{},
new String[]{ "hs_relatorio_legislacao.categoria", "hs_relatorio_legislacao.descricao" },
new Field( "hs_relatorio_legislacao.hs_relatorio_id" ).isEqual( relatorioId ),
new String[]{ "hs_relatorio_legislacao.categoria DESC" },
null,
null,
null );
Virtual2DArray array = EXECUTER.executeQuery( select );
Vector<String> diplomasGerais = new Vector<String>();
Vector<String> nomes = new Vector<String>();
Vector<Vector<String>> diplomas = new Vector<Vector<String>>();
String last = null;
for( int n = 0; n < array.columnLength(); n++ )
{
String categoria = ( String ) array.get( n, 0 );
String descricao = ( String ) array.get( n, 1 );
if( categoria == null || categoria.trim().length() == 0 )
{
diplomasGerais.add( descricao );
}
else
{
if( !categoria.equals( last ) )
{
nomes.add( categoria );
diplomas.add( new Vector<String>() );
}
diplomas.lastElement().add( descricao );
}
}
LegislacaoAplicavelToPrint legislacao =
new LegislacaoAplicavelToPrint( diplomasGerais, nomes.toArray( new String[ nomes.size() ] ),
diplomas.toArray( new Vector[ diplomas.size() ] ));
return legislacao;
}
public NormalizacaoToPrint getNormalizacaoAplicavel( Integer relatorioId )
throws Exception
{
Select select =
new Select2(
new String[]{ "hs_relatorio_normalizacao" },
new Integer[]{},
new Expression[]{},
new String[]{ "hs_relatorio_normalizacao.portuguesa", "hs_relatorio_normalizacao.descricao" },
new Field( "hs_relatorio_normalizacao.hs_relatorio_id" ).isEqual( relatorioId ),
new String[]{ "hs_relatorio_normalizacao.portuguesa", "hs_relatorio_normalizacao.descricao" },
null,
null,
null );
Virtual2DArray array = EXECUTER.executeQuery( select );
Vector<String> portuguesas = new Vector<String>();
Vector<String> internacionais = new Vector<String>();
for( int n = 0; n < array.columnLength(); n++ )
{
Boolean portuguesa = ( Boolean ) array.get( n, 0 );
String descricao = ( String ) array.get( n, 1 );
if( portuguesa )
{
portuguesas.add( descricao );
}
else
{
internacionais.add( descricao );
}
}
return new NormalizacaoToPrint( portuguesas, internacionais );
}
public Vector<AreaToPrint> getAreasToPrintByPlanoId( Integer planoId, boolean validacaoDl, boolean validacaoDns )
throws Exception
{

@ -12,10 +12,13 @@ public class RelatorioToPrint
protected DataToPrint dataHs;
protected DataToPrint dataProximaHs;
protected LegislacaoAplicavelToPrint legislacaoAplicavel;
protected NormalizacaoToPrint normalizacaoAplicavel;
protected Vector<AreaToPrint> areas;
public RelatorioToPrint( EmpresaToPrint empresa, DataToPrint dataRelatorio,
DataToPrint dataHs, DataToPrint dataProximaHs, LegislacaoAplicavelToPrint legislacaoAplicavel,
DataToPrint dataHs, DataToPrint dataProximaHs,
LegislacaoAplicavelToPrint legislacaoAplicavel,
NormalizacaoToPrint normalizacaoAplicavel,
Vector<AreaToPrint> areas )
{
super();
@ -24,6 +27,7 @@ public class RelatorioToPrint
this.dataHs = dataHs;
this.dataProximaHs = dataProximaHs;
this.legislacaoAplicavel = legislacaoAplicavel;
this.normalizacaoAplicavel = normalizacaoAplicavel;
this.areas = areas;
}
@ -102,6 +106,7 @@ public class RelatorioToPrint
planoElement.addContent( dataHs.toJdomElement() );
planoElement.addContent( dataProximaHs.toJdomElement() );
planoElement.addContent( legislacaoAplicavel.toJdomElement() );
planoElement.addContent( normalizacaoAplicavel.toJdomElement() );
if( areas.size() > 0 )
{
Element conclusoesElement = new Element( "conclusoes" );
@ -114,5 +119,15 @@ public class RelatorioToPrint
return planoElement;
}
public NormalizacaoToPrint getNormalizacaoAplicavel()
{
return normalizacaoAplicavel;
}
public void setNormalizacaoAplicavel( NormalizacaoToPrint normalizacaoAplicavel )
{
this.normalizacaoAplicavel = normalizacaoAplicavel;
}
}

Loading…
Cancel
Save