Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ [#209] added queryparams to digitaaladres #220

Merged
merged 3 commits into from
Aug 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
class ActorenFilterSet(FilterSet):
naam = filters.CharFilter(
lookup_expr="icontains",
help_text=_("Zoek klantcontacten met specifieke tekst in inhoud"),
help_text=_("Zoek klantcontacten met specifieke tekst in inhoud."),
)

class Meta:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,106 @@
from django_filters.rest_framework import FilterSet
import uuid

from django.utils.translation import gettext_lazy as _

from django_filters.rest_framework import FilterSet, filters

from openklant.components.klantinteracties.api.serializers.digitaal_adres import (
DigitaalAdresSerializer,
)
from openklant.components.klantinteracties.models.digitaal_adres import DigitaalAdres
from openklant.components.utils.filters import ExpandFilter


class DigitaalAdresExpandFilterSet(FilterSet):
class DigitaalAdresDetailFilterSet(FilterSet):
expand = ExpandFilter(serializer_class=DigitaalAdresSerializer)


class DigitaalAdresFilterSet(FilterSet):
verstrekt_door_betrokkene__uuid = filters.UUIDFilter(
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van de betrokkene uuid."
),
field_name="betrokkene__uuid",
)
verstrekt_door_betrokkene__url = filters.CharFilter(
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van de betrokkene url."
),
method="filter_betrokkene_url",
)
verstrekt_door_betrokkene__rol = filters.ChoiceFilter(
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van de betrokkene rol."
),
field_name="betrokkene__rol",
)
verstrekt_door_partij__uuid = filters.UUIDFilter(
help_text=_("Zoek digitaal adres(sen) object(en) op basis van de partij uuid."),
field_name="betrokkene__uuid",
)
verstrekt_door_partij__url = filters.CharFilter(
help_text=_("Zoek digitaal adres(sen) object(en) op basis van de partij url."),
method="filter_partij_url",
)
verstrekt_door_partij__soort_partij = filters.ChoiceFilter(
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van de partij soort."
),
field_name="partij__soort_partij",
)
adres = filters.CharFilter(
lookup_expr="exact",
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van adres dat exact gelijk moet zijn aan deze waarde."
),
)
adres__icontains = filters.CharFilter(
lookup_expr="icontains",
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van adres die de opgegeven waarden bevat."
),
)
soort_digitaal_adres = filters.CharFilter(
lookup_expr="exact",
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van het soort digitaal adres "
"dat exact gelijk moet zijn aan deze waarde."
),
)
omschrijving = filters.CharFilter(
lookup_expr="icontains",
help_text=_(
"Zoek digitaal adres(sen) object(en) op basis van omschijving die de opgegeven waarden bevat."
),
)

expand = ExpandFilter(serializer_class=DigitaalAdresSerializer)

class Meta:
model = DigitaalAdres
fields = (
"verstrekt_door_betrokkene__uuid",
"verstrekt_door_betrokkene__url",
"verstrekt_door_betrokkene__rol",
"verstrekt_door_partij__uuid",
"verstrekt_door_partij__url",
"verstrekt_door_partij__soort_partij",
"adres",
"adres__icontains",
"soort_digitaal_adres",
"omschrijving",
bart-maykin marked this conversation as resolved.
Show resolved Hide resolved
)

def filter_betrokkene_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(betrokkene__uuid=url_uuid)
except ValueError:
return queryset.none()

def filter_partij_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(partij__uuid=url_uuid)
except ValueError:
return queryset.none()
Original file line number Diff line number Diff line change
Expand Up @@ -9,22 +9,22 @@

class InternetaakFilterSet(FilterSet):
toegewezen_aan_actor__uuid = filters.UUIDFilter(
help_text=_("Zoek internetaak object op basis van het toegewezen actor uuid"),
help_text=_("Zoek internetaak object op basis van het toegewezen actor uuid."),
field_name="actor__uuid",
)
toegewezen_aan_actor__url = filters.CharFilter(
help_text=_("Zoek internetaak object op basis van het toegewezen actor url"),
help_text=_("Zoek internetaak object op basis van het toegewezen actor url."),
method="filter_toegewezen_aan_actor_url",
)
aanleidinggevend_klantcontact__uuid = filters.UUIDFilter(
help_text=_(
"Zoek internetaak object op basis van het aanleidingevende klantcontact uuid"
"Zoek internetaak object op basis van het aanleidingevende klantcontact uuid."
),
field_name="klantcontact__uuid",
)
aanleidinggevend_klantcontact__url = filters.CharFilter(
help_text=_(
"Zoek internetaak object op basis van het aanleidingevende klantcontact url"
"Zoek internetaak object op basis van het aanleidingevende klantcontact url."
),
method="filter_aanleidinggevend_klantcontact_url",
)
Expand All @@ -46,14 +46,14 @@ class Meta:

def filter_toegewezen_aan_actor_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(actor__uuid=url_uuid)
except ValueError:
return queryset.none()

def filter_aanleidinggevend_klantcontact_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(klantcontact__uuid=url_uuid)
except ValueError:
return queryset.none()
Original file line number Diff line number Diff line change
Expand Up @@ -21,30 +21,30 @@ class KlantcontactDetailFilterSet(FilterSet):

class KlantcontactFilterSet(FilterSet):
had_betrokkene__url = filters.CharFilter(
help_text=_("Zoek klantcontact object op basis van het betrokkene url"),
help_text=_("Zoek klantcontact object op basis van het betrokkene url."),
method="filter_betrokkene_url",
)
had_betrokkene__uuid = filters.UUIDFilter(
help_text=_("Zoek klantcontact object op basis van het betrokkene uuid"),
help_text=_("Zoek klantcontact object op basis van het betrokkene uuid."),
field_name="betrokkene__uuid",
)
onderwerpobject__url = filters.CharFilter(
help_text=_("Zoek klantcontact object op basis van het onderwerpobject url"),
help_text=_("Zoek klantcontact object op basis van het onderwerpobject url."),
method="filter_onderwerpobject_url",
)
was_onderwerpobject__url = filters.CharFilter(
help_text=_(
"Zoek was klantcontact object op basis van het onderwerpobject url"
"Zoek was klantcontact object op basis van het onderwerpobject url."
),
method="filter_was_onderwerpobject_url",
)
inhoud = filters.CharFilter(
lookup_expr="icontains",
help_text=_("Zoek klantcontacten met specifieke tekst in inhoud"),
help_text=_("Zoek klantcontacten met specifieke tekst in inhoud."),
)
onderwerp = filters.CharFilter(
lookup_expr="icontains",
help_text=_("Zoek klantcontacten met specifieke tekst in onderwerp"),
help_text=_("Zoek klantcontacten met specifieke tekst in onderwerp."),
)

expand = ExpandFilter(serializer_class=KlantcontactSerializer)
Expand Down Expand Up @@ -77,21 +77,21 @@ class Meta:

def filter_betrokkene_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(betrokkene__uuid=url_uuid)
except ValueError:
return queryset.none()

def filter_onderwerpobject_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(onderwerpobject__uuid=url_uuid)
except ValueError:
return queryset.none()

def filter_was_onderwerpobject_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(was_onderwerpobject__uuid=url_uuid)
except ValueError:
return queryset.none()
Expand Down Expand Up @@ -157,7 +157,7 @@ class Meta:

def filter_had_klantcontact_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(klantcontact__uuid=url_uuid)
except ValueError:
return queryset.none()
Expand All @@ -180,7 +180,7 @@ def filter_digitaaladres_adres(self, queryset, name, value):

def filter_digitaaladres_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(digitaaladres__uuid=url_uuid)
except ValueError:
return queryset.none()
Expand All @@ -197,7 +197,7 @@ def filter_partij_nummer(self, queryset, name, value):

def filter_partij_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(partij__uuid=url_uuid)
except ValueError:
return queryset.none()
Expand Down Expand Up @@ -233,14 +233,14 @@ class Meta:

def filter_actor_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(actor__uuid=url_uuid)
except ValueError:
return queryset.none()

def filter_klantcontact_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(klantcontact__uuid=url_uuid)
except ValueError:
return queryset.none()
34 changes: 18 additions & 16 deletions src/openklant/components/klantinteracties/api/filterset/partijen.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,35 +22,37 @@ class PartijDetailFilterSet(FilterSet):
class PartijFilterSet(FilterSet):
vertegenwoordigde_partij__uuid = filters.UUIDFilter(
help_text=_(
"Zoek partij object op basis van het vertegenwoordigde partij uuid"
"Zoek partij object op basis van het vertegenwoordigde partij uuid."
),
field_name="vertegenwoordigde__vertegenwoordigende_partij__uuid",
)
vertegenwoordigde_partij__url = filters.CharFilter(
help_text=_("Zoek partij object op basis van het vertegenwoordigde partij url"),
help_text=_(
"Zoek partij object op basis van het vertegenwoordigde partij url."
),
method="filter_vertegenwoordigde_partij_url",
)
partij_identificator__code_objecttype = filters.CharFilter(
help_text=_(
"Zoek partij object op basis van het partij identificator objecttype"
"Zoek partij object op basis van het partij identificator objecttype."
),
method="filter_identificator_code_objecttype",
)
partij_identificator__code_soort_object_id = filters.CharFilter(
help_text=_(
"Zoek partij object op basis van het partij identificator soort object ID"
"Zoek partij object op basis van het partij identificator soort object ID."
),
method="filter_identificator_code_soort_object_id",
)
partij_identificator__object_id = filters.CharFilter(
help_text=_(
"Zoek partij object op basis van het partij identificator object ID"
"Zoek partij object op basis van het partij identificator object ID."
),
method="filter_identificator_object_id",
)
partij_identificator__code_register = filters.CharFilter(
help_text=_(
"Zoek partij object op basis van het partij identificator register"
"Zoek partij object op basis van het partij identificator register."
),
method="filter_identificator_code_register",
)
Expand Down Expand Up @@ -90,7 +92,7 @@ class Meta:

def filter_vertegenwoordigde_partij_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(
vertegenwoordigde__vertegenwoordigende_partij__uuid=url_uuid
)
Expand Down Expand Up @@ -142,13 +144,13 @@ def filter_categorierelatie_categorie_naam(self, queryset, name, value):
class VertegenwoordigdenFilterSet(FilterSet):
vertegenwoordigende_partij__url = filters.CharFilter(
help_text=_(
"Zoek Vertegenwoordigden object op basis van het vertegenwoordigende partij url"
"Zoek Vertegenwoordigden object op basis van het vertegenwoordigende partij url."
),
method="filter_vertegenwoordigende_partij_url",
)
vertegenwoordigde_partij__url = filters.CharFilter(
help_text=_(
"Zoek Vertegenwoordigden object op basis van het vertegenwoordigde partij url"
"Zoek Vertegenwoordigden object op basis van het vertegenwoordigde partij url."
),
method="filter_vertegenwoordigde_partij_url",
)
Expand All @@ -164,30 +166,30 @@ class Meta:

def filter_vertegenwoordigende_partij_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(vertegenwoordigende_partij__uuid=url_uuid)
except ValueError:
return queryset.none()

def filter_vertegenwoordigde_partij_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(vertegenwoordigde_partij__uuid=url_uuid)
except ValueError:
return queryset.none()


class CategorieRelatieFilterSet(FilterSet):
partij__url = filters.CharFilter(
help_text=_("Zoek categorie relatie object op basis van de partij url"),
help_text=_("Zoek categorie relatie object op basis van de partij url."),
method="filter_partij_url",
)
partij__uuid = filters.CharFilter(
help_text=_("Zoek categorie relatie object op basis van de partij uuid"),
help_text=_("Zoek categorie relatie object op basis van de partij uuid."),
method="filter_partij_uuid",
)
partij__nummer = filters.CharFilter(
help_text=_("Zoek categorie relatie object op basis van het partij nummer"),
help_text=_("Zoek categorie relatie object op basis van het partij nummer."),
method="filter_partij_nummer",
)
categorie__naam = filters.CharFilter(
Expand Down Expand Up @@ -225,7 +227,7 @@ def filter_partij_uuid(self, queryset, name, value):

def filter_partij_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(partij__uuid=url_uuid)
except ValueError:
return queryset.none()
Expand All @@ -245,7 +247,7 @@ def filter_categorie_uuid(self, queryset, name, value):

def filter_categorie_url(self, queryset, name, value):
try:
url_uuid = uuid.UUID(value.split("/")[-1])
url_uuid = uuid.UUID(value.rstrip("/").split("/")[-1])
return queryset.filter(categorie__uuid=url_uuid)
except ValueError:
return queryset.none()
Expand Down
Loading
Loading