Page History
...
| Operation / brugertype | Borger | Borger på vegne af borger | Sundhedsfaglig | System bruger |
|---|---|---|---|---|
| getPersonalDataCard | x | x | x | |
| updateContactInformation | x | x | x | |
| createRelatives, updateRelatives, markRelativesAsDeleted | x | x | x | |
| createLanguage, updateLanguage, markLanguageAsDeleted | x | x | x | |
| createTempAddress, updateTempAddress, markTempAddressAsDeleted | x | x | x | |
| createHealthProvider, updateHealthProvider, markHealthProviderAsDeleted | x | x | x | |
| saveDataCard | x | x | x |
...
Med mindre ovenstående parametre ændres, så vil slettejobbet behandle op til 1550 sletninger om dagen. (I gennemsnit er der 150 døde pr. døgn)
CPR oprydningsjob
...
<server>/skr-operations/cpr-cleanup/start...
<server>/skr-operations/cpr-cleanup/status...
Returnerer statuskoden for seneste kørsel af oprydningsjobbet. Har oprydningsjobbet ikke kørt endnu, returneres statuskode 200
Oprydningsjob
Oprydningsjobs ligger i CPR oprydningsjobbet ligger i skr-operations komponenten.
Implementationen Implementationerne følger husreglerne for baggrundsjobs og understøtter derfor samtidige kald.
Løsningen er en Løsningerne bruger in-memory stak, hvorpå der løbende bliver påfyldt opgaver. Opgaver bliver altid lagt på stakken i tilfældig rækkefølge.
...
Opgaver på stakken kan enten være en operation til at udføre en oprydning eller en supplier, der leverer flere opgaver til stakken.
CPR Oprydningsjob
| URL | Beskrivelse |
|---|---|
<server>/skr-operations/cpr-cleanup/start | Starter CPR oprydningsjobbet |
<server>/skr-operations/cpr-cleanup/status | Returnerer statuskoden for seneste kørsel af oprydningsjobbet. Har oprydningsjobbet ikke kørt endnu, returneres statuskode 200 |
Der benyttes tre typer af suppliers af suppliers og en operation:
| Supplier | Beskrivelse |
|---|---|
| Default supplier | Benyttes til at fylde opgaver på stakken, når stakken er tom. For hvert af tallene 0-9, oprettes en suffix baseret supplier |
| Suffix baseret supplier | Givet et tal, hentes alle person id'er fra skr databasen, der slutter på dette tal. Opretter en mængde batch suppliers, hver med et konfigurerbart antal af disse person id'er |
| Batch supplier | Givet en liste af person id'er, hentes for hvert id alle de cpr numre der er gemt i fritekstfelter i personens stamkort. For hvert person id og tilhørende liste af cpr numre, oprettes et cpr oprydningsjob. |
...
OBS: Loggen for dette job kommer til at indeholde maskerede cpr numre (cpr numre, hvor de sidste 4 cifre er udskiftet med X'er), og skal derfor behandles som en audit log.
Telefonnumre oprydningsjob
| URL | Beskrivelse |
|---|---|
<server>/skr-operations/phonenumber-cleanup/start | Starter oprydningsjobbet til at slette ugyldige telefonnumre |
<server>/skr-operations/phonenumber-cleanup/status | Returnerer statuskoden for seneste kørsel af oprydningsjobbet. Har oprydningsjobbet ikke kørt endnu, returneres statuskode 200 |
Der benyttes tre typer af suppliers og en operation:
| Supplier | Beskrivelse |
|---|---|
| Default supplier | Benyttes til at fylde opgaver på stakken, når stakken er tom. For hvert af tallene 0-9, oprettes en suffix baseret supplier |
| Suffix baseret supplier | Givet et tal, hentes alle person id'er fra skr databasen, der slutter på dette tal. Opretter en mængde batch suppliers, hver med et konfigurerbart antal af disse person id'er |
| Batch supplier | Givet en liste af person id'er, hentes for hvert id alle de telefonnumre der ikke overholder gyldig format fra personens stamkort. For hvert person id og tilhørende liste af telefonnumre, oprettes et telefonnummer oprydningsjob. |
| Operation | Beskrivelse |
|---|---|
| Telefonnummer oprydningsjob | Givet et person id og en liste af telefonnumre, slette alle disse telefonnumre r i personens stamkort. Der udsendes herefter en NAS notifikation. |
OBS: Loggen for dette job kommer til at indeholde maskerede cpr numre (cpr numre, hvor de sidste 4 cifre er udskiftet med X'er), og skal derfor behandles som en audit log.
Migrations job
Migrations Job vil migrere data for CPR-nummer fra database model 1 til model 2. Jobbet vil hente et konfigurerbar antal CPR-nummer op fra model 1 databasen, som den vil dele i et konfigurerbar store batches. Den flytter data’en over i model 2, og sletter data fra 1.
| URL | Beskrivelse |
|---|---|
<server>/skr-operations/skr-migreringsjob/start | Starter migration af CPR-nummer fra database model 1 til model 2. |
<server>/skr-operations/skr-migreringsjob/status | Returnerer statuskoden for seneste kørsel af migration jobbet. Har migration jobbet ikke kørt endnu, returneres statuskode 200 |
Der benyttes denne supplier:
| Supplier | Beskrivelse |
|---|---|
| Default supplier | Benyttes til at fylde opgaver på stakken, når stakken er tom. For hvert af tallene 0-9, oprettes en suffix baseret supplier |
| Suffix baseret supplier | Givet et tal (suffix), hentes alle CPR-nummer fra SKR databasen, der slutter på dette tal. Opretter en mængde batch suppliers, hver med et konfigurerbart antal af disse CPR-nummer |
| Operation | Beskrivelse |
|---|---|
| MIgrations job | Givet en liste af CPR-nummer, laves der migrering af dem fra model 1 til model 2. Efter de er flyttet slettes de fra model 1. |
Backup
Servicen indeholder ikke nogen backup-mekanismer, og dette skal derfor konfigureres på database-niveau. Der bør foretages backup af data på en forsvarlig måde, i tilfælde af behov for en genetablering af data. Disse data skal opbevares på en forsvarlig måde, jfr. regler om personhenførbare data.
Oprydning af ugyldige telefonnumre
Følgende 7 SQL statements skal afvikles et antal gang for at rydde op i ugyldige telefonnumre i SKR-databasen:
| Code Block |
|---|
update HealthProviders set Phone = NULL where Phone not RLIKE '^\\+?[-0-9().]+$' limit 1000;
update ContactInformations set MobilePhone = NULL where MobilePhone not RLIKE '^\\+?[-0-9().]+$' limit 1000;
update ContactInformations set HomePhone = NULL where HomePhone not RLIKE '^\\+?[-0-9().]+$' limit 1000;
update ContactInformations set WorkPhone = NULL where WorkPhone not RLIKE '^\\+?[-0-9().]+$' limit 1000;
update Relatives set MobilePhone = NULL where MobilePhone not RLIKE '^\\+?[-0-9().]+$' limit 1000;
update Relatives set HomePhone = NULL where HomePhone not RLIKE '^\\+?[-0-9().]+$' limit 1000;
update Relatives set WorkPhone = NULL where WorkPhone not RLIKE '^\\+?[-0-9().]+$' limit 1000; |
...
.