Commit 1de735a9 authored by Amap's avatar Amap

Ajout de la possibilité pour les membres du bureau d'ajouter une

commande a un utilisateur pour toute livraison jusqu'a deux semaine
avant.
Modification de la redirection aprés la validation de récuperation d'un
panier. Retour sur la même page.
parent 4144377d
......@@ -4,13 +4,17 @@ from django.forms import ModelForm, Form
from django import forms
from django.core.validators import MinValueValidator
from .models import Panier, Paiement, Commande, Credit, Livraison
from dateutil.relativedelta import relativedelta
from django.utils import timezone
class NewCommandeForm(ModelForm):
def __init__(self,*args,**kwargs):
is_bureau=kwargs.pop('is_bureau')
super (NewCommandeForm,self ).__init__(*args,**kwargs) # populates the post
self.fields['date'].queryset = Livraison.objects.filter(date__gt=timezone.now())
if is_bureau:
self.fields['date'].queryset = Livraison.objects.filter(date__gt=(timezone.now()+relativedelta(weeks=-2)))
else:
self.fields['date'].queryset = Livraison.objects.filter(date__gt=timezone.now())
class Meta:
model = Commande
......
......@@ -47,7 +47,7 @@ def new_commande(request, userid):
messages.error(request, "Vous ne pouvez pas commander pour quelqu'un d'autre !")
return redirect("/users/profil/" + str(request.user.id))
commande = Commande(user=user)
commande_form = NewCommandeForm(request.POST or None, instance=commande)
commande_form = NewCommandeForm(request.POST or None, instance=commande, is_bureau=request.user.has_perms(('bureau',)))
article_form = SelectArticleForm(request.POST or None)
if commande_form.is_valid() and article_form.is_valid():
commande = commande_form.save(commit=False)
......@@ -338,7 +338,7 @@ def control(request, livraisonid=False):
reversion.set_user(request.user)
reversion.set_comment("Etat de livraison")
messages.success(request, "Livraisons enregistrees")
return redirect("/panier/")
return redirect("/panier/control/")
livraison_commandes = len(Commande.objects.filter(date=Livraison.objects.filter(date=livraison_select.date)))
livraison_paniers = sum(pan.coefficient_panier*pan.quantite for pan in Commande.objects.filter(date=Livraison.objects.filter(date=livraison_select.date)))
return render(request, 'panier/control.html', {'controlform': controlform, 'livraison_commandes': livraison_commandes, 'livraison_paniers': livraison_paniers})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment