diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/EmpresaToPrint.java b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/EmpresaToPrint.java index 55e3c11b..78a298a2 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/EmpresaToPrint.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/EmpresaToPrint.java @@ -9,56 +9,22 @@ public class EmpresaToPrint protected String logotipo; protected String estabelecimento; protected String actividade; + protected String nomeAcompanhante; + protected String funcaoAcompanhante; public EmpresaToPrint( String designacaoSocial, String logotipo, - String estabelecimento, String actividade ) + String estabelecimento, String actividade, String nomeAcompanhante, + String funcaoAcompanhante ) { super(); this.designacaoSocial = designacaoSocial; this.logotipo = logotipo; this.estabelecimento = estabelecimento; this.actividade = actividade; + this.nomeAcompanhante = nomeAcompanhante; + this.funcaoAcompanhante = funcaoAcompanhante; } - public String getDesignacaoSocial() - { - return designacaoSocial; - } - - public void setDesignacaoSocial( String designacaoSocial ) - { - this.designacaoSocial = designacaoSocial; - } - - public String getLogotipo() - { - return logotipo; - } - - public void setLogotipo( String logotipo ) - { - this.logotipo = logotipo; - } - - public String getEstabelecimento() - { - return estabelecimento; - } - - public void setEstabelecimento( String estabelecimento ) - { - this.estabelecimento = estabelecimento; - } - - public String getActividade() - { - return actividade; - } - - public void setActividade( String actividade ) - { - this.actividade = actividade; - } @Override public Element toJdomElement() throws Exception @@ -76,6 +42,12 @@ public class EmpresaToPrint Element actividadeElement = new Element( "actividade" ); actividadeElement.setText( actividade ); empresaElement.addContent( actividadeElement ); + Element nomeAcompanhanteElement = new Element( "nome-acompanhante" ); + nomeAcompanhanteElement.setText( nomeAcompanhante ); + empresaElement.addContent( nomeAcompanhanteElement ); + Element funcaoAcompanhanteElement = new Element( "funcao-acompanhante" ); + funcaoAcompanhanteElement.setText( funcaoAcompanhante ); + empresaElement.addContent( funcaoAcompanhanteElement ); return empresaElement; } diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/LegislacaoAplicavelToPrint.java b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/LegislacaoAplicavelToPrint.java index 62b13c37..3861186d 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/LegislacaoAplicavelToPrint.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/LegislacaoAplicavelToPrint.java @@ -36,6 +36,9 @@ public class LegislacaoAplicavelToPrint for( int e = 0; e < nomesGruposEspecificos.length; e++ ) { Element legislacaoEspecificaElement = new Element( "legislacao-especifica" ); + Element designacaoElement = new Element( "designacao" ); + designacaoElement.setText( nomesGruposEspecificos[ e ] ); + legislacaoEspecificaElement.addContent( designacaoElement ); for( String diploma : diplomasEspecificos[ e ] ) { Element diplomaElement = new Element( "diploma" ); diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPDFCreator.java b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPDFCreator.java index 8ac7c456..139160f3 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPDFCreator.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPDFCreator.java @@ -21,16 +21,13 @@ public class RelatorioPDFCreator ByteArrayOutputStream foBaos = new ByteArrayOutputStream(); outputter.output( foDoc, foBaos ); System.out.println( new String( foBaos.toByteArray() ) ); -// byte fo[] = -// applyTemplate( -// getClass().getClassLoader().getResourceAsStream( -// RelatorioPrintDataProvider.getProvider( web ).empresaUsaPlanoAlargadoPorPlanoId( planoId ) ? -// "siprp/planoactuacao/print/plano_actuacao_alargado.xsl" -// : "siprp/planoactuacao/print/plano_actuacao.xsl" ), -// new ByteArrayInputStream( foBaos.toByteArray() ) ); -// byte pdf[] = PDFCreator.getPDFCreator().createPdfFromFo( fo ); -// return pdf; - return null; + byte fo[] = + applyTemplate( + getClass().getClassLoader().getResourceAsStream( + "siprp/higiene/relatorio/print/relatorio.xsl" ), + new ByteArrayInputStream( foBaos.toByteArray() ) ); + byte pdf[] = PDFCreator.getPDFCreator().createPdfFromFo( fo ); + return pdf; } public byte[] applyTemplate( InputStream xsl, InputStream dataStream ) throws Exception diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPrintDataProvider.java b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPrintDataProvider.java index e97f8cd3..19ec8328 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPrintDataProvider.java +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/RelatorioPrintDataProvider.java @@ -97,7 +97,8 @@ public class RelatorioPrintDataProvider }, new String[]{ "empresas.id", "empresas.designacao_social", "empresas.actividade", "estabelecimentos.id", "estabelecimentos.nome", - "hs_relatorio.data", "marcacoes_estabelecimento.data" }, + "hs_relatorio.data", "marcacoes_estabelecimento.data", + "hs_relatorio.acompanhante1", "hs_relatorio.funcao_acompanhante1" }, new Field( "hs_relatorio.id" ).isEqual( id ), null, null, @@ -112,15 +113,19 @@ public class RelatorioPrintDataProvider Integer logoId = getLogotipoIdForEmpresaId( empresaId ); Date dataRelatorio = ( Date ) array.get( 0, 5 ); Date dataVisita = ( Date ) array.get( 0, 6 ); + Date dataProximaVisita = getDataProximaVisita( estabelecimentoId, dataVisita ); + String nomeAcompanhante = ( String ) array.get( 0, 7 ); + String funcaoAcompanhante = ( String ) array.get( 0, 8 ); EmpresaToPrint empresa = new EmpresaToPrint( nomeEmpresa, "http://www.evolute.pt:13080/SIPRPImages/image?id=" + logoId, - nomeEstabelecimento, actividadeEmpresa ); + nomeEstabelecimento, actividadeEmpresa, + nomeAcompanhante, funcaoAcompanhante ); RelatorioToPrint plano = new RelatorioToPrint( empresa, dataRelatorio != null ? new DataToPrint( "data-relatorio", dataRelatorio ) : null, dataVisita != null ? new DataToPrint( "data-hs", dataVisita ) : null, - null, //TODO: proxima hs + dataProximaVisita != null ? new DataToPrint( "data-proxima-hs", dataProximaVisita ) : null, getLegislacaoAplicavel( id ), getNormalizacaoAplicavel( id ), getEquipamento( id ), @@ -128,6 +133,33 @@ public class RelatorioPrintDataProvider return plano; } + public Date getDataProximaVisita( Integer estabelecimentoId, Date dataVisita ) + throws Exception + { + Select select = + new Select2( + new String[]{ "marcacoes_estabelecimento" }, + new Integer[]{}, + new Expression[]{}, + new String[]{ "MIN( marcacoes_estabelecimento.data )" }, + new Field( "marcacoes_estabelecimento.estabelecimento_id" ).isEqual( estabelecimentoId ).and( + new Field( "marcacoes_estabelecimento.data" ).isGreater( dataVisita ) ).and( + new Field( "marcacoes_estabelecimento.estado" ).isEqual( 0 ) ), + null, + null, + null, + null ); + Virtual2DArray array = EXECUTER.executeQuery( select ); + if( array.columnLength() == 0 ) + { + return null; + } + else + { + return ( Date ) array.get( 0, 0 ); + } + } + public Integer getLogotipoIdForEmpresaId( Integer empresaId ) throws Exception { diff --git a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/relatorio.xsl b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/relatorio.xsl index 9ee15f6e..f01f4b90 100644 --- a/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/relatorio.xsl +++ b/trunk/SIPRPSoft/src/siprp/higiene/relatorio/print/relatorio.xsl @@ -212,7 +212,6 @@ select="empresa/designacao-social" /> - -     @@ -729,8 +728,9 @@ de Segurança e Higiene do Trabalho da Sociedade Ibérica de Prevenção de Riscos Profissionais Unipessoal Lda., obteve a colaboração e - acompanhamento do Sr. Carlos Beijinho - (Responsável de Segurança) na prestação de + acompanhamento do(a) Sr(a). + + () na prestação de informações relativas à actividade desenvolvida e às condições de trabalho existentes.   @@ -780,7 +780,7 @@ + select="legislacao-aplicavel/legislacao-geral/diploma"> 3.2 Legislação específica   - + + select="diploma"> 4.1 Normalização portuguesa   - + @@ -940,7 +940,7 @@ space-after="6pt"> 4.2 Normalização internacional   - + @@ -1497,7 +1497,7 @@ (devidamente calibrados):   - +