10
10
from openklant .components .klantinteracties .models .partijen import (
11
11
CategorieRelatie ,
12
12
Partij ,
13
+ Vertegenwoordigden ,
13
14
)
14
15
from openklant .components .utils .filters import ExpandFilter
15
16
16
17
17
18
class PartijFilterSet (FilterSet ):
18
- werkt_voor_partij__url = filters .CharFilter (
19
- help_text = _ ("Zoek partij object op basis van het vertegenwoordigde partij url" ),
20
- method = "filter_werkt_voor_partij_url" ,
21
- )
22
- werkt_voor_partij__uuid = filters .CharFilter (
23
- help_text = _ (
24
- "Zoek partij object op basis van het vertegenwoordigde partij uuid"
25
- ),
26
- method = "filter_werkt_voor_partij_uuid" ,
27
- )
28
- werkt_voor_partij__nummer = filters .CharFilter (
29
- help_text = _ (
30
- "Zoek partij object op basis van het vertegenwoordigde partij nummer"
31
- ),
32
- method = "filter_werkt_voor_partij_nummer" ,
33
- )
34
-
35
19
partij_identificator__objecttype = filters .CharFilter (
36
20
help_text = _ (
37
21
"Zoek partij object op basis van het partij identificator objecttype"
@@ -72,9 +56,6 @@ class PartijFilterSet(FilterSet):
72
56
class Meta :
73
57
model = Partij
74
58
fields = (
75
- "werkt_voor_partij__url" ,
76
- "werkt_voor_partij__uuid" ,
77
- "werkt_voor_partij__nummer" ,
78
59
"partij_identificator__objecttype" ,
79
60
"partij_identificator__soort_object_id" ,
80
61
"partij_identificator__object_id" ,
@@ -96,26 +77,6 @@ class Meta:
96
77
"correspondentieadres_land" ,
97
78
)
98
79
99
- def filter_werkt_voor_partij_uuid (self , queryset , name , value ):
100
- try :
101
- partij_uuid = uuid .UUID (value )
102
- return queryset .filter (vertegenwoordigde__uuid = partij_uuid )
103
- except ValueError :
104
- return queryset .none ()
105
-
106
- def filter_werkt_voor_partij_url (self , queryset , name , value ):
107
- try :
108
- url_uuid = uuid .UUID (value .split ("/" )[- 1 ])
109
- return queryset .filter (vertegenwoordigde__uuid = url_uuid )
110
- except ValueError :
111
- return queryset .none ()
112
-
113
- def filter_werkt_voor_partij_nummer (self , queryset , name , value ):
114
- try :
115
- return queryset .filter (vertegenwoordigde__nummer = value )
116
- except ValueError :
117
- return queryset .none ()
118
-
119
80
def filter_identificator_objecttype (self , queryset , name , value ):
120
81
try :
121
82
return queryset .filter (
@@ -158,6 +119,44 @@ def filter_categorierelatie_categorie_naam(self, queryset, name, value):
158
119
return queryset .none ()
159
120
160
121
122
+ class VertegenwoordigdenFilterSet (FilterSet ):
123
+ vertegenwoordigende_partij__url = filters .CharFilter (
124
+ help_text = _ (
125
+ "Zoek Vertegenwoordigden object op basis van het vertegenwoordigende partij url"
126
+ ),
127
+ method = "filter_vertegenwoordigende_partij_url" ,
128
+ )
129
+ vertegenwoordigde_partij__url = filters .CharFilter (
130
+ help_text = _ (
131
+ "Zoek Vertegenwoordigden object op basis van het vertegenwoordigde partij url"
132
+ ),
133
+ method = "filter_vertegenwoordigde_partij_url" ,
134
+ )
135
+
136
+ class Meta :
137
+ model = Vertegenwoordigden
138
+ fields = (
139
+ "vertegenwoordigende_partij__uuid" ,
140
+ "vertegenwoordigende_partij__url" ,
141
+ "vertegenwoordigde_partij__uuid" ,
142
+ "vertegenwoordigde_partij__url" ,
143
+ )
144
+
145
+ def filter_vertegenwoordigende_partij_url (self , queryset , name , value ):
146
+ try :
147
+ url_uuid = uuid .UUID (value .split ("/" )[- 1 ])
148
+ return queryset .filter (vertegenwoordigende_partij__uuid = url_uuid )
149
+ except ValueError :
150
+ return queryset .none ()
151
+
152
+ def filter_vertegenwoordigde_partij_url (self , queryset , name , value ):
153
+ try :
154
+ url_uuid = uuid .UUID (value .split ("/" )[- 1 ])
155
+ return queryset .filter (vertegenwoordigde_partij__uuid = url_uuid )
156
+ except ValueError :
157
+ return queryset .none ()
158
+
159
+
161
160
class CategorieRelatieFilterSet (FilterSet ):
162
161
partij__url = filters .CharFilter (
163
162
help_text = _ ("Zoek categorie relatie object op basis van de partij url" ),
0 commit comments