Class LabExamPdfExportService

java.lang.Object
it.uniupo.simnova.service.export.LabExamPdfExportService

@Service public class LabExamPdfExportService extends Object
Servizio per la generazione e l'esportazione di PDF contenenti i risultati degli esami di laboratorio.
Version:
1.0
Author:
Alessandro Zappatore
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static org.apache.pdfbox.pdmodel.PDPageContentStream
    Flusso di contenuto corrente per la scrittura nel PDF.
    static float
    Posizione corrente in Y per il testo nel PDF.
    static org.apache.pdfbox.pdmodel.font.PDFont
    Font utilizzato per il testo in grassetto nel PDF.
    static org.apache.pdfbox.pdmodel.font.PDFont
    Font utilizzato per il testo normale nel PDF.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Costruttore del servizio per l'esportazione dei PDF degli esami di laboratorio.
  • Method Summary

    Modifier and Type
    Method
    Description
    static void
    checkForNewPage(float neededSpace)
    Controlla se c'è spazio sufficiente nella pagina corrente per aggiungere nuovo contenuto.
    Genera un PDF per un set di esami di laboratorio e lo salva nella cartella di upload.
    static void
    Inizializza una nuova pagina nel documento PDF corrente.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • currentYPosition

      public static float currentYPosition
      Posizione corrente in Y per il testo nel PDF.
    • currentContentStream

      public static org.apache.pdfbox.pdmodel.PDPageContentStream currentContentStream
      Flusso di contenuto corrente per la scrittura nel PDF.
    • FONTBOLD

      public static org.apache.pdfbox.pdmodel.font.PDFont FONTBOLD
      Font utilizzato per il testo in grassetto nel PDF.
    • FONTREGULAR

      public static org.apache.pdfbox.pdmodel.font.PDFont FONTREGULAR
      Font utilizzato per il testo normale nel PDF.
  • Constructor Details

    • LabExamPdfExportService

      public LabExamPdfExportService(FileStorageService fileStorageService)
      Costruttore del servizio per l'esportazione dei PDF degli esami di laboratorio.
      Parameters:
      fileStorageService - Servizio per la gestione dello storage dei file.
  • Method Details

    • initNewPage

      public static void initNewPage() throws IOException
      Inizializza una nuova pagina nel documento PDF corrente.
      Throws:
      IOException - Se si verifica un errore durante la creazione della pagina o del flusso di contenuto.
    • checkForNewPage

      public static void checkForNewPage(float neededSpace) throws IOException
      Controlla se c'è spazio sufficiente nella pagina corrente per aggiungere nuovo contenuto. Se lo spazio è insufficiente, inizializza una nuova pagina.
      Parameters:
      neededSpace - Lo spazio necessario per il nuovo contenuto in punti.
      Throws:
      IOException - Se si verifica un errore durante l'inizializzazione della nuova pagina.
    • generateAndSaveLabExamPdf

      public String generateAndSaveLabExamPdf(LabExamSet labExamSet, Scenario scenario) throws IOException
      Genera un PDF per un set di esami di laboratorio e lo salva nella cartella di upload.
      Parameters:
      labExamSet - I dati degli esami da stampare.
      scenario - Lo scenario di riferimento.
      Returns:
      Il nome del file PDF salvato.
      Throws:
      IOException - Se si verifica un errore durante la generazione o il salvataggio.