fse.ws

## Class IDocument

- java.lang.Object
- - fse.ws.IDocument

-     public class IDocument
      extends Object

  Endpoint sulla PDD-ASL dei servizi esposti dalla componente FSE2-IDocument (FSE)
  Version:
    1.0
  Author:
    Innovazione e Tecnologia s.r.l.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IDocument()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `DocumentURI` | `addDocument(Document document, RepositoryDocumentURI repositoryDocumentID)` Il servizio consente di registrare nel SIST un nuovo CDA di qualsiasi tipo (prescrizione, erogazione, patient summary, referto, ricovero).
    `AdHocQueryResponse` | `queryDocument(AdHocQuery query)` Il servizio consente di eseguire delle interrogazioni sul registro dei documenti del fascicolo.
    `DocumentRetrieve` | `retrieveDocument(DocumentURI documentID, String patientId)` Il servizio consente di recuperare un documento CDA e il suo eventuale foglio di stile dal repository, sia esso esterno o interno all'FSE.
    `DocumentURI` | `updateDocument(DocumentURI documentID, Document document, RepositoryDocumentURI repositoryDocumentID)` Il servizio consente di aggiornare o cancellare un CDA gi� presente nel SIST con un nuovo CDA dello stesso tipo (prescrizione, erogazione, patient summary, referto, ricovero).

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### IDocument

          public IDocument()

  - ### Method Detail

    - #### addDocument

          public DocumentURI addDocument(Document document,
                                         RepositoryDocumentURI repositoryDocumentID)

      Il servizio consente di registrare nel SIST un nuovo CDA di qualsiasi tipo (prescrizione, erogazione, patient summary, referto, ricovero). L'istanza CDA deve essere valida secondo lo schema previsto dal SIST..
      Parameters:
        `document` - elemento obbligatorio che rappresenta l'istanza CDA con, eventualmente il foglio di stile ad esso collegato. Parametro obbligatorio.
        `repositoryDocumentID` - l'identificativo univoco del repository esterno. Questo parametro e' obbligatorio qualora il chiamante sia configurato come repository esterno. Parametro facoltativo.
      Returns:
        DocumentURI l'identificativo del nuovo documento inserito
      Throws:
        `SOAPFaultException:` - errore applicativo, pu� assumere i seguenti valori:
        - FSE-00000: Errore generico:
        - FSE-00101: Ruolo e/o struttura operatore non valido
        - FSE-00203: Nessun assistito trovato con il codice fiscale fornito
        - FSE-00405: Mancano le asserzioni identificative obbligatorie o riportano informazioni non valide
        - FSE-00408: Mancano le asserzioni autorizzative obbligatorie o riportano informazioni non valide
        - FSE-00407: Mancano le asserzioni applicative obbligatorie o riportano informazioni non valide
        - FSE-10002: Dato obbligatorio mancante:
        - FSE-00301: L'utente ha un ruolo con permessi insufficienti
        - FSE-00404: Portafoglio asserzioni non valido
        - FSE-00104: L'assistito non ha espresso il consenso all'alimentazione sul proprio FSE
        - FSE-00301: L'operatore non ha i permessi di alimentazione per la tipologia di documento richiesta
        - FSE-00305: Il codice fiscale dell'operatore specificato nelle asserzioni, non coincide con quello presente nel documento CDA
        - FSE-00306: Il codice fiscale dell'assistito specificato nelle asserzioni, non coincide con quello presente nel documento CDA
        - FSE-00300: L'id del documento CDA � gi� registrato
        - FSE-00318: Il documento CDA non � valido
        - FSE-10001: Il documento CDA non � firmato digitalmente
        - FSE-00304: Il tipo di documento specificato nelle asserzioni, non coincide con quello presente nel documento CDA
        - FSE-00414: Lo stato del documento non � valido
        - FSE-00413: L'asserzione urn:oasis:names:tc:xacml:1.0:action:action-id non � valida
        - FSE-00202: L'assistito non ha consentito l'alimentazione di questo documento nel fascicolo
        - FSE-00213: Il tipo documento passato non � supportato

    - #### updateDocument

          public DocumentURI updateDocument(DocumentURI documentID,
                                            Document document,
                                            RepositoryDocumentURI repositoryDocumentID)

      Il servizio consente di aggiornare o cancellare un CDA gi� presente nel SIST con un nuovo CDA dello stesso tipo (prescrizione, erogazione, patient summary, referto, ricovero). L'istanza CDA deve essere valida secondo lo schema previsto dal SIST..
      Parameters:
        `documentID` - l'identificativo del documento da sostituire o cancellare. Parametro obbligatorio.
        `document` - elemento obbligatorio che rappresenta l'istanza CDA con, eventualmente il foglio di stile ad esso collegato. Parametro obbligatorio.
        `repositoryDocumentID` - l'identificativo univoco del repository esterno. Questo parametro e' obbligatorio qualora il chiamante sia configurato come repository esterno. Parametro facoltativo.
      Returns:
        DocumentURI l'identificativo del nuovo documento inserito
      Throws:
        `javax.xml.ws.soap.SOAPFaultException:` - errore applicativo, pu� assumere i seguenti valori:
        - FSE-00000: Errore generico:
        - FSE-00101: Ruolo e/o struttura operatore non valido
        - FSE-00203: Nessun assistito trovato con il codice fiscale fornito
        - FSE-00405: Mancano le asserzioni identificative obbligatorie o riportano informazioni non valide
        - FSE-00408: Mancano le asserzioni autorizzative obbligatorie o riportano informazioni non valide
        - FSE-00407: Mancano le asserzioni applicative obbligatorie o riportano informazioni non valide
        - FSE-10002: Dato obbligatorio mancante:
        - FSE-00301: L'utente ha un ruolo con permessi insufficienti
        - FSE-00404: Portafoglio asserzioni non valido
        - FSE-00104: L'assistito non ha espresso il consenso all'alimentazione sul proprio FSE
        - FSE-00299: Il documento CDA con l'id fornito non � stato inserito nel fascicolo
        - FSE-00300: L'id del documento CDA � gi� registrato
        - FSE-00301: L'operatore non ha i permessi di alimentazione per la tipologia di documento richiesta
        - FSE-00318: Il documento CDA non � valido
        - FSE-10001: Il documento CDA non � firmato digitalmente
        - FSE-00304: Il tipo di documento specificato nelle asserzioni, non coincide con quello presente nel documento CDA
        - FSE-00305: Il codice fiscale dell'operatore specificato nelle asserzioni, non coincide con quello presente nel documento CDA
        - FSE-00306: Il codice fiscale dell'assistito specificato nelle asserzioni, non coincide con quello presente nel documento CDA
        - FSE-00307: Il documento CDA passato non sostituisce quello specificato
        - FSE-00420: Solo l'autore del documento originale pu� modificarlo
        - FSE-00414: Lo stato del documento non � valido
        - FSE-00413: L'asserzione urn:oasis:names:tc:xacml:1.0:action:action-id non � valida
        - FSE-00213: Il tipo documento passato non � supportato

    - #### retrieveDocument

          public DocumentRetrieve retrieveDocument(DocumentURI documentID,
                                                   String patientId)

      Il servizio consente di recuperare un documento CDA e il suo eventuale foglio di stile dal repository, sia esso esterno o interno all'FSE.
      Parameters:
        `documentID` - l'identificativo del documento da recuperare. Parametro obbligatorio.
        `patientId` - l'identificativo dell'assistito. Parametro obbligatorio in caso di delega, altrimenti opzionale.
      Returns:
        l'oggetto contenente il documento e il suo eventuale allegato
      Throws:
        `javax.xml.ws.soap.SOAPFaultException:` - errore applicativo, pu� assumere i seguenti valori:
        - FSE-00000: Errore generico:
        - FSE-00101: Ruolo e/o struttura operatore non valido
        - FSE-00203: Nessun assistito trovato con il codice fiscale fornito
        - FSE-00405: Mancano le asserzioni identificative obbligatorie o riportano informazioni non valide
        - FSE-00408: Mancano le asserzioni autorizzative obbligatorie o riportano informazioni non valide
        - FSE-00407: Mancano le asserzioni applicative obbligatorie o riportano informazioni non valide
        - FSE-10002: Dato obbligatorio mancante:
        - FSE-00301: L'utente ha un ruolo con permessi insufficienti
        - FSE-00404: Portafoglio asserzioni non valido
        - FSE-00102 L'operatore non ha i permessi sul documento richiesto
        - FSE-00107 L'assistito non ha espresso il consenso alla consultazione del FSE
        - FSE-00109 In caso di accesso in Emergenza, deve essere impostata l'assunzione di responsabilit�
        - FSE-00303 In caso di accesso in emergenza deve essere accettata l'assunzione di responsabilit�
        - FSE-00108 L'assunzione di responsabilit� non pu� essere impostata per lo scopo di "Cura"
        - FSE-00102 L'utente ha un ruolo non abilitato alla consultazione del documento
        - FSE-00299 Il documento CDA con l'id fornito non � stato inserito nel fascicolo
        - FSE-00413 L'asserzione urn:oasis:names:tc:xacml:1.0:action:action-id non � valida

    - #### queryDocument

          public AdHocQueryResponse queryDocument(AdHocQuery query)

      Il servizio consente di eseguire delle interrogazioni sul registro dei documenti del fascicolo.
      Parameters:
        `query` - la query da eseguire sul registro. Parametro obbligatorio.
      Returns:
        l'oggetto contenente il risultato della query
      Throws:
        `javax.xml.ws.soap.SOAPFaultException:` - errore applicativo, pu� assumere i seguenti valori:
        - FSE-00000: Errore generico:
        - FSE-00101: Ruolo e/o struttura operatore non valido
        - FSE-00203: Nessun assistito trovato con il codice fiscale fornito
        - FSE-00405: Mancano le asserzioni identificative obbligatorie o riportano informazioni non valide
        - FSE-00408: Mancano le asserzioni autorizzative obbligatorie o riportano informazioni non valide
        - FSE-00407: Mancano le asserzioni applicative obbligatorie o riportano informazioni non valide
        - FSE-10002: Dato obbligatorio mancante:
        - FSE-00301: L'utente ha un ruolo con permessi insufficienti
        - FSE-00404: Portafoglio asserzioni non valido
        - FSE-00107 L'assistito non ha espresso il consenso alla consultazione del FSE
        - FSE-00109 In caso di accesso in Emergenza, deve essere impostata l'assunzione di responsabilit�
        - FSE-00108 L'assunzione di responsabilit� non pu� essere impostata per lo scopo di "Cura"
        - FSE-00413 L'asserzione urn:oasis:names:tc:xacml:1.0:action:action-id non � valida