1
0
mirror of https://gitlab.crans.org/bde/nk20 synced 2025-06-21 09:58:23 +02:00

Open table and shelf life

This commit is contained in:
korenstin
2024-07-07 21:25:26 +02:00
parent 226a2a6357
commit 50a680eed2
5 changed files with 50 additions and 12 deletions

View File

@ -1,8 +1,6 @@
# Copyright (C) 2018-2024 by BDE ENS Paris-Saclay
# SPDX-License-Identifier: GPL-3.0-or-later
from datetime import timedelta
from django.db import transaction
from django.contrib.auth.mixins import LoginRequiredMixin
from django.http import HttpResponseRedirect
@ -234,12 +232,13 @@ class TransformedFoodFormView(ProtectQuerysetMixin):
# Save the aliment and allergens associated
transformed_food = form.save(commit=False)
# Without microbiological analyzes, the storage time is 3 days
transformed_food.expiry_date = transformed_food.creation_date + timedelta(days=3)
transformed_food.expiry_date = transformed_food.creation_date
transformed_food._force_save = True
transformed_food.save()
transformed_food.refresh_from_db()
return super().form_valid(form)
ans = super().form_valid(form)
transformed_food.update()
return ans
def get_success_url(self, **kwargs):
self.object.refresh_from_db()
@ -260,14 +259,24 @@ class TransformedFoodCreateView(TransformedFoodFormView, ProtectedCreateView):
class TransfomedListView(ProtectQuerysetMixin, LoginRequiredMixin, SingleTableView):
"""
Displays all Activities, and classify if they are on-going or upcoming ones.
Displays not ready TransformedFood
"""
model = TransformedFood
table_class = TransformedFoodTable
ordering = ('-name',)
ordering = ('name',)
extra_context = {"title": _("Transformed food")}
def get_queryset(self, **kwargs):
return super().get_queryset(**kwargs)\
.filter(is_ready=False)\
.distinct()
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['open_table'] = TransformedFoodTable(
TransformedFood.objects.filter(
was_eaten=False,
expiry_date__lt=timezone.now()
),
prefix="open-")
return context