From 0724b83af5b35bdade1fa6210ea900286e4f79a2 Mon Sep 17 00:00:00 2001 From: bart-maykin Date: Wed, 20 Nov 2024 16:42:40 +0100 Subject: [PATCH] :sparkles: [#251] added admin tabular inlines for InterneTakenActorenThoughModel in both admin pages --- .../components/klantinteracties/admin/actoren.py | 9 +++++++++ .../components/klantinteracties/admin/internetaken.py | 11 +++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/openklant/components/klantinteracties/admin/actoren.py b/src/openklant/components/klantinteracties/admin/actoren.py index 15b71506..87596dd6 100644 --- a/src/openklant/components/klantinteracties/admin/actoren.py +++ b/src/openklant/components/klantinteracties/admin/actoren.py @@ -34,6 +34,14 @@ class ActorKlantcontactInlineAdmin(admin.StackedInline): extra = 0 +class InterneTaakInlineAdmin(admin.StackedInline): + model = Actor.internetaak_set.through + raw_id_fields = ("internetaak",) + verbose_name = _("Interne taak") + verbose_name_plural = _("Interne taken") + extra = 0 + + @admin.register(Actor) class ActorAdmin(admin.ModelAdmin): list_display = ( @@ -51,6 +59,7 @@ class ActorAdmin(admin.ModelAdmin): GeautomatiseerdeActorInlineAdmin, MedewerkerInlineAdmin, OrganisatorischeEenheidInlineAdmin, + InterneTaakInlineAdmin, ) fieldsets = ( ( diff --git a/src/openklant/components/klantinteracties/admin/internetaken.py b/src/openklant/components/klantinteracties/admin/internetaken.py index b0b1ae57..cb159b71 100644 --- a/src/openklant/components/klantinteracties/admin/internetaken.py +++ b/src/openklant/components/klantinteracties/admin/internetaken.py @@ -1,4 +1,5 @@ from django.contrib import admin +from django.utils.translation import gettext_lazy as _ from ..models.internetaken import InterneTaak @@ -10,6 +11,14 @@ class InterneTaakInlineAdmin(admin.StackedInline): readonly_fields = ("uuid",) +class ActorInlineAdmin(admin.StackedInline): + model = InterneTaak.actoren.through + raw_id_fields = ("actor",) + verbose_name = _("Actor") + verbose_name_plural = _("Actoren") + extra = 0 + + @admin.register(InterneTaak) class InterneTaakAdmin(admin.ModelAdmin): readonly_fields = ("uuid",) @@ -19,6 +28,7 @@ class InterneTaakAdmin(admin.ModelAdmin): "toegewezen_op", "afgehandeld_op", ) + search_fields = ("nummer",) list_filter = ( "actoren", "status", @@ -27,3 +37,4 @@ class InterneTaakAdmin(admin.ModelAdmin): "uuid", "toegewezen_op", ) + inlines = (ActorInlineAdmin,)