Class PazienteT0Service

java.lang.Object
it.uniupo.simnova.service.scenario.components.PazienteT0Service

@Service public class PazienteT0Service extends Object
Servizio per la gestione dei dati del paziente al tempo zero (T0) all'interno di uno scenario. Gestisce i parametri vitali del paziente e gli accessi vascolari (venosi e arteriosi).
Version:
1.0
Author:
Alessandro Zappatore
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addAccesso(int scenarioId, Accesso accesso, boolean isVenoso)
    Aggiunge un nuovo accesso (venoso o arterioso) per un paziente T0 di uno scenario.
    void
    deleteAccesso(int scenarioId, int accessoId, boolean isVenoso)
    Elimina un accesso (venoso o arterioso) specifico associato a un paziente T0 di uno scenario.
    Recupera un oggetto PazienteT0 dal database, inclusi i suoi accessi venosi e arteriosi, basandosi sull'ID dello scenario a cui è associato.
    void
    saveMonitor(int scenarioId, String monitor)
    Aggiorna il campo "Monitor" del paziente T0 associato a uno scenario specifico.
    boolean
    savePazienteT0(int scenarioId, String pa, int fc, int rr, double temp, int spo2, int fio2, float litrio2, int etco2, String monitor, List<Accesso> venosiData, List<Accesso> arteriosiData)
    Salva tutti i dati del paziente T0 per uno scenario specifico, inclusi i parametri vitali e gli accessi vascolari.

    Methods inherited from class java.lang.Object

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

    • getPazienteT0ById

      public PazienteT0 getPazienteT0ById(Integer scenarioId)
      Recupera un oggetto PazienteT0 dal database, inclusi i suoi accessi venosi e arteriosi, basandosi sull'ID dello scenario a cui è associato.
      Parameters:
      scenarioId - L'ID dello scenario per il quale recuperare i dati del paziente T0.
      Returns:
      L'oggetto PazienteT0 corrispondente all'ID dello scenario, o null se non trovato o in caso di errore SQL.
    • savePazienteT0

      public boolean savePazienteT0(int scenarioId, String pa, int fc, int rr, double temp, int spo2, int fio2, float litrio2, int etco2, String monitor, List<Accesso> venosiData, List<Accesso> arteriosiData)
      Salva tutti i dati del paziente T0 per uno scenario specifico, inclusi i parametri vitali e gli accessi vascolari. L'operazione è transazionale per garantire la consistenza dei dati.
      Parameters:
      scenarioId - L'ID dello scenario a cui il paziente T0 è associato.
      pa - La pressione arteriosa (es. "120/80").
      fc - La frequenza cardiaca.
      rr - La frequenza respiratoria.
      temp - La temperatura corporea.
      spo2 - La saturazione di ossigeno.
      fio2 - La frazione di ossigeno inspirato (FiO2).
      litrio2 - I litri di ossigeno somministrati.
      etco2 - L'anidride carbonica esalata (EtCO2).
      monitor - Il tipo di monitor del paziente (es. "Monitoraggio ECG").
      venosiData - Una List di oggetti Accesso che rappresentano gli accessi venosi.
      arteriosiData - Una List di oggetti Accesso che rappresentano gli accessi arteriosi.
      Returns:
      true se il salvataggio è riuscito; false altrimenti.
      Throws:
      IllegalArgumentException - se uno dei parametri vitali non è valido o se il formato della pressione arteriosa non è corretto.
    • saveMonitor

      public void saveMonitor(int scenarioId, String monitor)
      Aggiorna il campo "Monitor" del paziente T0 associato a uno scenario specifico.
      Parameters:
      scenarioId - L'ID dello scenario (e del paziente T0) di cui aggiornare il monitor.
      monitor - Il nuovo valore della stringa di monitoraggio.
    • deleteAccesso

      public void deleteAccesso(int scenarioId, int accessoId, boolean isVenoso)
      Elimina un accesso (venoso o arterioso) specifico associato a un paziente T0 di uno scenario. Vengono eliminate sia la relazione tra l'accesso e il paziente, sia l'accesso stesso dalla tabella `Accesso`.
      Parameters:
      scenarioId - L'ID dello scenario (e del paziente T0) a cui l'accesso è associato.
      accessoId - L'ID dell'accesso da eliminare.
      isVenoso - true se l'accesso da eliminare è venoso; false se è arterioso.
    • addAccesso

      public void addAccesso(int scenarioId, Accesso accesso, boolean isVenoso)
      Aggiunge un nuovo accesso (venoso o arterioso) per un paziente T0 di uno scenario. Questo metodo inserisce prima i dettagli dell'accesso nella tabella `Accesso` e poi crea la relazione appropriata nella tabella `AccessoVenoso` o `AccessoArterioso`.
      Parameters:
      scenarioId - L'ID dello scenario (e del paziente T0) a cui aggiungere l'accesso.
      accesso - L'oggetto Accesso contenente i dettagli del nuovo accesso.
      isVenoso - true se l'accesso da aggiungere è venoso; false se è arterioso.