Commit a51149f8 authored by Amap's avatar Amap

Remanie le menu control

parent 3064b6f9
...@@ -51,7 +51,7 @@ class SelectLivraisonForm(ModelForm): ...@@ -51,7 +51,7 @@ class SelectLivraisonForm(ModelForm):
model = Livraison model = Livraison
class SelectOneLivraisonForm(ModelForm): class SelectOneLivraisonForm(ModelForm):
date = forms.ModelChoiceField(queryset=Livraison.objects.all(), label="Date de livraison") date = forms.ModelChoiceField(queryset=Livraison.objects.all().order_by('date').reverse(), label="Date de livraison")
class Meta: class Meta:
exclude = ['date', 'date_modif'] exclude = ['date', 'date_modif']
......
...@@ -7,10 +7,26 @@ ...@@ -7,10 +7,26 @@
{% block content %} {% block content %}
<form class="form" method="post"> <form class="form" method="post">
{% csrf_token %}
{% if livraisonform %}
<h2>Date de livraison concernée</h2> <h2>Date de livraison concernée</h2>
{% csrf_token %}
{% bootstrap_form livraisonform %} {% bootstrap_form livraisonform %}
{% else %}
<h2>Résumé</h2>
<table class="table table-striped">
<tr>
<th>Commandes pour la livraison</th>
<td>{{ livraison_commandes }}</td>
<th>Paniers pour la livraison</th>
<td>{{ livraison_paniers }}</td>
</tr>
</table>
<h2>Etat des livraisons</h2> <h2>Etat des livraisons</h2>
{{ controlform.management_form }} {{ controlform.management_form }}
<table class="table table-striped"> <table class="table table-striped">
...@@ -45,7 +61,10 @@ ...@@ -45,7 +61,10 @@
</tr> </tr>
{% endfor %} {% endfor %}
</table> </table>
{% bootstrap_button "Modifier" button_type="submit" icon="star" %} {% endif %}
{% bootstrap_button "Valider" button_type="submit" icon="star" %}
</form> </form>
{% endblock %} {% endblock %}
...@@ -23,6 +23,7 @@ urlpatterns = [ ...@@ -23,6 +23,7 @@ urlpatterns = [
url(r'^add_sac/(?P<userid>[0-9]+)$', views.add_sac, name='add-sac'), url(r'^add_sac/(?P<userid>[0-9]+)$', views.add_sac, name='add-sac'),
url(r'^del_sac/(?P<userid>[0-9]+)$', views.del_sac, name='del-sac'), url(r'^del_sac/(?P<userid>[0-9]+)$', views.del_sac, name='del-sac'),
url(r'^control/$', views.control, name='control'), url(r'^control/$', views.control, name='control'),
url(r'^control/(?P<livraisonid>[0-9]+)$', views.control, name='control'),
url(r'^index_article/$', views.index_article, name='index-article'), url(r'^index_article/$', views.index_article, name='index-article'),
url(r'^history/(?P<object>paiement)/(?P<id>[0-9]+)$', views.history, name='history'), url(r'^history/(?P<object>paiement)/(?P<id>[0-9]+)$', views.history, name='history'),
url(r'^history/(?P<object>livraison)/(?P<id>[0-9]+)$', views.history, name='history'), url(r'^history/(?P<object>livraison)/(?P<id>[0-9]+)$', views.history, name='history'),
......
...@@ -319,19 +319,24 @@ def del_article(request): ...@@ -319,19 +319,24 @@ def del_article(request):
@login_required @login_required
@permission_required('bureau') @permission_required('bureau')
def control(request): def control(request, livraisonid=False):
livraison_select = Livraison.objects.order_by('date')[0] if not livraisonid:
livraison = SelectOneLivraisonForm(request.POST or None, initial = {'date': Livraison.objects.order_by('date')[0]}) livraison = SelectOneLivraisonForm(request.POST or None)
if livraison.is_valid(): if livraison.is_valid():
livraison_select = livraison.cleaned_data['date'] return redirect("/panier/control/" + str(livraison.cleaned_data['date'].id))
commande_list = Commande.objects.filter(date=livraison_select).order_by('date').reverse() return render(request, 'panier/control.html', {'livraisonform': livraison})
controlform_set = modelformset_factory(Commande, fields=('livre',), extra=0) else:
controlform = controlform_set(request.POST or None, queryset=commande_list) livraison_select = Livraison.objects.get(id=livraisonid)
if controlform.is_valid(): commande_list = Commande.objects.filter(date=livraison_select).order_by('date')
controlform.save() controlform_set = modelformset_factory(Commande, fields=('livre',), extra=0)
messages.success(request, "Livraisons enregistrees") controlform = controlform_set(request.POST or None, queryset=commande_list)
return redirect("/panier/") if controlform.is_valid():
return render(request, 'panier/control.html', {'livraisonform': livraison, 'controlform': controlform}) controlform.save()
messages.success(request, "Livraisons enregistrees")
return redirect("/panier/")
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})
@login_required @login_required
@permission_required('bureau') @permission_required('bureau')
......
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