Class ScenarioDetailsView

java.lang.Object
com.vaadin.flow.component.Component
com.vaadin.flow.component.Composite<com.vaadin.flow.component.orderedlayout.VerticalLayout>
it.uniupo.simnova.views.creation.scenario.ScenarioDetailsView
All Implemented Interfaces:
com.vaadin.flow.component.AttachNotifier, com.vaadin.flow.component.DetachNotifier, com.vaadin.flow.component.HasElement, com.vaadin.flow.component.HasStyle, com.vaadin.flow.router.BeforeEnterObserver, com.vaadin.flow.router.HasUrlParameter<String>, com.vaadin.flow.router.internal.BeforeEnterHandler, Serializable

@Route(value="scenari", layout=MainLayout.class) public class ScenarioDetailsView extends com.vaadin.flow.component.Composite<com.vaadin.flow.component.orderedlayout.VerticalLayout> implements com.vaadin.flow.router.HasUrlParameter<String>, com.vaadin.flow.router.BeforeEnterObserver
Vista per la visualizzazione dettagliata e la modifica di uno scenario di simulazione.

Questa classe gestisce il caricamento, la presentazione e l'aggiornamento dei dettagli completi di uno scenario, inclusi i suoi metadati principali (titolo, autori), i parametri vitali, gli esami e referti, e altre informazioni pertinenti suddivise in schede (tabs). La vista supporta scenari di tipo Quick, Advanced e Patient Simulated, adattando i contenuti visualizzati.

Version:
3.0
Author:
Alessandro Zappatore
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    ScenarioDetailsView(ScenarioService scenarioService, FileStorageService fileStorageService, MaterialeService materialeNecessario, AdvancedScenarioService advancedScenarioService, PatientSimulatedScenarioService patientSimulatedScenarioService, AzioneChiaveService azionechiaveService, EsameRefertoService esameRefertoService, EsameFisicoService esameFisicoService, PazienteT0Service pazienteT0Service, PresidiService presidiService, ExternalApiService externalApiService, LabExamService labExamService, ExecutorService executorService, NotifierService notifierService, ActiveNotifierManager activeNotifierManager)
    Costruttore della vista ScenarioDetailsView.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    beforeEnter(com.vaadin.flow.router.BeforeEnterEvent event)
    Implementazione del metodo BeforeEnterHandler.beforeEnter(BeforeEnterEvent).
    void
    setParameter(com.vaadin.flow.router.BeforeEvent event, String parameter)
    Implementazione del metodo HasUrlParameter.setParameter(BeforeEvent, Object).

    Methods inherited from class com.vaadin.flow.component.Composite

    getChildren, getContent, getElement, initContent

    Methods inherited from class com.vaadin.flow.component.Component

    addListener, findAncestor, fireEvent, from, get, getEventBus, getId, getListeners, getLocale, getParent, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getTranslation, getUI, hasListener, isAttached, isTemplateMapped, isVisible, onAttach, onDetach, onEnabledStateChanged, removeFromParent, scrollIntoView, scrollIntoView, set, setElement, setId, setVisible

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.vaadin.flow.component.AttachNotifier

    addAttachListener

    Methods inherited from interface com.vaadin.flow.component.DetachNotifier

    addDetachListener

    Methods inherited from interface com.vaadin.flow.component.HasStyle

    addClassName, addClassNames, getClassName, getClassNames, getStyle, hasClassName, removeClassName, removeClassNames, setClassName, setClassName
  • Constructor Details

    • ScenarioDetailsView

      @Autowired public ScenarioDetailsView(ScenarioService scenarioService, FileStorageService fileStorageService, MaterialeService materialeNecessario, AdvancedScenarioService advancedScenarioService, PatientSimulatedScenarioService patientSimulatedScenarioService, AzioneChiaveService azionechiaveService, EsameRefertoService esameRefertoService, EsameFisicoService esameFisicoService, PazienteT0Service pazienteT0Service, PresidiService presidiService, ExternalApiService externalApiService, LabExamService labExamService, ExecutorService executorService, NotifierService notifierService, ActiveNotifierManager activeNotifierManager)
      Costruttore della vista ScenarioDetailsView.
      Parameters:
      scenarioService - servizio per la gestione degli scenari, utilizzato per caricare e modificare gli scenari.
      fileStorageService - servizio per la gestione dello storage dei file, utilizzato per caricare immagini e altri media.
      materialeNecessario - servizio per la gestione dei materiali necessari per lo scenario, come dispositivi medici o strumenti.
      advancedScenarioService - servizio per la gestione delle logiche specifiche degli scenari avanzati, come la gestione dei tempi e delle azioni chiave.
      patientSimulatedScenarioService - servizio per la gestione delle logiche specifiche degli scenari simulati con paziente, come la sceneggiatura e le interazioni.
      azionechiaveService - servizio per la gestione delle azioni chiave definite nello scenario, come le azioni critiche da eseguire durante la simulazione.
      esameRefertoService - servizio per la gestione degli esami e referti associati agli scenari, come esami di laboratorio o diagnostici.
      esameFisicoService - servizio per la gestione dei dati relativi all'esame fisico del paziente, come i parametri vitali e le osservazioni cliniche.
      pazienteT0Service - servizio per la gestione dei dati del paziente al tempo zero (T0), come le condizioni iniziali del paziente all'inizio della simulazione.
      presidiService - servizio per la gestione dei presidi associati agli scenari, come dispositivi medici o strumenti utilizzati durante la simulazione.
      externalApiService - servizio per l'integrazione con API esterne, ad esempio per la generazione di referti o l'analisi dei dati.
      labExamService - servizio per la gestione degli esami di laboratorio, come la generazione di referti e l'analisi dei risultati.
      executorService - servizio per la gestione dell'esecuzione di task asincroni, utile per operazioni che richiedono tempo come l'elaborazione di dati o la generazione di referti.
      notifierService - servizio per la gestione delle notifiche tra il backend e il frontend, utilizzato per inviare aggiornamenti in tempo reale agli utenti.
      activeNotifierManager - gestore per le notifiche attive, che coordina le notifiche tra il backend e il frontend per garantire che gli utenti ricevano aggiornamenti tempestivi.
  • Method Details

    • setParameter

      public void setParameter(com.vaadin.flow.router.BeforeEvent event, String parameter)
      Implementazione del metodo HasUrlParameter.setParameter(BeforeEvent, Object). Questo metodo è chiamato da Vaadin quando la vista viene navigata con un parametro URL. È responsabile della validazione e dell'impostazione dell'ID dello scenario.
      Specified by:
      setParameter in interface com.vaadin.flow.router.HasUrlParameter<String>
      Parameters:
      event - L'evento di navigazione.
      parameter - Il parametro ID dello scenario passato nell'URL come String.
      Throws:
      com.vaadin.flow.router.NotFoundException - Se il parametro è nullo, vuoto, non un numero valido, non positivo, o se lo scenario non esiste.
    • beforeEnter

      public void beforeEnter(com.vaadin.flow.router.BeforeEnterEvent event)
      Implementazione del metodo BeforeEnterHandler.beforeEnter(BeforeEnterEvent). Questo metodo viene chiamato da Vaadin appena prima che la vista diventi attiva. È il luogo ideale per caricare i dati dello scenario e inizializzare l'interfaccia utente basata su tali dati.
      Specified by:
      beforeEnter in interface com.vaadin.flow.router.internal.BeforeEnterHandler
      Parameters:
      event - L'evento BeforeEnterEvent che precede l'ingresso nella vista.
      Throws:
      com.vaadin.flow.router.NotFoundException - Se l'ID dello scenario non è stato impostato correttamente o se lo scenario non viene trovato nel database.