Indledning
Denne side skitserer de forventede snitflader (metoder) som udstilles på den kommende NSP ddtv-services. De endelige snitfladebeskrivelser vil blive offentliggjort sammen med at services bliver tilgængelige på NSP Test-miljøerne som en del af leverancebeskrivelsen hørende til servicen.
Siden indledes med at definere nogle datatyper, som bruges af flere metoder nedenfor.
Fælles datatyper
PersonID Element
Element | Beskrivelse | Type | Obligatorisk |
|---|---|---|---|
id | Angiver borgerens ID (CPR-nummer uden bindestreg). | string | Ja |
classification | Typen af ID. Gyldige værder er (CPR): 'OID:1.2.208.176.1.6.1.1' | string | Ja |
Bemærk, person-id'et er type-klassificeret, så der i fremtiden kan understøttes flere person-id typer, f.eks. eCPR, EU person id, etc.
Læs mere om klassifikationer og OID'er her: FSK - Guide til anvendere.
DentistID Element
Element | Beskrivelse | Type | Obligatorisk |
|---|---|---|---|
id | Angiver tandlægeklinikkens ID i den valgte klassifikation. | string | Ja, og må ikke være None/Null. |
classification | Typen af ID. Gyldige værder er (SOR): 'OID:1.2.208.176.1.1' | string | Ja, og må ikke være None/Null. |
Bemærk, id'et er type-klassificeret, så der i fremtiden kan understøttes flere id typer. Læs mere om klassifikationer og OID'er her: FSK - Guide til anvendere.
ddtvStatus Element
Element | Beskrivelse | Type | Obligatorisk |
|---|---|---|---|
exists | Borgeren findes i databasen. | bool | Ja, og må ikke være None/Null. |
createdTime | Tidspunktet elementet blev dannet i databasen. | DateTime | Betinget. Hvis exists=true, så er den obligatorisk og må ikke være None/Null. |
chosenDentist | Den valgte tandlæge. | DentistID | Betinget. Hvis exists=true, så er elementet obligatorisk. Kan være None/Null hvis borgeren endnu ikke har valgt tandlæge. |
dentistChoiceStatus | 'noDentist': Borgeren har ikke (valgt) en tandlæge 'dentistChosen': Borgeren har valgt en tandlæge, men tandlægen er ikke blevet kontaktet. 'dentistContacted': Borgeren har valgt og tandlægen er kontaktet. Tandlægen har endnu ikke svaret. 'dentistAccepted': Tandlægen har accepteret og borgeren vil blive kontaktet mhp. kontrol. 'dentistRejected': Tandlægen kan eller ønsker ikke at optage borgeren i sin praksis. 'timedOut': Tandlægen svarede ikke på henvendelsen inden for svarfristen. 'communicationFailure': Der kunne ikke sendes besked til tandlægen. | String / None | Betinget. Hvis exists=true, så er den obligatorisk og må ikke være None/Null. Invariant: Hvis dentistChoiceStatus != noDentist så er chosenDentist != null |
dentistMayBeContacted | Den valgte tandlæge må kontaktes af DDTV. | bool | Betinget. Hvis exists=true, så er den obligatorisk og må ikke være None/Null. |
reminderList | Liste med tidspunkter, hvor borgeren er blevet påmindet om at vælge tandlæge. | Liste af DateTime elementer ([DateTime]) | Betinget. Hvis exists=true, så er den obligatorisk. Skal være tom liste ([ ]), hvis der endnu ikke er sendt påmindelse. Må ikke være None/Null. |
noMoreReminders | Borgeren ønsker ikke flere påmindelser. | bool | Betinget. Hvis exists=true, så er den obligatorisk og må ikke være None/Null. |
dpStatus | Status på afsendelse af digital post til borgeren | String | Betinget. Hvis exists=true, så er den obligatorisk og må ikke være None/Null. Værdier:
|
citizenPhoneNr | Telefonnummer til kontakt til borgeren. | String | Nej |
Operationer / Funktioner
ddtvCheckStatus(...)
Returnerer statusinformation for en borgers tandlægevalg.
Input:
| Element/Parameter | Type | Beskrivelse | evt. note |
|---|---|---|---|
| personID | PersonID | CPR nummer på den der ønskes status for | I normaltilfældet vil personID være lig ID'et i IDWS Identititokenet, hvor der efterspørges status for personen selv. Hvis den kaldende person gør brug af fuldmagt eller forældremyndighed, vil personID være på hhv. fuldmagtsgiver eller barnet. Elementet er type-klassificeret, så der på sigt kan understøttes andre person-id typer (se datatypebeskrivelsen ovenfor) Alle CPR numre skal alle checkes gennem CPR enkeltopslagsservice på NSP. Hvis CPR-nummeret ikke findes eller peger på en død person, skal der returneres en fejl. |
Output:
| Element | Type | Beskrivelse | evt. note |
|---|---|---|---|
| status | [ddtvStatus] | Liste med ddtvStatus elementer der overordnet viser forløbet i valg af tandlæge over tid. | Der returneres en liste af ddtvStatus-elementer i omvendt kronologisk rækkefølge (nyeste først). Elementerne svarer 1-1 til kæden af 'DentistChoices' i databasen. Se 5. Udkast til ER-model. |
ddtvApplyForNewDentist(...)
Registrerer et tandlægevalg. Hvis borgeren allerede har valgt en tandlæge (status ikke lig med 'noDetist'}, oprettes en ny entry i databasen, og status sættes til 'dentistChosen'. Bemærk: requestID og dpStatus skal sættes til 'Null' i det nye element.
Input:
| Element/Parameter | Type | Beskrivelse | evt. note |
|---|---|---|---|
| personID | PersonID | ID på borgeren (CPR) | I normaltilfældet vil personID være lig ID'et i IDWS Identititokenet, hvor der efterspørges status for personen selv. Hvis den kaldende person gør brug af fuldmagt eller forældremyndighed, vil personID være på hhv. fuldmagtsgiver eller barnet. Elementet er type-klassificeret, så der på sigt kan understøttes andre person-id typer (se datatypebeskrivelsen ovenfor). Alle CPR numre skal alle checkes gennem CPR enkeltopslagsservice på NSP. Hvis CPR-nummeret ikke findes eller peger på en død person, skal der returneres en fejl. |
| dentistID | DentistID | ID på tandlægeklinikken (SOR) | SOR-id'et skal kontrolleres for eksistens og gyldighed gennem SOR enkeltopslagsservice på NSP. Findes ID'et ikke, eller peger ID'et på en ikke-aktiv enhed, skal der returneres en fejl. |
Output:
| Element | Type | Beskrivelse | evt. note |
|---|---|---|---|
| status | bool | OK / Fail | Hvis 'Fail' returneres en beskrivelse af årsagen til at operationen fejlede. |
ddtvDisregardApplicationForNewDentist(...)
Registrerer at borgeren fortryder tandlægevalg. Der gemmes historik i databasen.
Input:
| Element/Parameter | Type | Beskrivelse | evt. note |
|---|---|---|---|
| personID | PersonID | ID på borgeren (CPR) | I normaltilfældet vil personID være lig ID'et i IDWS Identititokenet, hvor der efterspørges status for personen selv. Hvis den kaldende person gør brug af fuldmagt eller forældremyndighed, vil personID være på hhv. fuldmagtsgiver eller barnet. Elementet er type-klassificeret, så der på sigt kan understøttes andre person-id typer (se datatypebeskrivelsen ovenfor). Alle CPR numre skal alle checkes gennem CPR enkeltopslagsservice på NSP. Hvis CPR-nummeret ikke findes eller peger på en død person, skal der returneres en fejl. |
Output:
| Element | Type | Beskrivelse | evt. note |
|---|---|---|---|
| status | bool | OK / Fail | Hvis 'Fail' returneres en beskrivelse af årsagen til at operationen fejlede. |
ddtvOptOut(...)
Registrerer at borgeren ikke ønsker at indgå i tandlægevalg løsningen. Alle data om borgeren slettes fra databasen.
Input:
| Element/Parameter | Type | Beskrivelse | evt. note |
|---|---|---|---|
| personID | PersonID | ID på borgeren (CPR) | I normaltilfældet vil personID være lig ID'et i IDWS Identititokenet, hvor der efterspørges status for personen selv. Hvis den kaldende person gør brug af fuldmagt, vil personID være på hhv. fuldmagtsgiver. Elementet er type-klassificeret, så der på sigt kan understøttes andre person-id typer (se datatypebeskrivelsen ovenfor). Alle CPR numre skal alle checkes gennem CPR enkeltopslagsservice på NSP. Hvis CPR-nummeret ikke findes eller peger på en død person, skal der returneres en fejl. |
Output:
| Element | Type | Beskrivelse | evt. note |
|---|---|---|---|
| status | bool | OK / Fail | Hvis 'Fail' returneres en beskrivelse af årsagen til at operationen fejlede. |
ddtvNoMoreReminders(...)
Registrerer at borgeren stadig ønsker at benytte løsningen, men ikke ønsker (flere) reminders.
Input:
| Element/Parameter | Type | Beskrivelse | evt. note |
|---|---|---|---|
| personID | PersonID | ID på borgeren (CPR) | I normaltilfældet vil personID være lig ID'et i IDWS Identititokenet, hvor der efterspørges status for personen selv. Hvis den kaldende person gør brug af fuldmagt eller forældremyndighed, vil personID være på hhv. fuldmagtsgiver eller barnet. Elementet er type-klassificeret, så der på sigt kan understøttes andre person-id typer (se datatypebeskrivelsen ovenfor). Alle CPR numre skal alle checkes gennem CPR enkeltopslagsservice på NSP. Hvis CPR-nummeret ikke findes eller peger på en død person, skal der returneres en fejl. |
Output:
| Element | Type | Beskrivelse | evt. note |
|---|---|---|---|
| status | bool | OK / Fail | Hvis 'Fail' returneres en beskrivelse af årsagen til at operationen fejlede. |
ddtvNewDentistFullStop(...)
Registrerer at borgeren stadig ønsker at benytte løsningen, men ikke ønsker ikke at tandlægen skal kontaktes. 'status' sættes til 3 ('dentistAccepted').
Input:
| Element/Parameter | Type | Beskrivelse | evt. note |
|---|---|---|---|
| personID | PersonID | ID på borgeren (CPR) | I normaltilfældet vil personID være lig ID'et i IDWS Identititokenet, hvor der efterspørges status for personen selv. Hvis den kaldende person gør brug af fuldmagt eller forældremyndighed, vil personID være på hhv. fuldmagtsgiver eller barnet. Elementet er type-klassificeret, så der på sigt kan understøttes andre person-id typer (se datatypebeskrivelsen ovenfor). Alle CPR numre skal alle checkes gennem CPR enkeltopslagsservice på NSP. Hvis CPR-nummeret ikke findes eller peger på en død person, skal der returneres en fejl. |
| dentistID | DentistID | ID på tandlægeklinikken (SOR) | SOR-id'et skal kontrolleres for eksistens og gyldighed gennem SOR enkeltopslagsservice på NSP. Findes ID'et ikke, eller peger ID'et på en ikke-aktiv enhed, skal der returneres en fejl. |
Output:
| Element | Type | Beskrivelse | evt. note |
|---|---|---|---|
| status | bool | OK / Fail | Hvis 'Fail' returneres en beskrivelse af årsagen til at operationen fejlede. |