From e179bc66b7ec4e9f765ea80e8e8a7cf3ac47e0b8 Mon Sep 17 00:00:00 2001 From: Tim Van Campenhout Date: Thu, 21 Nov 2024 16:55:30 +0100 Subject: [PATCH] #259 review fixes --- crabpy/gateway/adressenregister.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/crabpy/gateway/adressenregister.py b/crabpy/gateway/adressenregister.py index 7c9e222..dd08833 100644 --- a/crabpy/gateway/adressenregister.py +++ b/crabpy/gateway/adressenregister.py @@ -243,7 +243,19 @@ def get_provincie_by_niscode(self, niscode): return provincie return None - def list_gemeenten_by_provincie(self, provincie): + def gemeente_by_status(self, status): + """ + Filter gemeenten by status. + + :param status: The status for which the `gemeenten` are wanted. + :rtype: A :class:`list` of :class:`Gemeente`. + """ + return ( + [gemeente for gemeente in self.gemeenten if gemeente.status == status] + if status else self.gemeenten + ) + + def list_gemeenten_by_provincie(self, provincie, gemeente_status=None): """ List all `gemeenten` in a `provincie`. @@ -258,11 +270,11 @@ def list_gemeenten_by_provincie(self, provincie): provincie_niscode = provincie.niscode return [ gemeente - for gemeente in self.gemeenten + for gemeente in self.gemeente_by_status(gemeente_status) if gemeente.provincie_niscode == provincie_niscode ] - def list_gemeenten(self, gewest_niscode="2000"): + def list_gemeenten(self, gewest_niscode="2000", gemeente_status=None): """ List all `gemeenten` in a `gewest`. @@ -274,7 +286,7 @@ def list_gemeenten(self, gewest_niscode="2000"): if gewest_niscode == "4000": return [ gemeente - for gemeente in self.gemeenten + for gemeente in self.gemeente_by_status(gemeente_status) if gemeente.niscode.startswith("21") ] provincie_niscodes = [