Class IndicatorCommand

java.lang.Object
it.rol.bean.ItemBean
it.rol.command.IndicatorCommand
All Implemented Interfaces:
Command, Constants, Serializable, Comparable<ItemBean>

public class IndicatorCommand extends ItemBean implements Command, Constants

IndicatorCommand.java (ic)
Implementa la logica per la gestione degli indicatori di monitoraggio e relative misurazioni.

Created on 14:01 18/09/2024 Wed Sep 18 14:01:46 CEST 2024

Author:
Giovanroberto Torre
See Also:
  • Field Details

    • LOG

      protected static Logger LOG
      Log per debug in produzione
  • Constructor Details

    • IndicatorCommand

      public IndicatorCommand()
      Crea una nuova istanza di questa Command
  • Method Details

    • init

      public void init(ItemBean voceMenu) throws CommandException

      Raccoglie i valori dell'oggetto ItemBean e li passa a questa classe command.

      Specified by:
      init in interface Command
      Parameters:
      voceMenu - la VoceMenuBean pari alla Command presente.
      Throws:
      CommandException - se l'attributo paginaJsp di questa command non e' stato valorizzato.
    • execute

      public void execute(javax.servlet.http.HttpServletRequest req) throws CommandException

      Gestisce il flusso principale.

      Prepara i bean.

      Passa nella Request i valori che verranno utilizzati dall'applicazione.

      Specified by:
      execute in interface Command
      Parameters:
      req - la HttpServletRequest contenente la richiesta del client
      Throws:
      CommandException - se si verifica un problema, tipicamente nell'accesso a campi non accessibili o in qualche altro tipo di puntamento
    • retrieveMeasure

      public static MeasureBean retrieveMeasure(PersonBean user, String code, Date after, Date before, CodeBean survey, DBWrapper db) throws WebStorageException, CommandException

      Estrae i dettagli di una misura contenente al suo interno i dettagli necessari al monitoraggio, quindi fasi e indicatori) dato il codice, la rilevazione e una finestra temporale entro la quale gli indicatori devono far ricadere il proprio target (in caso contrario anche se soddisfano gli altri criteri non verranno estratti).

      Parameters:
      user - utente loggato
      code - codice della misura cercata
      after - estremo inferiore dell'intervallo entro cui deve ricadere il target
      before - estremo superiore dell'intervallo entro cui deve ricadere il target
      survey - oggetto rilevazione
      db - databound gia' istanziato
      Returns:
      MeasureBean - misura, da registro, desiderata
      Throws:
      WebStorageException - se si verifica un problema a livello di query o di estrazione
      CommandException - se si verifica un problema nel recupero di valori o in qualche altro tipo di puntamento
    • decantStructures

      public static void decantStructures(String label, String[] values, LinkedHashMap<String,String> params)
      Dati in input un array di valori e un livello numerico, distribuisce tali valori in una struttura dictionary, passata come parametro, assegnandone ciascuno a una chiave diversa, costruita in base a un progressivo ed un'etichetta passata come parametro. In pratica, questo metodo serve a trasformare una serie di valori di campi aventi nomi uguali in una form, che quindi vengono passati in un unico array avente lo stesso nome dei campi omonimi, in una serie di parametri distinti, ciascuno avente per nome la stessa radice ma contraddistinto da un progressivo.
      Parameters:
      label - etichetta per i nomi dei parametri
      values - valori dei campi selezionati
      params - mappa dei parametri della richiesta