Tallenna, korvaa tai mitätöi sote-luovutuslupa

Käyttötapaus kuvaa seuraavat tilanteet:

  1. Tallentava järjestelmä tallentaa ensimmäisen version sote-luovutusluvasta
  2. Tallentava järjestelmä korvaa sote-luovutusluvan
  3. Tallentava järjestelmä mitätöi sote-luovutusluvan

Henkilöllä voi olla kerrallaan yksi lupa luovutuksiin sosiaalihuollosta terveydenhuoltoon ja yksi lupa luovutuksiin terveydenhuollosta sosiaalihuoltoon. Molempia lupia voidaan tallentaa ja päivittää samassa operaatiossa.

Käyttäjäroolit

  1. Tallentava järjestelmä, jatkossa Järjestelmä
    • Asiakastietojärjestelmä
    • Potilastietojärjestelmä
    • OmaKanta
  2. Kanta-palveluiden tahdonilmaisupalvelu, jatkossa Tahdonilmaisupalvelu

Esiehdot

  1. Henkilö on yksilöity Järjestelmässä virallisella henkilötunnuksella.
  2. Henkilöllä tulee olla Kanta-Informointi.
  3. Korvatessa on varmistettu haulla, että käsitellään viimeisintä sote-luovutuslupaa.

Sote-luovutusluvan tallentamisen profiilit ja operaatiot

Tilanteissa A ja B: Sote-luovutusluvan tallennuksessa ja korvauksessa käytetään SoteConsent- ja TahdonilmaisuProvenance-profiileja. Tilanteessa C: Sote-luovutusluvan mitätöinnissä käytetään MitatointiProvenance-profiilia.

Profiilien sisällöt on kuvattu FHIR-tietosisältö -osiossa.

Järjestelmän ja Tahdonilmaisupalvelun käyttämät operaatiot on kuvattu seuraavassa kuvassa:

TIP sote-luovutusluvan tallennus

Normaali tapahtumankulku

  1. Tilanteessa A ja B: Järjestelmä muodostaa SoTeConsent-profiilin mukaisen Consent-resurssin. (V1)
    • Tilanteessa B (Sote-luovutusluvan korvaus):
      • Sote-luovutusluvan globaalisti yksilöivänä tunnuksena tulee käyttää Tahdonilmaisupalvelun sote-luovutusluvalle tuottamaa yksilöintitunnusta, jonka Tahdonilmaisupalvelu on palauttanut vastaussanomassa (Consent.id).
      • Sote-luovutusluvan tunnisteen tulee olla sama kuin korvattavalla Sote-luovutusluvalla. Sote-luovutusluvan tunniste on tietosisältömäärittelyssä kuvattu Sote-luovutusluvan yksilöivä tunniste (Consent.identifier).
      • Luovutusluvan asiakasta ei voi vaihtaa. Esim. henkilötunnuksen vaihtuessa luodaan uusi Sote-luovutuslupa uudella henkilötunnuksella.
    1. Tilanteissa A ja B: Järjestelmä muodostaa TahdonilmaisuProvenance-profiilin mukaisen Provenance-resurssin. (V2)

      • Kela toimii sote-luovutusluvan rekisterinpitäjänä.
      • Uudessa versiossa kuvailutiedot rekisterinpitäjä, rekisteri ja asiakas täytyy pysyä samana kuin edellisessä versiossa. (tilanne B)
      • Korvauksen syy -tieto on Sote-luovutuslupaa korvatessa aina 1, 'korjaus'. Tällöin aiemmat versiot jäävät haettaviksi Tahdonilmaisupalvelusta. (tilanne B)

    2. Tilanteessa C: Järjestelmä muodostaa MitatointiProvenance-profiilin mukaisen Provenance-resurssin. (V2)

      • Mitätöinti on sallittu vain, kun Sote-luovutuslupa on tehty väärälle henkilölle. Tästä johtuen korvauksen syyksi pitää asettaa 4, 'mitätöinti siten, että vanhat versiot merkitään käytöstä poistetuiksi'.
      • Valmistumisen tilan tulee olla ’Poistettu’.

    1. Tilanteissa A ja B: Järjestelmä muodostaa Bundle-resurssin ja liittää siihen Consent- ja Provenance -resurssit. (V3)
    2. Tilanteissa C: Järjestelmä muodostaa Bundle-resurssin ja liittää siihen Provenance-resurssin. (V3)
  1. Järjestelmä allekirjoittaa Bundle-resurssin.(V4)

  2. Järjestelmä muodostaa Kanta JSON Web Tokenin. (V5)

  3. Järjestelmä allekirjoittaa Kanta JSON Web Tokenin. (V6)

  4. Järjestelmä lähettää transaction-tyyppisen Bundle-resurssin ja Kanta JSON Web Tokenin Tahdonilmaisupalveluun. (V7)

  5. Tahdonilmaisupalvelu tallentaa Consent- ja Provenance -resurssit sekä Bundle-resurssin.

  6. Tahdonilmaisupalvelu lähettää järjestelmälle kuittauksen transaction-response.

    Jos Sote-luovutusluvan tallennus ei onnistu, Tahdonilmaisupalvelu palauttaa HTTP virhestatuskoodin sekä HTTP bodyssa OperationOutcome resurssi-instanssin, jolla ilmoitetaan tarkempi virhe. Implementointioppaan OperationOutcome-sivulla on kuvattu tarkemmin, miten Tahdonilmaisupalvelu palauttaa virheilmoitukset OperationOutcome-resurssilla.

  7. Käyttötapaus jatkuu järjestelmän oman logiikan mukaan.

Virhetilanteet

  1. Consent-resurssin muodostaminen epäonnistuu.
  2. Provenance-resurssin muodostaminen epäonnistuu.
  3. Bundle-resurssin muodostaminen epäonnistuu.
  4. Bundle-resurssin allekirjoittaminen epäonnistuu.
  5. Kanta JSON Web Token -operaation muodostaminen epäonnistuu.
  6. Kanta JSON Web Token -operaation allekirjoittaminen epäonnistuu.
  7. Operaation lähettäminen epäonnistuu.