]> git.0d.be Git - panikdb.git/commitdiff
membership: include total of membership fees
authorFrédéric Péters <fpeters@0d.be>
Wed, 2 Mar 2022 09:55:43 +0000 (10:55 +0100)
committerFrédéric Péters <fpeters@0d.be>
Wed, 2 Mar 2022 09:55:43 +0000 (10:55 +0100)
panikdb/aa/views.py
panikdb/templates/aa/user_list.html

index b7c1a30d924aee7b5b15db5c1b8ea5e4d843aed9..96e53583a9bed277eeefda4a97ff5e16f70f6b66 100644 (file)
@@ -4,7 +4,7 @@ from django.contrib.admin.views.decorators import staff_member_required
 from django.contrib.auth.decorators import login_required
 from django.contrib.auth.models import Group
 from django.core.exceptions import PermissionDenied
-from django.db.models import Q
+from django.db.models import Q, Sum
 from django.http import HttpResponse, HttpResponseRedirect
 from django.urls import reverse_lazy
 from django.utils.timezone import now
@@ -67,6 +67,17 @@ class MembersListView(ListView):
         qs = qs.distinct()
         return qs
 
+    def get_context_data(self, **kwargs):
+        context = super().get_context_data(**kwargs)
+        if self.request.GET.get('membership') == 'ok':
+            context['total_membership'] = True
+            context['total_money'] = (
+                self.get_queryset()
+                .aggregate(Sum('membership__payment_amount'))
+                .get('membership__payment_amount__sum')
+            )
+        return context
+
 
 members_list_view = login_required(MembersListView.as_view())
 
index 03df477b6395b37e44fa29819875b58bfb91a9ab..4fc12d4200f3ce31e2149a0cc11658d30b42a36d 100644 (file)
 {% endif %}
 </div>
 
+{% if total_membership and has_membership_support and perms.emissions.add_membership %}
+<div class="section">
+        <div>Total des cotisations : {{total_money}} €</div>
+</div>
+{% endif %}
+
 {% endblock %}