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

0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
Frederico Palma 17 years ago
parent 8b55bbd32c
commit 7226a51436

@ -56,7 +56,8 @@ public class PlanoActuacaoPrintDataProvider
new Expression[]{},
new String[]{ "empresa_id", "nome_empresa",
"estabelecimento_id", "nome_estabelecimento",
"data_relatorio", "data_visita" },
"data_relatorio", "data_visita", "observacoes_dl",
"observacoes_dns" },
new Field( "id" ).isEqual( id ),
null,
null,
@ -70,15 +71,19 @@ public class PlanoActuacaoPrintDataProvider
Integer logoId = getLogotipoIdForEmpresaId( empresaId );
Date dataRelatorio = ( Date ) array.get( 0, 4 );
Date dataVisita = ( Date ) array.get( 0, 5 );
String observacoesDl = ( String ) array.get( 0, 6 );
String observacoesDns = ( String ) array.get( 0, 7 );
EmpresaToPrint empresa = new EmpresaToPrint( nomeEmpresa, "http://apdp/siprp/auchan_jumbo_lado.jpg",
nomeEstabelecimento );
PlanoActuacaoToPrint plano =
new PlanoActuacaoToPrint(
empresa,
new DataToPrint( "data-relatorio", dataRelatorio ),
new DataToPrint( "data-hs", dataVisita ),
dataRelatorio != null ? new DataToPrint( "data-relatorio", dataRelatorio ) : null,
dataVisita != null ? new DataToPrint( "data-hs", dataVisita ) : null,
getLegislacaoAplicavel( empresaId, estabelecimentoId ),
getAreasToPrintByPlanoId( id ) );
getAreasToPrintByPlanoId( id ),
observacoesDl,
observacoesDns );
return plano;
}
@ -127,7 +132,7 @@ public class PlanoActuacaoPrintDataProvider
{
Integer areaId = ( Integer ) array.get( n, 0 );
String areaDescricao = ( String ) array.get( n, 1 );
areas.add( new AreaToPrint( areaDescricao, null ) );
areas.add( new AreaToPrint( areaDescricao, getRiscosToPrintByAreaId( areaId ) ) );
}
return areas;
}
@ -135,14 +140,15 @@ public class PlanoActuacaoPrintDataProvider
public Vector<RiscoToPrint> getRiscosToPrintByAreaId( Integer areaId )
throws Exception
{
Vector<RiscoToPrint> areas = new Vector<RiscoToPrint>();
Vector<RiscoToPrint> riscos = new Vector<RiscoToPrint>();
Select select =
new Select2(
new String[]{ "plano_riscos" },
new Integer[]{},
new Expression[]{},
new String[]{ "id", "descricao", "valor", "responsavel_execucao",
"recursos_necessarios", ""},
"recursos_necessarios", "data_inicio", "data_fim",
"parecer_dl", "parecer_dns", "verificacao_siprp"},
new Field( "area_id" ).isEqual( areaId ).and(
new Field( "activo" ).isEqual( "y" ) ),
new String[]{ "id" },
@ -152,7 +158,81 @@ public class PlanoActuacaoPrintDataProvider
Virtual2DArray array = WEB_EXECUTER.executeQuery( select );
for( int n = 0; n < array.columnLength(); n++ )
{
Integer id = ( Integer ) array.get( n, 0 );
String descricao = ( String ) array.get( n, 1 );
Integer valor = ( Integer ) array.get( n, 2 );
String responsavelExecucao = ( String ) array.get( n, 3 );
String recursosNecessarios = ( String ) array.get( n, 4 );
Date dataInicio = ( Date ) array.get( n, 5 );
Date dataFim = ( Date ) array.get( n, 6 );
String parecerDl = ( String ) array.get( n, 7 );
String parecerDns = ( String ) array.get( n, 8 );
String verificacaoSiprp = ( String ) array.get( n, 9 );
riscos.add(
new RiscoToPrint(
descricao,
valor,
getMedidasToPrintByRiscoId( id ),
responsavelExecucao,
recursosNecessarios,
dataInicio != null ? new DataToPrint( "data-prevista-inicio", dataInicio ) : null,
dataFim != null ? new DataToPrint( "data-prevista-conclusao", dataFim ) : null,
parecerDl,
parecerDns,
verificacaoSiprp ) );
}
return areas;
return riscos;
}
public Vector<MedidaToPrint> getMedidasToPrintByRiscoId( Integer riscoId )
throws Exception
{
Vector<MedidaToPrint> medidas = new Vector<MedidaToPrint>();
Select select =
new Select2(
new String[]{ "plano_medidas" },
new Integer[]{},
new Expression[]{},
new String[]{ "id", "descricao" },
new Field( "risco_id" ).isEqual( riscoId ),
new String[]{ "id" },
null,
null,
null );
Virtual2DArray array = WEB_EXECUTER.executeQuery( select );
for( int n = 0; n < array.columnLength(); n++ )
{
Integer id = ( Integer ) array.get( n, 0 );
String descricao = ( String ) array.get( n, 1 );
medidas.add(
new MedidaToPrint(
descricao,
getPostosToPrintByMedidaId( id ) ) );
}
return medidas;
}
public Vector<PostoToPrint> getPostosToPrintByMedidaId( Integer medidaId )
throws Exception
{
Vector<PostoToPrint> postos = new Vector<PostoToPrint>();
Select select =
new Select2(
new String[]{ "plano_postos_trabalho" },
new Integer[]{},
new Expression[]{},
new String[]{ "id", "descricao" },
new Field( "medida_id" ).isEqual( medidaId ),
new String[]{ "id" },
null,
null,
null );
Virtual2DArray array = WEB_EXECUTER.executeQuery( select );
for( int n = 0; n < array.columnLength(); n++ )
{
String descricao = ( String ) array.get( n, 1 );
postos.add( new PostoToPrint( descricao ) );
}
return postos;
}
}

@ -12,10 +12,12 @@ public class PlanoActuacaoToPrint
protected DataToPrint dataHs;
protected LegislacaoAplicavelToPrint legislacaoAplicavel;
protected Vector<AreaToPrint> areas;
protected String observacoesDl;
protected String observacoesDns;
public PlanoActuacaoToPrint( EmpresaToPrint empresa, DataToPrint dataRelatorio,
DataToPrint dataHs, LegislacaoAplicavelToPrint legislacaoAplicavel,
Vector<AreaToPrint> areas )
Vector<AreaToPrint> areas, String observacoesDl, String observacoesDns )
{
super();
this.empresa = empresa;
@ -23,6 +25,8 @@ public class PlanoActuacaoToPrint
this.dataHs = dataHs;
this.legislacaoAplicavel = legislacaoAplicavel;
this.areas = areas;
this.observacoesDl = observacoesDl;
this.observacoesDns = observacoesDns;
}
public EmpresaToPrint getEmpresa()
@ -98,7 +102,33 @@ public class PlanoActuacaoToPrint
}
planoElement.addContent( conclusoesElement );
}
Element observacoesDlElement = new Element( "observacoes-dl" );
observacoesDlElement.setText( observacoesDl );
planoElement.addContent( observacoesDl );
Element observacoesDnsElement = new Element( "observacoes-dns" );
observacoesDnsElement.setText( observacoesDns );
planoElement.addContent( observacoesDns );
return planoElement;
}
public String getObservacoesDl()
{
return observacoesDl;
}
public void setObservacoesDl( String observacoesDl )
{
this.observacoesDl = observacoesDl;
}
public String getObservacoesDns()
{
return observacoesDns;
}
public void setObservacoesDns( String observacoesDns )
{
this.observacoesDns = observacoesDns;
}
}

@ -14,16 +14,14 @@ public class RiscoToPrint
protected String recursos;
protected DataToPrint dataPrevistaInicio;
protected DataToPrint dataPrevistaConclusao;
protected DataToPrint dataPropostaDns;
protected DataToPrint dataConclusao;
protected String parecerDl;
protected String parecerDns;
protected String verificacaoSiprp;
public RiscoToPrint( String descricao, Integer valor,
Vector<MedidaToPrint> medidas, String responsavel, String recursos,
DataToPrint dataPrevistaInicio, DataToPrint dataPrevistaConclusao,
DataToPrint dataPropostaDns, DataToPrint dataConclusao,
String parecerDl, String parecerDns )
String parecerDl, String parecerDns, String verificacaoSiprp )
{
super();
this.descricao = descricao;
@ -33,10 +31,9 @@ public class RiscoToPrint
this.recursos = recursos;
this.dataPrevistaInicio = dataPrevistaInicio;
this.dataPrevistaConclusao = dataPrevistaConclusao;
this.dataPropostaDns = dataPropostaDns;
this.dataConclusao = dataConclusao;
this.parecerDl = parecerDl;
this.parecerDns = parecerDns;
this.verificacaoSiprp = verificacaoSiprp;
}
@Override
@ -67,20 +64,15 @@ public class RiscoToPrint
{
riscoElement.addContent( dataPrevistaConclusao.toJdomElement() );
}
if( dataPropostaDns != null )
{
riscoElement.addContent( dataPropostaDns.toJdomElement() );
}
if( dataConclusao != null )
{
riscoElement.addContent( dataConclusao.toJdomElement() );
}
Element parecerDlElement = new Element( "parecer-dl" );
parecerDlElement.setText( parecerDl );
riscoElement.addContent( parecerDlElement );
Element parecerDnsElement = new Element( "parecer-dns" );
parecerDnsElement.setText( parecerDns );
riscoElement.addContent( parecerDnsElement );
Element verificacaoSiprpElement = new Element( "verificacao-siprp" );
verificacaoSiprpElement.setText( verificacaoSiprp );
riscoElement.addContent( verificacaoSiprpElement );
return riscoElement;
}
@ -159,26 +151,6 @@ public class RiscoToPrint
this.dataPrevistaConclusao = dataPrevistaConclusao;
}
public DataToPrint getDataPropostaDns()
{
return dataPropostaDns;
}
public void setDataPropostaDns( DataToPrint dataPropostaDns )
{
this.dataPropostaDns = dataPropostaDns;
}
public DataToPrint getDataConclusao()
{
return dataConclusao;
}
public void setDataConclusao( DataToPrint dataConclusao )
{
this.dataConclusao = dataConclusao;
}
public String getParecerDl()
{
return parecerDl;
@ -199,4 +171,14 @@ public class RiscoToPrint
this.parecerDns = parecerDns;
}
public String getVerificacaoSiprp()
{
return verificacaoSiprp;
}
public void setVerificacaoSiprp( String verificacaoSiprp )
{
this.verificacaoSiprp = verificacaoSiprp;
}
}

@ -5,6 +5,12 @@ import java.io.ByteArrayOutputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import org.jdom.Document;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;
import siprp.planoactuacao.db.PlanoActuacaoDBInit;
import com.evolute.utils.fop.PDFCreator;
import com.evolute.utils.xml.XSLTransformer;
@ -19,18 +25,31 @@ public class TestPrint
public void test()
throws Exception
{
PlanoActuacaoDBInit.initDB( "postgres", "Typein" );
PlanoActuacaoToPrint plano = PlanoActuacaoPrintDataProvider.getProvider().getPlanoToPrint( 6 );
Document foDoc = new Document( plano.toJdomElement() );
Format pretty = Format.getPrettyFormat();
pretty.setIndent("\t");
XMLOutputter outputter = new XMLOutputter(pretty);
ByteArrayOutputStream foBaos = new ByteArrayOutputStream();
outputter.output( foDoc, foBaos );
FileOutputStream fos = new FileOutputStream( "/home/fpalma/Desktop/in.xml" );
fos.write( foBaos.toByteArray() );
fos.close();
byte fo[] = applyTemplate(
"siprp/planoactuacao/print/plano_actuacao.xsl",
// getClass().getClassLoader().getResourceAsStream( "siprp/planoactuacao/plano_actuacao.xsl" ),
"siprp/planoactuacao/print/teste_input.xml" );
// "siprp/planoactuacao/print/plano_actuacao.xsl",
getClass().getClassLoader().getResourceAsStream( "siprp/planoactuacao/print/plano_actuacao.xsl" ),
// "siprp/planoactuacao/print/teste_input.xml" );
new ByteArrayInputStream( foBaos.toByteArray() ) );
// new ByteArrayInputStream( "<?xml version=\"1.0\" encoding=\"UTF-8\"?><plano></plano>".getBytes() ) );
// System.out.println( new String( fo ) );
createPDFFile( fo, "/home/fpalma/Desktop/out.pdf" );
// createPDFFile( fo, "c:/Documents and Settings/Frederico/Ambiente de Trabalho/out.pdf" );
// FileOutputStream fos = new FileOutputStream( "/home/fpalma/Desktop/out.xml" );
// fos.write( fo );
// fos.close();
fos = new FileOutputStream( "/home/fpalma/Desktop/out.xml" );
fos.write( fo );
fos.close();
}
public void createPDFFile( byte fo[], String path )

File diff suppressed because it is too large Load Diff

@ -123,7 +123,8 @@
text-align="center" margin-left="0.6in" space-before="0.0866in"
margin-bottom="0in">
<fo:inline color="#000000">
<xsl:value-of select="data-relatorio/mes-extenso" />
<xsl:value-of
select="data-relatorio/mes-extenso" />
de
<xsl:value-of select="data-relatorio/ano" />
</fo:inline>
@ -2403,10 +2404,9 @@
<fo:table-column column-width="0.9847in" />
<fo:table-column column-width="0.7875in" />
<fo:table-column column-width="0.6889in" />
<fo:table-column column-width="0.6403in" />
<fo:table-column column-width="0.741in" />
<fo:table-column column-width="0.5903in" />
<fo:table-column column-width="0.9063in" />
<fo:table-column column-width="1.3813in" />
<fo:table-body>
<fo:table-row>
<fo:table-cell
@ -2423,7 +2423,7 @@
</fo:block>
</fo:table-cell>
<fo:table-cell
number-columns-spanned="7" padding-bottom="0in"
number-columns-spanned="6" padding-bottom="0in"
padding-left="0.0486in" padding-top="0in"
display-align="after" border="none" writing-mode="lr-tb"
padding-right="0.0486in">
@ -2440,7 +2440,7 @@
</fo:table-row>
<fo:table-row>
<fo:table-cell
number-columns-spanned="12" padding-bottom="0in"
number-columns-spanned="11" padding-bottom="0in"
padding-left="0.0493in" padding-top="0in"
display-align="before" border="none" writing-mode="lr-tb"
padding-right="0.0493in">
@ -2454,7 +2454,7 @@
</fo:table-row>
<fo:table-row>
<fo:table-cell
number-columns-spanned="12" padding-bottom="0in"
number-columns-spanned="11" padding-bottom="0in"
padding-left="0.0493in" padding-top="0in"
display-align="before" border="none" writing-mode="lr-tb"
padding-right="0.0493in">
@ -2467,7 +2467,7 @@
</fo:table-row>
<fo:table-row>
<fo:table-cell
number-columns-spanned="12" padding-bottom="0in"
number-columns-spanned="11" padding-bottom="0in"
padding-left="0.0493in" padding-top="0in"
display-align="before" border="none" writing-mode="lr-tb"
padding-right="0.0493in">
@ -2496,20 +2496,20 @@
</fo:table-row>
<fo:table-row>
<fo:table-cell
number-columns-spanned="12" padding-bottom="0in"
number-columns-spanned="11" padding-bottom="0in"
padding-left="0.0493in" padding-top="0in"
display-align="before" border="none" writing-mode="lr-tb"
padding-right="0.0493in">
<fo:block font-size="6pt"
text-align="start" margin-top="0.2in"
margin-bottom="0in" font-weight="bold">
text-align="start" margin-top="0.2in" margin-bottom="0in"
font-weight="bold">
 
</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row>
<fo:table-cell
number-columns-spanned="7" padding-bottom="0in"
number-columns-spanned="6" padding-bottom="0in"
padding-left="0.0493in" padding-top="0in"
display-align="before" border="none" writing-mode="lr-tb"
padding-right="0.0493in">
@ -2565,13 +2565,13 @@
</fo:table-row>
<fo:table-row>
<fo:table-cell
number-columns-spanned="12" padding-bottom="0in"
number-columns-spanned="11" padding-bottom="0in"
padding-left="0.0493in" padding-top="0in"
display-align="before" border="none" writing-mode="lr-tb"
padding-right="0.0493in">
<fo:block font-size="6pt"
text-align="start" margin-top="0.2in"
margin-bottom="0in" font-weight="bold">
text-align="start" margin-top="0.2in" margin-bottom="0in"
font-weight="bold">
 
</fo:block>
</fo:table-cell>
@ -2683,9 +2683,9 @@
background-color="#ccffff" writing-mode="lr-tb"
padding-right="0.0493in" border-right="none">
<fo:block font-size="9pt"
text-align="justify" line-height="115%" margin-top="0in"
margin-bottom="0.139in" font-weight="bold">
Data proposta pelo DNS
text-align="start" line-height="115%" margin-top="0in"
margin-bottom="0.139in" color="#000000" font-weight="bold">
Parecer DL
</fo:block>
</fo:table-cell>
<fo:table-cell padding-bottom="0in"
@ -2693,11 +2693,12 @@
border-bottom="0.0139in solid #000000" padding-top="0in"
border-top="0.0139in solid #000000" display-align="center"
background-color="#ccffff" writing-mode="lr-tb"
padding-right="0.0493in" border-right="none">
padding-right="0.0493in"
border-right="0.0139in solid #000000">
<fo:block font-size="9pt"
text-align="justify" line-height="115%" margin-top="0in"
margin-bottom="0.139in" font-weight="bold">
Data de Conclusão
Parecer DNS
</fo:block>
</fo:table-cell>
<fo:table-cell padding-bottom="0in"
@ -2706,23 +2707,10 @@
border-top="0.0139in solid #000000" display-align="center"
background-color="#ccffff" writing-mode="lr-tb"
padding-right="0.0493in" border-right="none">
<fo:block font-size="9pt"
text-align="start" line-height="115%" margin-top="0in"
margin-bottom="0.139in" color="#000000" font-weight="bold">
Parecer DL
</fo:block>
</fo:table-cell>
<fo:table-cell padding-bottom="0in"
padding-left="0.0493in" border-left="0.0139in solid #000000"
border-bottom="0.0139in solid #000000" padding-top="0in"
border-top="0.0139in solid #000000" display-align="center"
background-color="#ccffff" writing-mode="lr-tb"
padding-right="0.0493in"
border-right="0.0139in solid #000000">
<fo:block font-size="9pt"
text-align="justify" line-height="115%" margin-top="0in"
margin-bottom="0.139in" font-weight="bold">
Parecer DNS
Verificação SIPRP
</fo:block>
</fo:table-cell>
</fo:table-row>
@ -2765,13 +2753,12 @@
column-width="0.7875in" />
<fo:table-column
column-width="0.6889in" />
<fo:table-column
column-width="0.6403in" />
<fo:table-column column-width="0.741in" />
<fo:table-column
column-width="0.5903in" />
<fo:table-column
column-width="0.9063in" />
<fo:table-column
column-width="1.3813in" />
<fo:table-body>
<fo:table-row>
<fo:table-cell
@ -2914,41 +2901,21 @@
<xsl:value-of
select="$risco-rows" />
</xsl:attribute>
<fo:block
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="format-number(../../data-prevista-inicio/dia,'00')" />
/
<xsl:value-of
select="format-number(../../data-prevista-inicio/mes,'00')" />
/
<xsl:value-of
select="../../data-prevista-inicio/ano" />
</fo:block>
</fo:table-cell>
<fo:table-cell
padding-bottom="0in" padding-left="0.0493in"
padding-top="0in" display-align="center"
writing-mode="lr-tb" padding-right="0.0493in"
border="0.0139in solid #000000">
<xsl:attribute
name="number-rows-spanned">
<xsl:value-of
select="$risco-rows" />
</xsl:attribute>
<fo:block
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="format-number(../../data-prevista-conclusao/dia,'00')" />
/
<xsl:value-of
select="format-number(../../data-prevista-conclusao/mes,'00')" />
/
<xsl:value-of
select="../../data-prevista-conclusao/ano" />
</fo:block>
<xsl:if
test="../../data-prevista-inicio">
<fo:block
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="format-number(../../data-prevista-inicio/dia,'00')" />
/
<xsl:value-of
select="format-number(../../data-prevista-inicio/mes,'00')" />
/
<xsl:value-of
select="../../data-prevista-inicio/ano" />
</fo:block>
</xsl:if>
</fo:table-cell>
<fo:table-cell
padding-bottom="0in" padding-left="0.0493in"
@ -2960,18 +2927,21 @@
<xsl:value-of
select="$risco-rows" />
</xsl:attribute>
<fo:block
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="format-number(../../data-proposta-dns/dia,'00')" />
/
<xsl:value-of
select="format-number(../../data-proposta-dns/mes,'00')" />
/
<xsl:value-of
select="../../data-proposta-dns/ano" />
</fo:block>
<xsl:if
test="../../data-prevista-conclusao">
<fo:block
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="format-number(../../data-prevista-conclusao/dia,'00')" />
/
<xsl:value-of
select="format-number(../../data-prevista-conclusao/mes,'00')" />
/
<xsl:value-of
select="../../data-prevista-conclusao/ano" />
</fo:block>
</xsl:if>
</fo:table-cell>
<fo:table-cell
padding-bottom="0in" padding-left="0.0493in"
@ -2987,13 +2957,7 @@
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="format-number(../../data-conclusao/dia,'00')" />
/
<xsl:value-of
select="format-number(../../data-conclusao/mes,'00')" />
/
<xsl:value-of
select="../../data-conclusao/ano" />
select="../../parecer-dl" />
</fo:block>
</fo:table-cell>
<fo:table-cell
@ -3010,7 +2974,7 @@
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="../../parecer-dl" />
select="../../parecer-dns" />
</fo:block>
</fo:table-cell>
<fo:table-cell
@ -3027,7 +2991,7 @@
font-size="9pt" text-align="center" line-height="130%"
margin-top="0in" margin-bottom="0in">
<xsl:value-of
select="../../parecer-dns" />
select="../../verificacao-siprp" />
</fo:block>
</fo:table-cell>
</xsl:if>

@ -77,24 +77,15 @@
<mes-extenso>Maio</mes-extenso>
<dia>1</dia>
</data-prevista-conclusao>
<data-proposta-dns>
<ano>2008</ano>
<mes>5</mes>
<mes-extenso>Maio</mes-extenso>
<dia>1</dia>
</data-proposta-dns>
<data-conclusao>
<ano>2009</ano>
<mes>5</mes>
<mes-extenso>Maio</mes-extenso>
<dia>1</dia>
</data-conclusao>
<parecer-dl>OK</parecer-dl>
<parecer-dns>OK</parecer-dns>
<verificacao-siprp>OK</verificacao-siprp>
</risco>
</area>
<area>
<designacao>&#xc1;rea Comercial</designacao>
</area>
</conclusoes>
<observacoes_dl>1</observacoes_dl>
<observacoes_dns>2</observacoes_dns>
</plano>
Loading…
Cancel
Save