Tallenna, korvaa, mitätöi ajanvaraus

Käyttötapaus kuvaa seuraavat arkistointitilanteet:

  1. Palveluntuottaja tallentaa ajanvarauksen omaan rekisteriinsä.
  2. Palveluntuottaja tallentaa ajanvarauksen ostopalvelutilanteessa ostopalvelun järjestäjän rekisteriin.
  3. Ajanvarauksen korvaaminen. Korvaavan ajanvarauksen arkistointi omaan rekisteriin.
  4. Ajanvarauksen korvaaminen ostopalvelutilanteessa. Ostopalvelutilanteessa ostopalvelun tuottaja arkistoi korvaavan ajanvarauksen ostopalvelun järjestäjän rekisteriin. Ostopalvelun tuottaja voi korvata oman organisaationsa ja ostopalvelun järjestäjän tuottamia ja versioimia ajanvarauksia.
  5. Virheellisen ajanvarauksen mitätöinti. Virheellinen ajanvaraus omassa rekisterissä.
  6. Virheellisen ajanvarauksen mitätöinti ostopalvelutilanteessa. Ostopalvelutilanteessa ostopalvelun tuottajan mitätöi ostopalvelun järjestäjän rekisterissä olevan ajanvarauksen. Ostopalvelun tuottaja voi mitätöidä oman organisaationsa ja ostopalvelun järjestäjän tuottamia ja versioimia ajanvarauksia.
  • Tilanteissa A ja B: Ajanvarauksia hallinnoiva järjestelmä muodostaa ajanvarauksen ja toimittaa sen Potilastietovarantoon arkistoitavaksi.

  • Tilanteissa C ja D: Ajanvarauksia hallinnoiva järjestelmä muodostaa ajanvarauksen uuden version ja toimittaa sen Potilastietovarantoon arkistoitavaksi.

  • Tilanteissa E ja F: Ajanvarauksia hallinnoiva järjestelmä muodostaa virheellisen ajanvarauksen mitätöinnin ja toimittaa sen Potilastietovarantoon arkistoitavaksi.

  • Tilanteissa A ja B: Käyttötapauksen lopputuloksena ajanvaraus on arkistoitu Potilastietovarantoon ja lähettäneessä järjestelmässä on tieto arkistoinnista.

  • Tilanteissa C ja D: Uusi versio ajanvarauksesta on arkistoitu Potilastietovarantoon ja se on korvannut edellisen version.

  • Tilanteissa E ja F: Virheellinen ajanvaraus on mitätöity Potilastietovarannosta.

Kaikissa tilanteissa on mahdollista toimittaa kerralla yhden ajanvarauksen tiedot. Tämä koskee myös sarja- ja moniajanvarauksia:

  • Sarja-ajanvarauksessa toimitetaan kerralla yksi sarja-ajanvarauksen tapahtuma.
  • Moniajanvarauksessa toimitetaan kerralla yksi moniajanvarauksen tapahtuma.

Käyttäjäroolit

  1. Kantaan liittynyt järjestelmä. Ajanvarauksen muodostajan -roolissa toimiva järjestelmä: resurssienhallinta, palveluntuottajan toiminnanohjaus, asiointipalvelut kuten ajanvarauspalvelu, palveluohjain, peruutusaikapalvelu tai ilmoitus- ja vahvistuspalvelu. Jatkossa Järjestelmä
  2. Potilastietovaranto.

Esiehdot

  1. Tilanteessa A, B: Järjestelmässä on tehty uusi ajanvaraus. Ajanvarauksen tila on jokin ajanvarauksen arkistoinnissa sallituista tiloista.

  2. Tilanteissa C, D: Potilastietovarannossa olevaa ajanvarausta on muutettu Järjestelmässä. Ennen ajanvarauksen muuttamista Järjestelmä on hakenut muutettavan ajanvarauksen Potilastietovarannosta sen varmistamiseksi, että muutos tehdään ajanvarauksen viimeiseen versioon.

  3. Tilanteissa E, F: Potilastietovarannossa oleva ajanvaraus on mitätöity Järjestelmässä.

  4. Potilas on yksilöity järjestelmässä

  • Tilanteissa A, C, E: henkilötunnuksella tai tilapäisellä yksilöintitunnuksella
  • Tilanteissa B, D, F: henkilötunnuksella
  1. Ajanvaraus on liitetty palvelutapahtumaan. Palvelutapahtuma on arkistoitu samaan rekisteriin, mihin ajanvaraus arkistoidaan.
  2. Tilanteissa B, D, F (ostopalvelu):
  • Palvelutapahtumassa on yksilöity ostopalvelun valtuutus. [LT1]
  • Ostopalvelun järjestäjän arkistoasiakirjat-rekisterissä on palvelutapahtumassa yksilöity ostopalvelun valtuutus, joka oikeuttaa ostopalvelun tuottajan arkistoimaan ostopalvelun järjestäjän rekisteriin. [LT1]
  • Ostopalvelun tuottajalla on tiedossa ostopalvelujen järjestäjän rekisteri, jota ostopalvelun valtuutus koskee ja johon ajanvaraus arkistoidaan.

Ajanvarauksen tallentamisen profiilit ja operaatiot

  • Tilanteissa A, B, C, D: Ajanvarauksen tallennuksessa ja korvauksessa käytetään AppointmentAppointment- ja AppointmentProvenance-profiileja.
  • Tilanteissa E, F: Ajanvarauksen mitätöinnissä käytetään AppointmentMitatointiProvenance-profiilia.

Profiilien sisältö on kuvattu Profiilit ja laajennokset -sivulla.

Ajanvarauksen tallentavan järjestelmän ja Potilastietovarannon käyttämät operaatiot on kuvattu seuraavassa kuvassa:

PTA Ajanvarauksen tallennus

Normaali tapahtumankulku

  1. Tilanteissa A, B, C, D: Järjestelmä muodostaa AppointmentAppointment-profiilin mukaisen Appointment-resurssin. (V1)

    • Tilanteissa C, D (Ajanvarauksen korvaus):
      • Ajanvarauksen globaalisti yksilöivänä tunnuksena tulee käyttää Potilastietovarannon ajanvaraukselle tuottamaa yksilöintitunnusta, jonka Potilastietovaranto on palauttanut vastaussanomassa (Appointment.id).
      • Ajanvarauksen tunnisteen tulee olla sama kuin korvattavalla ajanvarauksella. Ajanvarauksen tunniste on tietosisältömäärittelyssä kuvattu ajanvarauksen yksilöivä tunniste (Appointment.identifier).
      • Potilaan henkilötietoja voidaan korjata. Esim. henkilötunnuksen vaihtuessa ajanvarauksen asiakkaan tiedoissa välitetään sekä vanha että uusi henkilötunnus. Ajanvarausta ei saa vaihtaa toiselle henkilölle.
    1. Tilanteissa A, B, C, D: Järjestelmä muodostaa AppointmentProvenance-profiilin mukaisen Provenance-resurssin. (V2)

      • Tilanteissa A, C: (Palveluntuottaja arkistoi ajanvarauksen omaan rekisteriin): Järjestelmä tuottaa Provenance-resurssille seuraavat tiedot:
        • Resurssin rekisterinpitäjä on varattavasta palvelusta vastaavan palveluntuottajan rekisterinpitäjä
        • Resurssin tuottanut palveluntuottaja on tässä tilanteessa varattavasta palvelusta vastaava palveluntuottaja
      • Tilanteissa B, D (Ostopalvelutilanne, jossa ostopalvelun palveluntuottaja arkistoi ajanvarauksen): Järjestelmä tuottaa Provenance-resurssille seuraavat tiedot:
        • Resurssin rekisterinpitäjä on ostopalvelun järjestäjän rekisterinpitäjä
        • Resurssin tuottanut palveluntuottaja on tässä tilanteessa varattavasta palvelusta vastaava palveluntuottaja
      • Tilanteissa C, D (Ajanvarauksen korvaus):
        • Uudessa versiossa voidaan muuttaa mitä tahansa muita kuvailutietoja lukuun ottamatta ajanvarauksen rekisterinpitäjää, rekisteriä ja rekisterin tarkennetta.
        • Ajanvarauksen korvauksen syy -tieto ratkaisee, ovatko ajanvarauksen aiemmat versiot Järjestelmän haettavissa Potilastietovarannosta. Ajanvarauksen korvauksen syy voi olla:
          • Asiakirjan korjaaminen tai päivittäminen: 1, korjaus
          • Asiakirjan korjaus: 3, korjaus siten, että vanhat versiot merkitään käytöstä poistetuiksi
    2. Tilanteissa E, F: Järjestelmä muodostaa MitatointiProvenance-profiilin mukaisen Provenance-resurssin. (V2)

      • Valmistumisen tilan tulee olla ’Poistettu’.
      • Ajanvarauksen korvauksen syy -tieto ratkaisee, ovatko ajanvarauksen aiemmat versiot Järjestelmän haettavissa Potilastietovarannosta. Ajanvarauksen korvauksen syy voi olla:
        • Asiakirjan mitätöiminen: 2, mitätöinti
        • Asiakirjan mitätöiminen: 4, mitätöinti siten, että vanhat versiot merkitään käytöstä poistetuiksi
    1. Tilanteissa A, B, C, D: Järjestelmä muodostaa Bundle-resurssin ja liittää siihen Appointment- ja Provenance -resurssit. (V3)
    2. Tilanteissa E, F: Järjestelmä muodostaa Bundle-resurssin ja liittää siihen Provenance-resurssin. (V3)
  2. Järjestelmä allekirjoittaa Bundle-resurssin.(V4)

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

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

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

  6. Potilastietovaranto tallentaa Appointment- ja Provenance -resurssit sekä Bundle-resurssin.

  7. Potilastietovaranto lähettää järjestelmälle kuittauksen transaction-response.

  • Jos ajanvarauksen tallennus ei onnistu, Potilastietovaranto palauttaa HTTP virhestatuskoodin sekä HTTP bodyssa OperationOutcome resurssi-instanssin, jolla ilmoitetaan tarkempi virhe. OperationOutcome-sivulla on kuvattu tarkemmin, miten Potilastietovaranto palauttaa virheilmoitukset OperationOutcome-resussilla.
  1. Käyttötapaus jatkuu järjestelmän oman logiikan mukaan.

Virhetilanteet

  1. Appointment-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.

Lisätiedot

LT1 Ostopalveluratkaisun siirtymäaikana palvelutapahtuma on voitu arkistoida myös ilman ostopalvelun valtuutuksen tunnistetta. Ostopalvelun järjestäjän arkistoasiakirjat-rekisterissä on oltava kuitenkin ostopalvelun valtuutus, joka oikeuttaa ostopalvelun tuottajan arkistoimaan ostopalvelun järjestäjän rekisteriin.