Interface CatalogoApi


public interface CatalogoApi
Fornisce i riferimenti alle misure, ai comuni e all'offerta territoriale. I comandi di modifica devono verificare sul server il ruolo e, per l'offerta, la titolarità.
  • Method Details

    • elencoMisureAttive

      List<CatalogoApi.Misura> elencoMisureAttive()
      Elenca le misure selezionabili per una nuova richiesta o dichiarazione di offerta.
      Returns:
      misure attive, eventualmente nessuna
    • elencoMisure

      Elenca per il Banco tutte le misure, incluse quelle disattivate.
      Parameters:
      attore - identità verificata del Banco di coordinamento
      Returns:
      misure di catalogo con lo stato corrente
      Throws:
      SecurityException - se l'attore non è il Banco
    • cercaMisura

      Optional<CatalogoApi.Misura> cercaMisura(long misuraId)
      Risolve il riferimento a una misura anche quando è stata disattivata.
      Parameters:
      misuraId - identificativo stabile della misura
      Returns:
      misura e stato corrente, oppure vuoto se l'identificativo è sconosciuto
    • elencoComuni

      List<CatalogoApi.Comune> elencoComuni()
      Elenca i comuni utilizzabili nei moduli di PICUS.
      Returns:
      comuni censiti nel catalogo
    • cercaComune

      Optional<CatalogoApi.Comune> cercaComune(String codice)
      Verifica e risolve un codice comune.
      Parameters:
      codice - codice del comune usato nel catalogo
      Returns:
      comune corrispondente, oppure vuoto se il codice è sconosciuto
    • cercaErogatoriCompatibili

      List<CatalogoApi.ErogatoreCompatibile> cercaErogatoriCompatibili(long misuraId, String comuneCodice)
      Combina le offerte delle OPT con i profili degli operatori attivi che erogano la misura. Considera lo stesso comune e i limitrofi, e include l'opzione Centro PICUS a distanza se la misura la consente. Un account compatibile in più modalità può comparire per ciascuna opzione. Richieste determina l'ordine finale e verifica la disponibilità per la singola pratica.
      Parameters:
      misuraId - identificativo della misura richiesta
      comuneCodice - comune indicato nella richiesta
      Returns:
      opzioni compatibili, oppure una lista vuota se non ce ne sono
      Throws:
      NoSuchElementException - se la misura o il comune sono sconosciuti
    • creaMisura

      Crea una nuova misura attiva.
      Parameters:
      attore - identità verificata del Banco di coordinamento
      dati - dati di catalogo della nuova misura
      Returns:
      misura registrata con il suo identificativo
      Throws:
      SecurityException - se l'attore non è autorizzato
      IllegalArgumentException - se i dati sono incompleti o il codice è già in uso
    • aggiornaMisura

      CatalogoApi.Misura aggiornaMisura(UtenzeApi.IdentitaAutenticata attore, long misuraId, CatalogoApi.DatiMisura dati, boolean attiva)
      Aggiorna i dati o lo stato di una misura mantenendo il riferimento usato nello storico.
      Parameters:
      attore - identità verificata del Banco di coordinamento
      misuraId - identificativo della misura esistente
      dati - dati di catalogo aggiornati
      attiva - indica se la misura è selezionabile per nuove richieste e offerte
      Returns:
      misura aggiornata
      Throws:
      SecurityException - se l'attore non è autorizzato
      IllegalArgumentException - se i dati sono incompleti o il codice è già in uso su un'altra misura
      NoSuchElementException - se la misura è sconosciuta
    • elencoOffertaOpt

      Consulta l'offerta corrente di una OPT come titolare o Banco.
      Parameters:
      attore - identità verificata della OPT titolare o del Banco di coordinamento
      optId - account dell'OPT di cui consultare l'offerta
      Returns:
      misure e caratteristiche dell'offerta, eventualmente nessuna
      Throws:
      SecurityException - se l'attore non è autorizzato
      NoSuchElementException - se l'account OPT è sconosciuto
    • registraOffertaOpt

      void registraOffertaOpt(UtenzeApi.IdentitaAutenticata attore, long misuraId, boolean tramiteProfessionista)
      Dichiara o aggiorna l'offerta della OPT autenticata per una misura attiva.
      Parameters:
      attore - identità verificata dell'account organizzativo titolare
      misuraId - identificativo della misura offerta
      tramiteProfessionista - indica se la OPT si avvale di un professionista esterno
      Throws:
      SecurityException - se l'attore non è una OPT autorizzata
      IllegalArgumentException - se la misura è sconosciuta o non è attiva
    • ritiraOffertaOpt

      void ritiraOffertaOpt(UtenzeApi.IdentitaAutenticata attore, long misuraId)
      Ritira l'offerta della OPT autenticata per la misura, conservando i riferimenti storici.
      Parameters:
      attore - identità verificata dell'account organizzativo titolare
      misuraId - identificativo della misura da ritirare
      Throws:
      SecurityException - se l'attore non è una OPT autorizzata
      NoSuchElementException - se la OPT non ha un'offerta corrente per la misura