forked from Coded/SIPRP
git-svn-id: https://svn.coded.pt/svn/SIPRP@689 bb69d46d-e84e-40c8-a05a-06db0d633741
parent
aa33b59737
commit
dffe0e1d75
@ -1,22 +1,351 @@
|
|||||||
package pdf;
|
package pdf;
|
||||||
|
|
||||||
|
import java.sql.Time;
|
||||||
|
import java.util.Calendar;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
import org.jdom.Element;
|
import org.jdom.Element;
|
||||||
|
|
||||||
import analiseacidentestrabalho.AnaliseAcidente;
|
import analiseacidentestrabalho.AnaliseAcidente;
|
||||||
|
|
||||||
public class PdfGenerator
|
public class PdfGenerator
|
||||||
{
|
{
|
||||||
public PdfGenerator()
|
protected final AnaliseAcidente analiseAcidente;
|
||||||
|
|
||||||
|
public PdfGenerator( AnaliseAcidente analiseAcidente )
|
||||||
|
{
|
||||||
|
this.analiseAcidente = analiseAcidente;
|
||||||
|
}
|
||||||
|
|
||||||
|
public byte[] generatePdf()
|
||||||
{
|
{
|
||||||
|
return null;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void generatePdf( AnaliseAcidente analiseAcidente )
|
protected Element createXml()
|
||||||
{
|
{
|
||||||
Element rootElement = new Element( "AnaliseAcidente" );
|
Element rootElement = new Element( "AnaliseAcidente" );
|
||||||
Element numeroElement = new Element( "Numero" );
|
Element numeroElement = new Element( "Numero" );
|
||||||
numeroElement.setText( analiseAcidente.getAnalise_nr() );
|
numeroElement.setText( analiseAcidente.getAnalise_nr() );
|
||||||
rootElement.addContent( numeroElement );
|
rootElement.addContent( numeroElement );
|
||||||
Element dataElement = new Element( "Data" );
|
//PERGUNTAR
|
||||||
|
Date data = new Date();
|
||||||
|
rootElement.addContent( createDataElement( "Data", data ) );
|
||||||
|
rootElement.addContent( createEntidadeEmpregadoraElement() );
|
||||||
|
rootElement.addContent( createSeguroElement() );
|
||||||
|
rootElement.addContent( createEmpresaSHSTElement() );
|
||||||
|
rootElement.addContent( createAcidentadoElement() );
|
||||||
|
return rootElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createEntidadeEmpregadoraElement()
|
||||||
|
{
|
||||||
|
Element entidadeEmpregadoraElement = new Element( "EntidadeEmpregadora" );
|
||||||
|
Element identificacaoElement = new Element( "IdentificacaoCompleta" );
|
||||||
|
identificacaoElement.setText( "Companhia Portuguesa de Hipermercados, S.A., com sede na Travessa Teixeira J\u00fanior, 1 - 1300-553 Lisboa" );
|
||||||
|
entidadeEmpregadoraElement.addContent( identificacaoElement );
|
||||||
|
Element actividadeElement = new Element( "Actividade" );
|
||||||
|
actividadeElement.setText( "Com\u00e9rcio a Retalho em Supermercados e Hipermercados" );
|
||||||
|
entidadeEmpregadoraElement.addContent( actividadeElement );
|
||||||
|
Element lojaElement = new Element( "Loja" );
|
||||||
|
//PERGUNTAR
|
||||||
|
entidadeEmpregadoraElement.addContent( lojaElement );
|
||||||
|
return entidadeEmpregadoraElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createSeguroElement()
|
||||||
|
{
|
||||||
|
Element seguroElement = new Element( "Seguro" );
|
||||||
|
Element empresaElement = new Element( "Empresa" );
|
||||||
|
empresaElement.setText( "Mapfre Seguros Gerais, S.A." );
|
||||||
|
seguroElement.addContent( empresaElement );
|
||||||
|
Element apoliceElement = new Element( "Apolice" );
|
||||||
|
apoliceElement.setText( "1500591100500" );
|
||||||
|
seguroElement.addContent( apoliceElement );
|
||||||
|
return seguroElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createEmpresaSHSTElement()
|
||||||
|
{
|
||||||
|
Element empresaSHSTElement = new Element( "EmpresaSHST" );
|
||||||
|
Element identificacaoElement = new Element( "IdentificacaoCompleta" );
|
||||||
|
identificacaoElement.setText(
|
||||||
|
"SIPRP - Sociedade Ibérica de Prevenção de Riscos Profissionais Lda., "
|
||||||
|
+ "com sede no Edifício Atrium Saldanha, Praça Duque de Saldanha, 1 - 9º G"
|
||||||
|
+ " - 1050-094 Lisboa " );
|
||||||
|
empresaSHSTElement.addContent( identificacaoElement );
|
||||||
|
Element tecnicoSuperiorHSTElement = new Element( "TecnicoSuperiorHST" );
|
||||||
|
|
||||||
|
Element nomeTecnicoSuperiorHSTElement = new Element( "Nome" );
|
||||||
|
//PERGUNTAR
|
||||||
|
nomeTecnicoSuperiorHSTElement.setText( "" );
|
||||||
|
tecnicoSuperiorHSTElement.addContent( nomeTecnicoSuperiorHSTElement );
|
||||||
|
Element capElement = new Element( "CAP" );
|
||||||
|
//PERGUNTAR
|
||||||
|
capElement.setText( "" );
|
||||||
|
tecnicoSuperiorHSTElement.addContent( capElement );
|
||||||
|
empresaSHSTElement.addContent( tecnicoSuperiorHSTElement );
|
||||||
|
Element medicoTrabalhoElement = new Element( "MedicoTrabalho" );
|
||||||
|
Element nomeMedicoTrabalhoElement = new Element( "Nome" );
|
||||||
|
//PERGUNTAR
|
||||||
|
nomeMedicoTrabalhoElement.setText( "" );
|
||||||
|
medicoTrabalhoElement.addContent( nomeMedicoTrabalhoElement );
|
||||||
|
Element cedulaElement = new Element( "Cedula" );
|
||||||
|
//PERGUNTAR
|
||||||
|
cedulaElement.setText( "" );
|
||||||
|
medicoTrabalhoElement.addContent( cedulaElement );
|
||||||
|
empresaSHSTElement.addContent( medicoTrabalhoElement );
|
||||||
|
return empresaSHSTElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createAcidentadoElement()
|
||||||
|
{
|
||||||
|
Element acidentadoElement = new Element( "Acidentado" );
|
||||||
|
Element nomeElement = new Element( "Nome" );
|
||||||
|
nomeElement.setText( analiseAcidente.getNome_acidentado() );
|
||||||
|
acidentadoElement.addContent( nomeElement );
|
||||||
|
Element estabelecimentoOrigemElement = new Element( "EstabelecimentoOrigem" );
|
||||||
|
Element nomeEstabelecimentoOrigemElement = new Element( "Nome" );
|
||||||
|
//PERGUNTAR
|
||||||
|
nomeEstabelecimentoOrigemElement.setText( "" );
|
||||||
|
estabelecimentoOrigemElement.addContent( nomeEstabelecimentoOrigemElement );
|
||||||
|
acidentadoElement.addContent( estabelecimentoOrigemElement );
|
||||||
|
//PERGUNTAR
|
||||||
|
Date dataNascimento = new Date();
|
||||||
|
acidentadoElement.addContent( createDataElement( "DataNascimento", dataNascimento ) );
|
||||||
|
Element biElement = new Element( "BilheteIdentidade" );
|
||||||
|
Element numeroBiElement = new Element( "Numero" );
|
||||||
|
//PERGUNTAR
|
||||||
|
numeroBiElement.setText( "" );
|
||||||
|
biElement.addContent( numeroBiElement );
|
||||||
|
acidentadoElement.addContent( biElement );
|
||||||
|
Element moradaElement = new Element( "Morada" );
|
||||||
|
//PERGUNTAR
|
||||||
|
moradaElement.setText( "" );
|
||||||
|
acidentadoElement.addContent( moradaElement );
|
||||||
|
Element telefoneElement = new Element( "Telefone" );
|
||||||
|
//PERGUNTAR
|
||||||
|
telefoneElement.setText( "" );
|
||||||
|
acidentadoElement.addContent( telefoneElement );
|
||||||
|
//PERGUNTAR
|
||||||
|
Date dataAdmissao = new Date();
|
||||||
|
acidentadoElement.addContent( createDataElement( "DataAdmissao", dataAdmissao ) );
|
||||||
|
Element funcaoElement = new Element( "Funcao" );
|
||||||
|
//PERGUNTAR
|
||||||
|
funcaoElement.setText( "" );
|
||||||
|
acidentadoElement.addContent( funcaoElement );
|
||||||
|
Element turnoElement = new Element( "Turno" );
|
||||||
|
//PERGUNTAR
|
||||||
|
turnoElement.setText( "" );
|
||||||
|
acidentadoElement.addContent( turnoElement );
|
||||||
|
Element superiorElement = new Element( "Superior" );
|
||||||
|
Element nomeSuperiorElement = new Element( "Nome" );
|
||||||
|
//PERGUNTAR
|
||||||
|
nomeSuperiorElement.setText( "" );
|
||||||
|
superiorElement.addContent( nomeSuperiorElement );
|
||||||
|
Element emailSuperiorElement = new Element( "Email" );
|
||||||
|
//PERGUNTAR
|
||||||
|
emailSuperiorElement.setText( "" );
|
||||||
|
superiorElement.addContent( emailSuperiorElement );
|
||||||
|
acidentadoElement.addContent( superiorElement );
|
||||||
|
return acidentadoElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createAcidenteElement()
|
||||||
|
{
|
||||||
|
Element acidenteElement = new Element( "Acidente" );
|
||||||
|
Element averiguadorElement = new Element( "Averiguador" );
|
||||||
|
Element nomeAveriguadorElement = new Element( "Nome" );
|
||||||
|
//PERGUNTAR
|
||||||
|
nomeAveriguadorElement.setText( "" );
|
||||||
|
averiguadorElement.addContent( nomeAveriguadorElement );
|
||||||
|
acidenteElement.addContent( averiguadorElement );
|
||||||
|
//PERGUNTAR
|
||||||
|
Date dataOcorrencia = new Date();
|
||||||
|
acidenteElement.addContent( createDataElement( "DataOcorrencia", dataOcorrencia ) );
|
||||||
|
Time horaOcorrencia = analiseAcidente.getHora_acidente();
|
||||||
|
acidenteElement.addContent( createHoraElement( "HoraOcorrencia", horaOcorrencia ) );
|
||||||
|
Element horasTrabalhadasElement = new Element( "HorasTrabalhadas" );
|
||||||
|
//PERGUNTAR
|
||||||
|
horasTrabalhadasElement.setText( "" );
|
||||||
|
acidenteElement.addContent( horasTrabalhadasElement );
|
||||||
|
Element localElement = new Element( "Local" );
|
||||||
|
Element seccaoElement = new Element( "Seccao" );
|
||||||
|
//PERGUNTAR
|
||||||
|
seccaoElement.setText( "" );
|
||||||
|
localElement.addContent( seccaoElement );
|
||||||
|
Element localEspecificoElement = new Element( "LocalEspecifico" );
|
||||||
|
//PERGUNTAR
|
||||||
|
localEspecificoElement.setText( "" );
|
||||||
|
localElement.addContent( localEspecificoElement );
|
||||||
|
acidenteElement.addContent( localElement );
|
||||||
|
Element actividadeElement = new Element( "Actividade" );
|
||||||
|
Element descricaoActividadeElement = new Element( "Descricao" );
|
||||||
|
//PERGUNTAR
|
||||||
|
descricaoActividadeElement.setText( "" );
|
||||||
|
actividadeElement.addContent( descricaoActividadeElement );
|
||||||
|
Element objectosActividadeElement = new Element( "Objectos" );
|
||||||
|
//PERGUNTAR
|
||||||
|
objectosActividadeElement.setText( "" );
|
||||||
|
actividadeElement.addContent( objectosActividadeElement );
|
||||||
|
Element condicoesActividadeElement = new Element( "Condicoes" );
|
||||||
|
//PERGUNTAR
|
||||||
|
condicoesActividadeElement.setText( "" );
|
||||||
|
actividadeElement.addContent( condicoesActividadeElement );
|
||||||
|
acidenteElement.addContent( actividadeElement );
|
||||||
|
Element testemunhasElement = new Element( "Testemunhas" );
|
||||||
|
//PERGUNTAR
|
||||||
|
testemunhasElement.setText( "" );
|
||||||
|
acidenteElement.addContent( testemunhasElement );
|
||||||
|
Element causasElement = new Element( "Causas" );
|
||||||
|
//perguntar
|
||||||
|
causasElement.setText( "" );
|
||||||
|
acidenteElement.addContent( causasElement );
|
||||||
|
Element descricaoElement = new Element( "Descricao" );
|
||||||
|
//PERGUNTAR
|
||||||
|
descricaoElement.setText( "" );
|
||||||
|
acidenteElement.addContent( descricaoElement );
|
||||||
|
Element imagensElement = new Element( "Imagens" );
|
||||||
|
//PERGUNTAR
|
||||||
|
String imagens[] = new String[]{};
|
||||||
|
for( String imagem : imagens )
|
||||||
|
{
|
||||||
|
Element imagemElement = new Element( "Imagem" );
|
||||||
|
imagemElement.setText( imagem );
|
||||||
|
imagensElement.addContent( imagemElement );
|
||||||
|
}
|
||||||
|
acidenteElement.addContent( imagensElement );
|
||||||
|
Element conclusoesElement = new Element( "Conclusoes" );
|
||||||
|
//PERGUNTAR
|
||||||
|
conclusoesElement.setText( "" );
|
||||||
|
acidenteElement.addContent( conclusoesElement );
|
||||||
|
Element accoesTomadasElement = new Element( "AccoesTomadas" );
|
||||||
|
//PERGUNTAR
|
||||||
|
accoesTomadasElement.setText( "" );
|
||||||
|
acidenteElement.addContent( accoesTomadasElement );
|
||||||
|
Element formacaoSHSTElement = new Element( "FormacaoSHST" );
|
||||||
|
Element teveFormacaoSHSTElement = new Element( "TeveFormacao" );
|
||||||
|
//PERGUNTAR
|
||||||
|
teveFormacaoSHSTElement.setText( "" );
|
||||||
|
formacaoSHSTElement.addContent( teveFormacaoSHSTElement );
|
||||||
|
Element motivoFormacaoSHSTElement = new Element( "Motivo" );
|
||||||
|
//PERGUNTAR
|
||||||
|
motivoFormacaoSHSTElement.setText( "" );
|
||||||
|
formacaoSHSTElement.addContent( motivoFormacaoSHSTElement );
|
||||||
|
acidenteElement.addContent( formacaoSHSTElement );
|
||||||
|
Element outrasOcorrenciasMesmoPostoElement = new Element( "OutrasOcorrenciasMesmoPosto" );
|
||||||
|
Element quantidadeOutrasOcorrenciasMesmoPostoElement = new Element( "Quantidade" );
|
||||||
|
//PERGUNTAR
|
||||||
|
quantidadeOutrasOcorrenciasMesmoPostoElement.setText( "" );
|
||||||
|
outrasOcorrenciasMesmoPostoElement.addContent( quantidadeOutrasOcorrenciasMesmoPostoElement );
|
||||||
|
Element relatoriosOutrasOcorrenciasMesmoPostoElement = new Element( "Relatorios" );
|
||||||
|
//PERGUNTAR
|
||||||
|
String numerosRelatoriosOutrasOcorrenciasMesmoPosto[] = new String[]{};
|
||||||
|
for( String numeroRelatorio : numerosRelatoriosOutrasOcorrenciasMesmoPosto )
|
||||||
|
{
|
||||||
|
Element relatorioElement = new Element( "Relatorio" );
|
||||||
|
relatorioElement.setText( numeroRelatorio );
|
||||||
|
relatoriosOutrasOcorrenciasMesmoPostoElement.addContent( relatorioElement );
|
||||||
|
}
|
||||||
|
outrasOcorrenciasMesmoPostoElement.addContent( relatoriosOutrasOcorrenciasMesmoPostoElement );
|
||||||
|
acidenteElement.addContent( outrasOcorrenciasMesmoPostoElement );
|
||||||
|
Element outrasOcorrenciasOutrosTrabalhadoresElement = new Element( "OutrasOcorrenciasOutrosTrabalhadores" );
|
||||||
|
Element quantidadeOutrasOcorrenciasOutrosTrabalhadoresElement = new Element( "Quantidade" );
|
||||||
|
//PERGUNTAR
|
||||||
|
quantidadeOutrasOcorrenciasOutrosTrabalhadoresElement.setText( "" );
|
||||||
|
outrasOcorrenciasOutrosTrabalhadoresElement.addContent( quantidadeOutrasOcorrenciasOutrosTrabalhadoresElement );
|
||||||
|
Element relatoriosOutrasOcorrenciasOutrosTrabalhadoresElement = new Element( "Relatorios" );
|
||||||
|
//PERGUNTAR
|
||||||
|
String numerosRelatoriosOutrasOcorrenciasOutrosTrabalhadores[] = new String[]{};
|
||||||
|
for( String numeroRelatorio : numerosRelatoriosOutrasOcorrenciasOutrosTrabalhadores )
|
||||||
|
{
|
||||||
|
Element relatorioElement = new Element( "Relatorio" );
|
||||||
|
relatorioElement.setText( numeroRelatorio );
|
||||||
|
relatoriosOutrasOcorrenciasOutrosTrabalhadoresElement.addContent( relatorioElement );
|
||||||
|
}
|
||||||
|
outrasOcorrenciasOutrosTrabalhadoresElement.addContent( relatoriosOutrasOcorrenciasOutrosTrabalhadoresElement );
|
||||||
|
acidenteElement.addContent( outrasOcorrenciasOutrosTrabalhadoresElement );
|
||||||
|
Element lesaoElement = new Element( "Lesao" );
|
||||||
|
Element areasLesaoElement = new Element( "Areas" );
|
||||||
|
//PERGUNTAR
|
||||||
|
String areasLesao[][] = new String[][]{};
|
||||||
|
for( String area[] : areasLesao )
|
||||||
|
{
|
||||||
|
Element areaLesaoElement = new Element( "Area" );
|
||||||
|
Element nomeAreaLesaoElement = new Element( "Nome" );
|
||||||
|
nomeAreaLesaoElement.setText( area[ 0 ] );
|
||||||
|
areaLesaoElement.addContent( nomeAreaLesaoElement );
|
||||||
|
Element detalheAreaLesaoElement = new Element( "Detalhe" );
|
||||||
|
detalheAreaLesaoElement.setText( area[ 1 ] );
|
||||||
|
areaLesaoElement.addContent( detalheAreaLesaoElement );
|
||||||
|
areasLesaoElement.addContent( areaLesaoElement );
|
||||||
|
}
|
||||||
|
lesaoElement.addContent( areasLesaoElement );
|
||||||
|
Element tipoLesaoElement = new Element( "Tipo" );
|
||||||
|
//PERGUNTAR
|
||||||
|
tipoLesaoElement.setText( "" );
|
||||||
|
lesaoElement.addContent( tipoLesaoElement );
|
||||||
|
acidenteElement.addContent( lesaoElement );
|
||||||
|
Element incapacidadeElement = new Element( "Incapacidade" );
|
||||||
|
// <Incapacidade>
|
||||||
|
Element tipoIncapacidadeElement = new Element( "Tipo" );
|
||||||
|
//PERGUNTAR
|
||||||
|
tipoIncapacidadeElement.setText( "" );
|
||||||
|
incapacidadeElement.addContent( tipoIncapacidadeElement );
|
||||||
|
Element coeficienteIncapacidadeElement = new Element( "Coeficiente" );
|
||||||
|
//PERGUNTAR
|
||||||
|
coeficienteIncapacidadeElement.setText( "" );
|
||||||
|
incapacidadeElement.addContent( coeficienteIncapacidadeElement );
|
||||||
|
//PERGUNTAR
|
||||||
|
Date
|
||||||
|
// <DataAvaliacao>
|
||||||
|
// <DataRevisao>
|
||||||
|
// <PeriodoIncapacidade>
|
||||||
|
// <Inicio>
|
||||||
|
// <Ano>
|
||||||
|
// <Mes>
|
||||||
|
// <Dia>
|
||||||
|
// <Fim>
|
||||||
|
// <Ano>
|
||||||
|
// <Mes>
|
||||||
|
// <Dia>
|
||||||
|
acidenteElement.addContent( incapacidadeElement );
|
||||||
|
return acidenteElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createDataElement( String nome, Date data )
|
||||||
|
{
|
||||||
|
Element dataElement = new Element( nome );
|
||||||
|
Calendar cal = Calendar.getInstance();
|
||||||
|
cal.setTime( data );
|
||||||
|
Element anoElement = new Element( "Ano" );
|
||||||
|
anoElement.setText( "" + cal.get( Calendar.YEAR ) );
|
||||||
|
dataElement.addContent( anoElement );
|
||||||
|
Element mesElement = new Element( "Mes" );
|
||||||
|
int mes = cal.get( Calendar.MONTH ) + 1;
|
||||||
|
mesElement.setText( mes > 9 ? ( "" + mes ) : ( "0" + mes ) );
|
||||||
|
dataElement.addContent( mesElement );
|
||||||
|
Element diaElement = new Element( "Dia" );
|
||||||
|
int dia = cal.get( Calendar.DAY_OF_MONTH );
|
||||||
|
diaElement.setText( dia > 9 ? ( "" + dia ) : ( "0" + dia ) );
|
||||||
|
dataElement.addContent( diaElement );
|
||||||
|
return dataElement;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected Element createHoraElement( String nome, Date hora )
|
||||||
|
{
|
||||||
|
Element horaElement = new Element( nome );
|
||||||
|
Calendar cal = Calendar.getInstance();
|
||||||
|
cal.setTime( hora );
|
||||||
|
Element horasElement = new Element( "Horas" );
|
||||||
|
int horas = cal.get( Calendar.HOUR_OF_DAY );
|
||||||
|
horasElement.setText( horas > 9 ? ( "" + horas ) : ( "0" + horas ) );
|
||||||
|
horaElement.addContent( horasElement );
|
||||||
|
Element minutosElement = new Element( "Minutos" );
|
||||||
|
int minutos = cal.get( Calendar.MINUTE );
|
||||||
|
minutosElement.setText( minutos > 9 ? ( "" + minutos ) : ( "0" + minutos ) );
|
||||||
|
horaElement.addContent( minutosElement );
|
||||||
|
return horaElement;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in new issue