Skip to content

Commit

Permalink
[#582] Updated haalcentraal integration according to v2 (#220)
Browse files Browse the repository at this point in the history
  • Loading branch information
vaszig authored May 16, 2022
1 parent 2617b03 commit 4170bb6
Show file tree
Hide file tree
Showing 4 changed files with 1,493 additions and 2,543 deletions.
21 changes: 13 additions & 8 deletions src/open_inwoner/haalcentraal/signals.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import logging
from sys import exc_info
from urllib.parse import urljoin

from django.db.models.signals import pre_save
Expand All @@ -24,14 +23,19 @@ def fetch_data(instance):
return {}

client = config.service.build_client()
url = urljoin(client.base_url, f"ingeschrevenpersonen/{instance.bsn}")
url = urljoin(client.base_url, "personen")

try:
data = client.retrieve(
"ingeschrevenpersonen",
data = client.operation(
operation_id="GetPersonen",
url=url,
data={
"fields": "naam,geboorte",
"type": "RaadpleegMetBurgerservicenummer",
"burgerservicenummer": [instance.bsn],
},
request_kwargs=dict(
headers={"Accept": "application/hal+json"},
params={"fields": "naam,geboorte.datum"},
),
)
except RequestException as e:
Expand All @@ -53,10 +57,11 @@ def on_bsn_change(instance, **kwargs):
):
data = fetch_data(instance)
if data:
person = glom(data, "personen")[0]
try:
instance.first_name = glom(data, "naam.voornamen")
instance.last_name = glom(data, "naam.geslachtsnaam")
instance.birthday = glom(data, "geboorte.datum.datum")
instance.first_name = glom(person, "naam.voornamen")
instance.last_name = glom(person, "naam.geslachtsnaam")
instance.birthday = glom(person, "geboorte.datum.datum")
instance.is_prepopulated = True
except PathAccessError as e:
logger.exception(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,24 +1,36 @@
{
"_links": {
"self": {
"href": "https://www.haalcentraal.nl/haalcentraal/api/brp/ingeschrevenpersonen/999993847"
}
},
"naam": {
"personen": [
{
"naam": {
"aanhef": "Geachte mevrouw Kooyman",
"aanschrijfwijze": "M. Kooyman",
"aanschrijfwijze": {
"naam": "M. Kooyman"
},
"gebruikInLopendeTekst": "mevrouw Kooyman",
"aanduidingNaamgebruik": "eigen",
"aanduidingNaamgebruik": {
"code": "E",
"omschrijving": "gebruik alleen de eigen naam."
},
"voornamen": "Merel",
"voorletters": "M.",
"geslachtsnaam": "Kooyman"
},
"geboorte": {
"geslachtsnaam": "Kooyman",
"volledigeNaam": "Merel Kooyman",
"voorletters": "M."
},
"geboorte": {
"land": {
"code": "6030",
"omschrijving": "Nederland"
},
"plaats": {
"code": "0545",
"omschrijving": "Leerdam"
},
"datum": {
"datum": "1982-04-10",
"jaar": 1982,
"maand": 4,
"dag": 10
"datum": "1982-04-10",
"type": "Datum"
}
}
}
}
],
"type": "RaadpleegMetBurgerservicenummer"
}
Loading

0 comments on commit 4170bb6

Please sign in to comment.