diff --git a/la_chariotte/order/admin.py b/la_chariotte/order/admin.py index 09e2a24..5aab8b9 100644 --- a/la_chariotte/order/admin.py +++ b/la_chariotte/order/admin.py @@ -1,8 +1,8 @@ from django.contrib import admin -from .models import Grouped_order, Item, Order, OrderedItem +from .models import GroupedOrder, Item, Order, OrderedItem -admin.site.register(Grouped_order) +admin.site.register(GroupedOrder) admin.site.register(Order) admin.site.register(Item) admin.site.register(OrderedItem) diff --git a/la_chariotte/order/migrations/0010_rename_grouped_order_groupedorder.py b/la_chariotte/order/migrations/0010_rename_grouped_order_groupedorder.py new file mode 100644 index 0000000..e068ba2 --- /dev/null +++ b/la_chariotte/order/migrations/0010_rename_grouped_order_groupedorder.py @@ -0,0 +1,16 @@ +# Generated by Django 4.2 on 2023-04-11 14:22 + +from django.db import migrations + + +class Migration(migrations.Migration): + dependencies = [ + ("order", "0009_rename_date_grouped_order_delivery_date"), + ] + + operations = [ + migrations.RenameModel( + old_name="Grouped_order", + new_name="GroupedOrder", + ), + ] diff --git a/la_chariotte/order/models.py b/la_chariotte/order/models.py index da7fd1d..9bf026d 100644 --- a/la_chariotte/order/models.py +++ b/la_chariotte/order/models.py @@ -2,7 +2,7 @@ from django.db import models from django.utils import timezone -class Grouped_order(models.Model): +class GroupedOrder(models.Model): name = models.CharField(max_length=100, null=True) # optionnal orga = models.CharField(max_length=100) # a changer, utiliser ForeignKey de user delivery_date = models.DateField("Date de livraison") @@ -22,7 +22,7 @@ class Grouped_order(models.Model): class Order(models.Model): grouped_order = models.ForeignKey( - Grouped_order, on_delete=models.CASCADE, related_name="order_set" + GroupedOrder, on_delete=models.CASCADE, related_name="order_set" ) author = models.CharField( max_length=100, verbose_name="Personne qui passe la commande" @@ -35,7 +35,7 @@ class Order(models.Model): class Item(models.Model): name = models.CharField(max_length=100) grouped_order = models.ForeignKey( - Grouped_order, on_delete=models.CASCADE + GroupedOrder, on_delete=models.CASCADE ) # à transformer en manytomany quand il y aura un catalogue ordered_nb = models.IntegerField(default=0) diff --git a/la_chariotte/order/templates/order/grouped_order_detail.html b/la_chariotte/order/templates/order/grouped_order_detail.html index d6b1dfd..09613de 100644 --- a/la_chariotte/order/templates/order/grouped_order_detail.html +++ b/la_chariotte/order/templates/order/grouped_order_detail.html @@ -21,16 +21,16 @@ {% endfor %}
- {% csrf_token %} -
-

{{ grouped_order }}

- {% if error_message %}

{{ error_message }}

{% endif %} - {% for item in grouped_order.item_set.all %} - -
- {% endfor %} -
- -
+ {% csrf_token %} +
+

{{ grouped_order }}

+ {% if error_message %}

{{ error_message }}

{% endif %} + {% for item in grouped_order.item_set.all %} + +
+ {% endfor %} +
+ + diff --git a/la_chariotte/order/tests/test_models.py b/la_chariotte/order/tests/test_models.py index 374d5d2..11a08b0 100644 --- a/la_chariotte/order/tests/test_models.py +++ b/la_chariotte/order/tests/test_models.py @@ -2,7 +2,7 @@ import datetime from django.utils import timezone -from la_chariotte.order.models import Grouped_order +from la_chariotte.order.models import GroupedOrder class TestGroupedOrdersModel: @@ -13,7 +13,7 @@ class TestGroupedOrdersModel: is_ongoing() returns True if the deadline is not crossed """ deadline = timezone.now() + datetime.timedelta(days=10) - ongoing_gr_order = Grouped_order(deadline=deadline) + ongoing_gr_order = GroupedOrder(deadline=deadline) assert ongoing_gr_order.is_ongoing() def test_is_ongoing_with_old_grouped_order(self): @@ -21,5 +21,5 @@ class TestGroupedOrdersModel: is_ongoing() returns False if the deadline is crossed """ deadline = timezone.now() - datetime.timedelta(hours=1) - ongoing_gr_order = Grouped_order(deadline=deadline) + ongoing_gr_order = GroupedOrder(deadline=deadline) assert not ongoing_gr_order.is_ongoing() diff --git a/la_chariotte/order/tests/test_views.py b/la_chariotte/order/tests/test_views.py index 9f5fa4f..a4339ea 100644 --- a/la_chariotte/order/tests/test_views.py +++ b/la_chariotte/order/tests/test_views.py @@ -4,7 +4,7 @@ import pytest from django.urls import reverse from django.utils import timezone -from la_chariotte.order.models import Grouped_order, Item, Order +from la_chariotte.order.models import GroupedOrder, Item, Order pytestmark = pytest.mark.django_db @@ -15,7 +15,7 @@ def create_grouped_order(days_before_delivery_date, days_before_deadline, name): """ date = timezone.now().date() + datetime.timedelta(days=days_before_delivery_date) deadline = timezone.now() + datetime.timedelta(days=days_before_deadline) - return Grouped_order.objects.create( + return GroupedOrder.objects.create( name=name, orga="test orga", delivery_date=date, deadline=deadline ) diff --git a/la_chariotte/order/views.py b/la_chariotte/order/views.py index 4af00e7..86b57c6 100644 --- a/la_chariotte/order/views.py +++ b/la_chariotte/order/views.py @@ -4,7 +4,7 @@ from django.urls import reverse from django.utils import timezone from django.views import generic -from .models import Grouped_order, Item, Order, OrderedItem +from .models import GroupedOrder, Item, Order, OrderedItem class IndexView(generic.ListView): @@ -15,19 +15,19 @@ class IndexView(generic.ListView): def get_queryset(self): """Return the 5 most recent old grouped orders""" - old_grouped_orders = Grouped_order.objects.filter( + old_grouped_orders = GroupedOrder.objects.filter( delivery_date__lt=timezone.now().date() ).order_by("-delivery_date")[ :5 ] # delivery date < today (delivered) """Return all grouped orders, for which we cannot order anymore but the delivery date is still to come""" orders_over_grouped_orders = ( - Grouped_order.objects.filter(delivery_date__gte=timezone.now().date()) + GroupedOrder.objects.filter(delivery_date__gte=timezone.now().date()) .filter(deadline__lt=timezone.now()) .order_by("-delivery_date") ) # delivery date >= today (not delivered) and deadline < today (we cannot order) """Return all incoming grouped orders""" - incoming_grouped_orders = Grouped_order.objects.filter( + incoming_grouped_orders = GroupedOrder.objects.filter( deadline__gte=timezone.now() ).order_by( "deadline" @@ -42,21 +42,22 @@ class IndexView(generic.ListView): class GroupedOrderDetailView(generic.DetailView): """Vue de détail d'une commande groupée - possibilité de commander si elle est en cours""" - model = Grouped_order + model = GroupedOrder template_name = "order/grouped_order_detail.html" + context_object_name = "grouped_order" class GroupedOrderOrgaView(generic.DetailView): """Vue de supervision d'une commande groupée""" - model = Grouped_order + model = GroupedOrder template_name = "order/grouped_order_orga.html" def order( request, grouped_order_id ): # crée une commande (order) pour cette commande groupée, avec l'item selectionné dedans - grouped_order = get_object_or_404(Grouped_order, pk=grouped_order_id) + grouped_order = get_object_or_404(GroupedOrder, pk=grouped_order_id) try: selected_item = grouped_order.item_set.get(pk=request.POST["item"]) except (KeyError, Item.DoesNotExist):