From 264e71f9cf1dcfc073576651b8c4aaf7e6fdbaf5 Mon Sep 17 00:00:00 2001 From: Frederico Palma Date: Wed, 17 Dec 2008 17:29:12 +0000 Subject: [PATCH] git-svn-id: https://svn.coded.pt/svn/SIPRP@850 bb69d46d-e84e-40c8-a05a-06db0d633741 --- .../print/PlanoActuacaoPrintDataProvider.java | 122 ++++++++++++++++-- .../print/PlanoActuacaoToPrint.java | 16 +-- .../planoactuacao/print/plano_actuacao.xsl | 10 +- .../siprp/planoactuacao/print/teste_input.xml | 4 +- 4 files changed, 129 insertions(+), 23 deletions(-) diff --git a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoPrintDataProvider.java b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoPrintDataProvider.java index 9af24d84..bd0a9862 100644 --- a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoPrintDataProvider.java +++ b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoPrintDataProvider.java @@ -1,10 +1,18 @@ package siprp.planoactuacao.print; +import java.util.Date; +import java.util.Vector; + import siprp.planoactuacao.SingletonConstants; import com.evolute.utils.Singleton; +import com.evolute.utils.arrays.Virtual2DArray; import com.evolute.utils.db.DBManager; import com.evolute.utils.db.Executer; +import com.evolute.utils.sql.Expression; +import com.evolute.utils.sql.Field; +import com.evolute.utils.sql.Select; +import com.evolute.utils.sql.Select2; public class PlanoActuacaoPrintDataProvider @@ -40,13 +48,111 @@ public class PlanoActuacaoPrintDataProvider public PlanoActuacaoToPrint getPlanoToPrint( Integer id ) throws Exception { - PlanoActuacaoToPrint plano = new PlanoActuacaoToPrint( null, null, null, null, null ); -// Select select = -// new Select2( -// new String[]{ "planos_actuacao" }, -// new Integer[]{}, -// new Expression[]{}, -// new String[]{ }) - return plano; + + Select select = + new Select2( + new String[]{ "planos_actuacao" }, + new Integer[]{}, + new Expression[]{}, + new String[]{ "empresa_id", "nome_empresa", + "estabelecimento_id", "nome_estabelecimento", + "data_relatorio", "data_visita" }, + new Field( "id" ).isEqual( id ), + null, + null, + null, + null ); + Virtual2DArray array = WEB_EXECUTER.executeQuery( select ); + Integer empresaId = ( Integer ) array.get( 0, 0 ); + String nomeEmpresa = ( String ) array.get( 0, 1 ); + Integer estabelecimentoId = ( Integer ) array.get( 0, 2 ); + String nomeEstabelecimento = ( String ) array.get( 0, 3 ); + Integer logoId = getLogotipoIdForEmpresaId( empresaId ); + Date dataRelatorio = ( Date ) array.get( 0, 4 ); + Date dataVisita = ( Date ) array.get( 0, 5 ); + 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 ), + getLegislacaoAplicavel( empresaId, estabelecimentoId ), + getAreasToPrintByPlanoId( id ) ); + return plano; + } + + public Integer getLogotipoIdForEmpresaId( Integer empresaId ) + throws Exception + { + Select select = + new Select2( + new String[]{ "empresas" }, + new Integer[]{}, + new Expression[]{}, + new String[]{ "empresa_logo_id" }, + new Field( "id" ).isEqual( empresaId ), + null, + null, + null, + null ); + Virtual2DArray array = LOCAL_EXECUTER.executeQuery( select ); + return ( Integer ) array.get( 0, 0 ); + } + + public LegislacaoAplicavelToPrint getLegislacaoAplicavel( Integer empresaId, Integer estabelecimentoId ) + throws Exception + { + LegislacaoAplicavelToPrint legislacao = new LegislacaoAplicavelToPrint( new Vector() ); + return legislacao; + } + + public Vector getAreasToPrintByPlanoId( Integer planoId ) + throws Exception + { + Vector areas = new Vector(); + Select select = + new Select2( + new String[]{ "plano_areas" }, + new Integer[]{}, + new Expression[]{}, + new String[]{ "id", "descricao" }, + new Field( "plano_id" ).isEqual( planoId ), + new String[]{ "id" }, + null, + null, + null ); + Virtual2DArray array = WEB_EXECUTER.executeQuery( select ); + for( int n = 0; n < array.columnLength(); n++ ) + { + Integer areaId = ( Integer ) array.get( n, 0 ); + String areaDescricao = ( String ) array.get( n, 1 ); + areas.add( new AreaToPrint( areaDescricao, null ) ); + } + return areas; + } + + public Vector getRiscosToPrintByAreaId( Integer areaId ) + throws Exception + { + Vector areas = new Vector(); + Select select = + new Select2( + new String[]{ "plano_riscos" }, + new Integer[]{}, + new Expression[]{}, + new String[]{ "id", "descricao", "valor", "responsavel_execucao", + "recursos_necessarios", ""}, + new Field( "area_id" ).isEqual( areaId ).and( + new Field( "activo" ).isEqual( "y" ) ), + new String[]{ "id" }, + null, + null, + null ); + Virtual2DArray array = WEB_EXECUTER.executeQuery( select ); + for( int n = 0; n < array.columnLength(); n++ ) + { + } + return areas; } } diff --git a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoToPrint.java b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoToPrint.java index 975d59c1..8471f403 100644 --- a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoToPrint.java +++ b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/PlanoActuacaoToPrint.java @@ -8,18 +8,18 @@ public class PlanoActuacaoToPrint implements PrintableInterface { protected EmpresaToPrint empresa; - protected DataToPrint data; + protected DataToPrint dataRelatorio; protected DataToPrint dataHs; protected LegislacaoAplicavelToPrint legislacaoAplicavel; protected Vector areas; - public PlanoActuacaoToPrint( EmpresaToPrint empresa, DataToPrint data, + public PlanoActuacaoToPrint( EmpresaToPrint empresa, DataToPrint dataRelatorio, DataToPrint dataHs, LegislacaoAplicavelToPrint legislacaoAplicavel, Vector areas ) { super(); this.empresa = empresa; - this.data = data; + this.dataRelatorio = dataRelatorio; this.dataHs = dataHs; this.legislacaoAplicavel = legislacaoAplicavel; this.areas = areas; @@ -35,14 +35,14 @@ public class PlanoActuacaoToPrint this.empresa = empresa; } - public DataToPrint getData() + public DataToPrint getDataRelatorio() { - return data; + return dataRelatorio; } - public void setData( DataToPrint data ) + public void setDataRelatorio( DataToPrint dataRelatorio ) { - this.data = data; + this.dataRelatorio = dataRelatorio; } public DataToPrint getDataHs() @@ -86,7 +86,7 @@ public class PlanoActuacaoToPrint { Element planoElement = new Element( "plano" ); planoElement.addContent( empresa.toJdomElement() ); - planoElement.addContent( data.toJdomElement() ); + planoElement.addContent( dataRelatorio.toJdomElement() ); planoElement.addContent( dataHs.toJdomElement() ); planoElement.addContent( legislacaoAplicavel.toJdomElement() ); if( areas.size() > 0 ) diff --git a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/plano_actuacao.xsl b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/plano_actuacao.xsl index efd1a6d4..5769d04c 100644 --- a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/plano_actuacao.xsl +++ b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/plano_actuacao.xsl @@ -123,9 +123,9 @@ text-align="center" margin-left="0.6in" space-before="0.0866in" margin-bottom="0in"> - + de - + @@ -2551,13 +2551,13 @@ + select="data-relatorio/dia" /> de + select="data-relatorio/mes-extenso" /> de + select="data-relatorio/ano" />   diff --git a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/teste_input.xml b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/teste_input.xml index 71753852..ab7d4ed2 100644 --- a/trunk/SIPRPSoft/src/siprp/planoactuacao/print/teste_input.xml +++ b/trunk/SIPRPSoft/src/siprp/planoactuacao/print/teste_input.xml @@ -7,12 +7,12 @@ ALVERCA http://apdp/siprp/auchan_jumbo_lado.jpg - + 2008 4 Abril 29 - + 2008 3