|
|
|
|
@ -11,36 +11,47 @@ import org.jdom.Document;
|
|
|
|
|
import org.jdom.Element;
|
|
|
|
|
import org.jdom.output.XMLOutputter;
|
|
|
|
|
|
|
|
|
|
import com.evolute.utils.fop.FOPCreator;
|
|
|
|
|
import com.evolute.utils.fop.PDFCreator;
|
|
|
|
|
|
|
|
|
|
import analiseacidentestrabalho.Acidentado;
|
|
|
|
|
import analiseacidentestrabalho.AnaliseAcidente;
|
|
|
|
|
import analiseacidentestrabalho.Causa;
|
|
|
|
|
import analiseacidentestrabalho.Estabelecimento;
|
|
|
|
|
import analiseacidentestrabalho.Medida;
|
|
|
|
|
import analiseacidentestrabalho.Recomendacao;
|
|
|
|
|
import analiseacidentestrabalho.Seccao;
|
|
|
|
|
import analiseacidentestrabalho.Utilizador;
|
|
|
|
|
|
|
|
|
|
import com.evolute.utils.fop.FOPCreator;
|
|
|
|
|
import com.evolute.utils.fop.PDFCreator;
|
|
|
|
|
|
|
|
|
|
public class PdfGenerator
|
|
|
|
|
{
|
|
|
|
|
protected final Utilizador utilizador;
|
|
|
|
|
protected final Estabelecimento estabelecimento;
|
|
|
|
|
protected final Utilizador tecnicoSuperior;
|
|
|
|
|
protected final Utilizador medico;
|
|
|
|
|
protected final AnaliseAcidente analiseAcidente;
|
|
|
|
|
protected final Acidentado acidentado;
|
|
|
|
|
protected final Seccao seccao;
|
|
|
|
|
protected final Recomendacao recomendacoes[];
|
|
|
|
|
protected final Medida medidas[];
|
|
|
|
|
protected final Causa causa;
|
|
|
|
|
|
|
|
|
|
public PdfGenerator(
|
|
|
|
|
Utilizador utilizador,
|
|
|
|
|
Estabelecimento estabelecimento,
|
|
|
|
|
Utilizador tecnicoSuperior,
|
|
|
|
|
Utilizador medico,
|
|
|
|
|
AnaliseAcidente analiseAcidente,
|
|
|
|
|
Acidentado acidentado,
|
|
|
|
|
Seccao seccao,
|
|
|
|
|
Recomendacao recomendacoes[],
|
|
|
|
|
Medida medidas[],
|
|
|
|
|
Causa causa )
|
|
|
|
|
{
|
|
|
|
|
this.utilizador = utilizador;
|
|
|
|
|
this.estabelecimento = estabelecimento;
|
|
|
|
|
this.tecnicoSuperior = tecnicoSuperior;
|
|
|
|
|
this.medico = medico;
|
|
|
|
|
this.analiseAcidente = analiseAcidente;
|
|
|
|
|
this.acidentado = acidentado;
|
|
|
|
|
this.seccao = seccao;
|
|
|
|
|
this.recomendacoes = recomendacoes;
|
|
|
|
|
this.medidas = medidas;
|
|
|
|
|
this.causa = causa;
|
|
|
|
|
@ -110,8 +121,8 @@ public class PdfGenerator
|
|
|
|
|
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"
|
|
|
|
|
"SIPRP - Sociedade Ib\u00e9rica de Preven\u00e7&\u00e3o de Riscos Profissionais Lda., "
|
|
|
|
|
+ "com sede no Edif\u00edcio Atrium Saldanha, Pra\u00e7a Duque de Saldanha, 1 - 9\u00ba G"
|
|
|
|
|
+ " - 1050-094 Lisboa " );
|
|
|
|
|
empresaSHSTElement.addContent( identificacaoElement );
|
|
|
|
|
Element tecnicoSuperiorHSTElement = new Element( "TecnicoSuperiorHST" );
|
|
|
|
|
@ -168,7 +179,20 @@ public class PdfGenerator
|
|
|
|
|
funcaoElement.setText( acidentado.getFuncao() );
|
|
|
|
|
acidentadoElement.addContent( funcaoElement );
|
|
|
|
|
Element turnoElement = new Element( "Turno" );
|
|
|
|
|
turnoElement.setText( acidentado.getTurno() );
|
|
|
|
|
String turno = acidentado.getTurno();
|
|
|
|
|
if( "m".equals( turno ) )
|
|
|
|
|
{
|
|
|
|
|
turno = "Manh\u00e3";
|
|
|
|
|
}
|
|
|
|
|
else if( "t".equals( turno ) )
|
|
|
|
|
{
|
|
|
|
|
turno = "Tarde";
|
|
|
|
|
}
|
|
|
|
|
else if( "n".equals( turno ) )
|
|
|
|
|
{
|
|
|
|
|
turno = "Noite";
|
|
|
|
|
}
|
|
|
|
|
turnoElement.setText( turno );
|
|
|
|
|
acidentadoElement.addContent( turnoElement );
|
|
|
|
|
Element superiorElement = new Element( "Superior" );
|
|
|
|
|
Element nomeSuperiorElement = new Element( "Nome" );
|
|
|
|
|
@ -243,7 +267,7 @@ public class PdfGenerator
|
|
|
|
|
acidenteElement.addContent( accoesTomadasElement );
|
|
|
|
|
Element formacaoSHSTElement = new Element( "FormacaoSHST" );
|
|
|
|
|
Element teveFormacaoSHSTElement = new Element( "TeveFormacao" );
|
|
|
|
|
teveFormacaoSHSTElement.setText( "t".equals( analiseAcidente.getFormacao_shst() ) ? "y" : "n" );
|
|
|
|
|
teveFormacaoSHSTElement.setText( analiseAcidente.getFormacao_shst() );
|
|
|
|
|
formacaoSHSTElement.addContent( teveFormacaoSHSTElement );
|
|
|
|
|
Element motivoFormacaoSHSTElement = new Element( "Motivo" );
|
|
|
|
|
motivoFormacaoSHSTElement.setText( analiseAcidente.getFormacao_shst_nao_porque() );
|
|
|
|
|
@ -251,7 +275,7 @@ public class PdfGenerator
|
|
|
|
|
acidenteElement.addContent( formacaoSHSTElement );
|
|
|
|
|
Element outrasOcorrenciasMesmoPostoElement = new Element( "OutrasOcorrenciasMesmoPosto" );
|
|
|
|
|
Element quantidadeOutrasOcorrenciasMesmoPostoElement = new Element( "Quantidade" );
|
|
|
|
|
boolean outrasOcorrenciasMesmoPosto = "t".equals( analiseAcidente.getOutros_acidentes_com_colaborador() );
|
|
|
|
|
boolean outrasOcorrenciasMesmoPosto = "y".equals( analiseAcidente.getOutros_acidentes_com_colaborador() );
|
|
|
|
|
quantidadeOutrasOcorrenciasMesmoPostoElement.setText(
|
|
|
|
|
outrasOcorrenciasMesmoPosto ? "" + analiseAcidente.getNr_acidentes_com_colaborador() : "0" );
|
|
|
|
|
outrasOcorrenciasMesmoPostoElement.addContent( quantidadeOutrasOcorrenciasMesmoPostoElement );
|
|
|
|
|
@ -282,7 +306,7 @@ public class PdfGenerator
|
|
|
|
|
acidenteElement.addContent( outrasOcorrenciasMesmoPostoElement );
|
|
|
|
|
Element outrasOcorrenciasOutrosTrabalhadoresElement = new Element( "OutrasOcorrenciasOutrosTrabalhadores" );
|
|
|
|
|
Element quantidadeOutrasOcorrenciasOutrosTrabalhadoresElement = new Element( "Quantidade" );
|
|
|
|
|
boolean outrasOcorrenciasOutrosTrabalhadores = "t".equals( analiseAcidente.getAcidentes_outros_colaboradores() );
|
|
|
|
|
boolean outrasOcorrenciasOutrosTrabalhadores = "y".equals( analiseAcidente.getAcidentes_outros_colaboradores() );
|
|
|
|
|
quantidadeOutrasOcorrenciasOutrosTrabalhadoresElement.setText(
|
|
|
|
|
outrasOcorrenciasOutrosTrabalhadores ? "" + analiseAcidente.getNr_acidentes_outros_colaboradores() : "0" );
|
|
|
|
|
outrasOcorrenciasOutrosTrabalhadoresElement.addContent( quantidadeOutrasOcorrenciasOutrosTrabalhadoresElement );
|
|
|
|
|
@ -313,26 +337,26 @@ public class PdfGenerator
|
|
|
|
|
acidenteElement.addContent( outrasOcorrenciasOutrosTrabalhadoresElement );
|
|
|
|
|
Element lesaoElement = new Element( "Lesao" );
|
|
|
|
|
Element areasLesaoElement = new Element( "Areas" );
|
|
|
|
|
String cabeca = analiseAcidente.getLesao_cabeca();
|
|
|
|
|
String pescoco = analiseAcidente.getLesao_pescoco();
|
|
|
|
|
String tronco = analiseAcidente.getLesao_tronco();
|
|
|
|
|
String superiorDireito = analiseAcidente.getLesao_membro_sup_dir();
|
|
|
|
|
boolean cabeca = "y".equals( analiseAcidente.getLesao_cabeca() );
|
|
|
|
|
boolean pescoco = "y".equals( analiseAcidente.getLesao_pescoco() );
|
|
|
|
|
boolean tronco = "y".equals( analiseAcidente.getLesao_tronco() );
|
|
|
|
|
boolean superiorDireito = "y".equals( analiseAcidente.getLesao_membro_sup_dir() );
|
|
|
|
|
String detalheSuperiorDireito = analiseAcidente.getEspecif1();
|
|
|
|
|
String superiorEsquerdo = analiseAcidente.getLesao_membro_sup_esq();
|
|
|
|
|
boolean superiorEsquerdo = "y".equals( analiseAcidente.getLesao_membro_sup_esq() );
|
|
|
|
|
String detalheSuperiorEsquerdo = analiseAcidente.getEspecif2();
|
|
|
|
|
String inferiorDireito = analiseAcidente.getLesao_membro_inf_dir();
|
|
|
|
|
boolean inferiorDireito = "y".equals( analiseAcidente.getLesao_membro_inf_dir() );
|
|
|
|
|
String detalheInferiorDireito = analiseAcidente.getEspecif3();
|
|
|
|
|
String inferiorEsquerdo = analiseAcidente.getLesao_membro_inf_esq();
|
|
|
|
|
boolean inferiorEsquerdo = "y".equals( analiseAcidente.getLesao_membro_inf_esq() );
|
|
|
|
|
String detalheInferiorEsquerdo = analiseAcidente.getEspecif4();
|
|
|
|
|
String areasLesao[][] =
|
|
|
|
|
new String[][]{
|
|
|
|
|
cabeca != null ? new String[] { cabeca, "" } : null,
|
|
|
|
|
pescoco != null ? new String[] { pescoco, "" } : null,
|
|
|
|
|
tronco != null ? new String[] { tronco, "" } : null,
|
|
|
|
|
superiorDireito != null ? new String[] { superiorDireito, detalheSuperiorDireito } : null,
|
|
|
|
|
superiorEsquerdo != null ? new String[] { superiorEsquerdo, detalheSuperiorEsquerdo } : null,
|
|
|
|
|
inferiorDireito != null ? new String[] { inferiorDireito, detalheInferiorDireito } : null,
|
|
|
|
|
inferiorEsquerdo != null ? new String[] { inferiorEsquerdo, detalheInferiorEsquerdo } : null,
|
|
|
|
|
cabeca ? new String[] { "Cabe\u00e7a", "" } : null,
|
|
|
|
|
pescoco ? new String[] { "Pesco\u00e7o", "" } : null,
|
|
|
|
|
tronco ? new String[] { "Tronco", "" } : null,
|
|
|
|
|
superiorDireito ? new String[] { "Membro Superior Direito", detalheSuperiorDireito } : null,
|
|
|
|
|
superiorEsquerdo ? new String[] { "Membro Superior Esquerdo", detalheSuperiorEsquerdo } : null,
|
|
|
|
|
inferiorDireito ? new String[] { "Membro Inferior Direito", detalheInferiorDireito } : null,
|
|
|
|
|
inferiorEsquerdo ? new String[] { "Membro Inferior Esquerdo", detalheInferiorEsquerdo } : null,
|
|
|
|
|
};
|
|
|
|
|
for( int a = 0; a < areasLesao.length; a++ )
|
|
|
|
|
{
|
|
|
|
|
|