From fc37c5a8a08d9ff430de2db1bbf6dd689c333d71 Mon Sep 17 00:00:00 2001 From: Ludovic Stephan Date: Fri, 13 Apr 2018 10:54:45 +0200 Subject: [PATCH] Annulation des reventes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - On peut annuler des reventes à tout point du processus - Le formulaire d'annulation donne plus d'informations --- bda/forms.py | 8 +++-- bda/templates/bda/revente/manage.html | 46 +++++++++++---------------- bda/views.py | 10 +----- 3 files changed, 25 insertions(+), 39 deletions(-) diff --git a/bda/forms.py b/bda/forms.py index 90b0359f..59730e19 100644 --- a/bda/forms.py +++ b/bda/forms.py @@ -55,12 +55,16 @@ class ReventeModelMultipleChoiceField(forms.ModelMultipleChoiceField): label = "{show}{suffix}" suffix = "" if self.own: - # C'est notre propre revente : pas besoin de spécifier le vendeur + # C'est notre propre revente : informations sur le statut if obj.soldTo is not None: suffix = " -- Vendue à {firstname} {lastname}".format( firstname=obj.soldTo.user.first_name, lastname=obj.soldTo.user.last_name, ) + elif obj.shotgun: + suffix = " -- Tirage infructueux" + elif obj.notif_sent: + suffix = " -- Inscriptions au tirage en cours" else: # Ce n'est pas à nous : on ne voit jamais l'acheteur suffix = " -- Vendue par {firstname} {lastname}".format( @@ -103,10 +107,10 @@ class AnnulForm(forms.Form): self.fields['reventes'].queryset = ( participant.original_shows .filter(attribution__spectacle__date__gte=timezone.now(), - notif_sent=False, soldTo__isnull=True) .select_related('attribution__spectacle', 'attribution__spectacle__location') + .order_by('-date') ) diff --git a/bda/templates/bda/revente/manage.html b/bda/templates/bda/revente/manage.html index cf0ba80e..5147ff16 100644 --- a/bda/templates/bda/revente/manage.html +++ b/bda/templates/bda/revente/manage.html @@ -6,7 +6,7 @@

Gestion des places que je revends

{% with resell_attributions=resellform.attributions annul_reventes=annulform.reventes sold_reventes=soldform.reventes %} -{% if resellform.attributions %} +{% if resell_attributions %}

Places non revendues

@@ -29,34 +29,24 @@
{% endif %} -{% if annul_reventes or overdue %} +{% if annul_reventes %}

Places en cours de revente

- {% if annul_reventes %} -
- - Vous pouvez annuler les places mises en vente il y a moins d'une heure. -
- {% endif %} - {% csrf_token %} -
-
-
    - {% for revente in annul_reventes %} -
  • {{ revente.tag }} {{ revente.choice_label }}
  • - {% endfor %} - {% for attrib in overdue %} -
  • - - {{ attrib.spectacle }} -
  • - {% endfor %} -
-
-
- {% if annul_reventes %} - - {% endif %} +
+ + Vous pouvez annuler les reventes qui n'ont pas encore trouvé preneur·se. +
+ {% csrf_token %} +
+
+
    + {% for revente in annul_reventes %} +
  • {{ revente.tag }} {{ revente.choice_label }}
  • + {% endfor %} +
+
+
+

@@ -82,7 +72,7 @@ {% endif %} -{% if not resell_attributions and not annul_attributions and not overdue and not sold_reventes %} +{% if not resell_attributions and not annul_reventes and not sold_reventes %}

Plus de reventes possibles !

{% endif %} diff --git a/bda/views.py b/bda/views.py index e88e5955..b92f4aee 100644 --- a/bda/views.py +++ b/bda/views.py @@ -430,16 +430,8 @@ def revente_manage(request, tirage_id): - SpectacleRevente.remorse_time) revente.reset(new_date=new_date) - overdue = participant.attribution_set.filter( - spectacle__date__gte=timezone.now(), - revente__isnull=False, - revente__seller=participant, - revente__notif_sent=True)\ - .filter( - Q(revente__soldTo__isnull=True) | Q(revente__soldTo=participant)) - return render(request, "bda/revente/manage.html", - {'tirage': tirage, 'overdue': overdue, "soldform": soldform, + {'tirage': tirage, "soldform": soldform, "annulform": annulform, "resellform": resellform})