Class TimeSection
java.lang.Object
it.uniupo.simnova.views.ui.helper.TimeSection
Rappresenta una singola sezione temporale (T0, T1, T2, ecc.) di uno scenario di simulazione.
 Questa classe gestisce i campi di input per i parametri medici, le azioni, le transizioni
 e i parametri aggiuntivi specifici per quel tempo.
- Version:
- 1.0
- Author:
- Alessandro Zappatore
- 
Field SummaryFieldsModifier and TypeFieldDescriptionfinal com.vaadin.flow.component.textfield.TextAreaArea di testo per descrivere l'azione richiesta o l'evento scatenante per questo tempo.final com.vaadin.flow.component.textfield.TextAreaArea di testo per ulteriori dettagli o note specifiche per questo tempo.Mappa che associa i parametri aggiuntivi (predefiniti o personalizzati) ai loro layout di campo, inclusi i pulsanti per rimuoverli dinamicamente.Mappa che associa i parametri aggiuntivi (predefiniti o personalizzati) ai loro campi di input.Mappa che associa i parametri aggiuntivi (predefiniti o personalizzati) alle loro unità di misura.final com.vaadin.flow.component.orderedlayout.VerticalLayoutContenitore per i campi dei parametri aggiuntivi/personalizzati.final com.vaadin.flow.component.textfield.NumberFieldCampo di input per la Capnometria di fine espirazione (EtCO₂).final com.vaadin.flow.component.textfield.NumberFieldCampo di input per la Frequenza Cardiaca (FC).final com.vaadin.flow.component.textfield.NumberFieldCampo di input per la Frazione inspiratoria di Ossigeno (FiO₂).final com.vaadin.flow.component.orderedlayout.VerticalLayoutLayout principale della sezione temporale, che contiene tutti i campi e le informazioni.final com.vaadin.flow.component.textfield.NumberFieldCampo di input per i Litri di Ossigeno (Litri O₂).final com.vaadin.flow.component.formlayout.FormLayoutLayout che contiene i campi per i parametri medici base.final com.vaadin.flow.component.textfield.TextFieldCampo di input per la Pressione Arteriosa (PA) in formato "Sist/Diast".final com.vaadin.flow.component.textfield.NumberFieldCampo di input per la Frequenza Respiratoria (RR).final com.vaadin.flow.component.textfield.TextAreaArea di testo per il ruolo del genitore, visibile solo in scenari pediatrici.final com.vaadin.flow.component.textfield.NumberFieldCampo di input per la Saturazione dell'Ossigeno (SpO₂).final com.vaadin.flow.component.textfield.NumberFieldCampo di input per la Temperatura Corporea (T), arrotondata a una cifra decimale.final com.vaadin.flow.component.textfield.IntegerFieldCampo per la navigazione condizionale al tempo successivo se la condizione è "NO".final com.vaadin.flow.component.textfield.IntegerFieldCampo per la navigazione condizionale al tempo successivo se la condizione è "SI".final intNumero identificativo del tempo (es. 0 per T0, 1 per T1, ...).final com.vaadin.flow.component.timepicker.TimePickerSelettore per il timer associato a questo tempo, utile per gestire la durata di azioni o attese.
- 
Constructor SummaryConstructorsConstructorDescriptionTimeSection(int timeNumber, ScenarioService scenarioService, List<TimeSection> timeSections, com.vaadin.flow.component.orderedlayout.VerticalLayout timeSectionsContainer, Integer scenarioId) Costruttore per creare una nuova sezione temporale.
- 
Method SummaryModifier and TypeMethodDescriptionvoidaddCustomParameter(String key, String label, String unit) Aggiunge un parametro (predefinito o personalizzato) alla sezione temporale.Restituisce la mappa dei parametri aggiuntivi/personalizzati (chiave -> campoNumberField).com.vaadin.flow.component.orderedlayout.VerticalLayoutRestituisce il layout principale (VerticalLayout) di questa sezione temporale.com.vaadin.flow.component.formlayout.FormLayoutRestituisce ilFormLayoutche contiene i campi dei parametri medici base.intRestituisce il numero identificativo di questo tempo (0 per T0, 1 per T1, ...).voidNasconde il pulsante "Rimuovi Tempo" per questa sezione.Prepara i dati di questa sezione temporale per il salvataggio nel database.voidsetEtco2Value(Integer value) Imposta il valore del campo Capnometria di fine espirazione (EtCO2) e lo rende non modificabile.voidsetFcValue(Integer value) Imposta il valore del campo Frequenza Cardiaca (FC) e lo rende non modificabile.voidsetFio2Value(Integer value) Imposta il valore del campo Frazione inspiratoria di Ossigeno (FiO2) e lo rende non modificabile.voidsetLitriO2Value(Double value) Imposta il valore del campo Litri di Ossigeno (Litri O2) e lo rende non modificabile.voidsetPaValue(String value) Imposta il valore del campo Pressione Arteriosa (PA) e lo rende non modificabile.voidsetRrValue(Integer value) Imposta il valore del campo Frequenza Respiratoria (RR) e lo rende non modificabile.voidsetSpo2Value(Integer value) Imposta il valore del campo Saturazione dell'Ossigeno (SpO2) e lo rende non modificabile.voidImposta il valore del campo Temperatura Corporea (T) e lo rende non modificabile.
- 
Field Details- 
timeNumberpublic final int timeNumberNumero identificativo del tempo (es. 0 per T0, 1 per T1, ...).
- 
layoutpublic final com.vaadin.flow.component.orderedlayout.VerticalLayout layoutLayout principale della sezione temporale, che contiene tutti i campi e le informazioni.
- 
timerPickerpublic final com.vaadin.flow.component.timepicker.TimePicker timerPickerSelettore per il timer associato a questo tempo, utile per gestire la durata di azioni o attese.
- 
paFieldpublic final com.vaadin.flow.component.textfield.TextField paFieldCampo di input per la Pressione Arteriosa (PA) in formato "Sist/Diast".
- 
fcFieldpublic final com.vaadin.flow.component.textfield.NumberField fcFieldCampo di input per la Frequenza Cardiaca (FC).
- 
rrFieldpublic final com.vaadin.flow.component.textfield.NumberField rrFieldCampo di input per la Frequenza Respiratoria (RR).
- 
tFieldpublic final com.vaadin.flow.component.textfield.NumberField tFieldCampo di input per la Temperatura Corporea (T), arrotondata a una cifra decimale.
- 
spo2Fieldpublic final com.vaadin.flow.component.textfield.NumberField spo2FieldCampo di input per la Saturazione dell'Ossigeno (SpO₂).
- 
fio2Fieldpublic final com.vaadin.flow.component.textfield.NumberField fio2FieldCampo di input per la Frazione inspiratoria di Ossigeno (FiO₂).
- 
litriO2Fieldpublic final com.vaadin.flow.component.textfield.NumberField litriO2FieldCampo di input per i Litri di Ossigeno (Litri O₂).
- 
etco2Fieldpublic final com.vaadin.flow.component.textfield.NumberField etco2FieldCampo di input per la Capnometria di fine espirazione (EtCO₂).
- 
actionDetailsAreapublic final com.vaadin.flow.component.textfield.TextArea actionDetailsAreaArea di testo per descrivere l'azione richiesta o l'evento scatenante per questo tempo.
- 
timeIfYesFieldpublic final com.vaadin.flow.component.textfield.IntegerField timeIfYesFieldCampo per la navigazione condizionale al tempo successivo se la condizione è "SI".
- 
timeIfNoFieldpublic final com.vaadin.flow.component.textfield.IntegerField timeIfNoFieldCampo per la navigazione condizionale al tempo successivo se la condizione è "NO".
- 
additionalDetailsAreapublic final com.vaadin.flow.component.textfield.TextArea additionalDetailsAreaArea di testo per ulteriori dettagli o note specifiche per questo tempo.
- 
ruoloGenitoreAreapublic final com.vaadin.flow.component.textfield.TextArea ruoloGenitoreAreaArea di testo per il ruolo del genitore, visibile solo in scenari pediatrici. Può contenere informazioni fornite dal genitore sul paziente.
- 
medicalParamsFormpublic final com.vaadin.flow.component.formlayout.FormLayout medicalParamsFormLayout che contiene i campi per i parametri medici base.
- 
customParamsContainerpublic final com.vaadin.flow.component.orderedlayout.VerticalLayout customParamsContainerContenitore per i campi dei parametri aggiuntivi/personalizzati. Permette di aggiungere dinamicamente nuovi parametri con unità di misura specifiche.
- 
customParameters
- 
customParameterUnits
- 
customParameterLayouts
 
- 
- 
Constructor Details- 
TimeSectionpublic TimeSection(int timeNumber, ScenarioService scenarioService, List<TimeSection> timeSections, com.vaadin.flow.component.orderedlayout.VerticalLayout timeSectionsContainer, Integer scenarioId) Costruttore per creare una nuova sezione temporale.- Parameters:
- timeNumber- Il numero identificativo di questo tempo.
- scenarioService- Il servizio per la gestione dello scenario (usato per controllare tipo pediatrico).
- timeSections- La lista di tutte le sezioni temporali (per la rimozione).
- timeSectionsContainer- Il layout contenitore di tutte le sezioni (per la rimozione).
- scenarioId- L'ID dello scenario a cui appartiene questa sezione.
 
 
- 
- 
Method Details- 
getLayoutpublic com.vaadin.flow.component.orderedlayout.VerticalLayout getLayout()Restituisce il layout principale (VerticalLayout) di questa sezione temporale.- Returns:
- Il layout della sezione.
 
- 
getTimeNumberpublic int getTimeNumber()Restituisce il numero identificativo di questo tempo (0 per T0, 1 per T1, ...).- Returns:
- Il numero del tempo.
 
- 
getMedicalParamsFormpublic com.vaadin.flow.component.formlayout.FormLayout getMedicalParamsForm()Restituisce ilFormLayoutche contiene i campi dei parametri medici base.- Returns:
- Il FormLayout dei parametri medici.
 
- 
getCustomParameters
- 
hideRemoveButtonpublic void hideRemoveButton()Nasconde il pulsante "Rimuovi Tempo" per questa sezione. Utile per la sezione T0 che non può essere rimossa.
- 
addCustomParameterAggiunge un parametro (predefinito o personalizzato) alla sezione temporale. Crea un campo numericoNumberFieldcon un pulsante per rimuoverlo, e memorizza l'unità di misura associata.- Parameters:
- key- La chiave identificativa del parametro (es. "PVC" o "CUSTOM_Nome_Parametro").
- label- L'etichetta completa da visualizzare per il campo (es. "Nome Parametro (unit)").
- unit- L'unità di misura (stringa) da associare a questo parametro per il salvataggio.
 
- 
prepareDataForSave
- 
setPaValueImposta il valore del campo Pressione Arteriosa (PA) e lo rende non modificabile.- Parameters:
- value- Il valore PA da impostare (può essere null).
 
- 
setFcValueImposta il valore del campo Frequenza Cardiaca (FC) e lo rende non modificabile.- Parameters:
- value- Il valore FC da impostare (può essere null).
 
- 
setRrValueImposta il valore del campo Frequenza Respiratoria (RR) e lo rende non modificabile.- Parameters:
- value- Il valore RR da impostare (può essere null).
 
- 
setTValueImposta il valore del campo Temperatura Corporea (T) e lo rende non modificabile. Il valore viene arrotondato a una cifra decimale.- Parameters:
- value- Il valore T da impostare (può essere null).
 
- 
setSpo2ValueImposta il valore del campo Saturazione dell'Ossigeno (SpO2) e lo rende non modificabile.- Parameters:
- value- Il valore SpO2 da impostare (può essere null).
 
- 
setFio2ValueImposta il valore del campo Frazione inspiratoria di Ossigeno (FiO2) e lo rende non modificabile.- Parameters:
- value- Il valore FiO2 da impostare (può essere null).
 
- 
setLitriO2ValueImposta il valore del campo Litri di Ossigeno (Litri O2) e lo rende non modificabile.- Parameters:
- value- Il valore Litri O2 da impostare (può essere null).
 
- 
setEtco2ValueImposta il valore del campo Capnometria di fine espirazione (EtCO2) e lo rende non modificabile.- Parameters:
- value- Il valore EtCO2 da impostare (può essere null).
 
 
-