fix lint
This commit is contained in:
parent
bd419e091d
commit
ece6e9aad2
@ -155,7 +155,9 @@ class FournéeAdmin(nested_admin.NestedModelAdmin):
|
|||||||
Si elles ne le sont pas, on ajoute ce qui manque."""
|
Si elles ne le sont pas, on ajoute ce qui manque."""
|
||||||
for pâte_id, pâte_nom, pâte_ordre in (
|
for pâte_id, pâte_nom, pâte_ordre in (
|
||||||
obj.commande_set.values_list(
|
obj.commande_set.values_list(
|
||||||
"réservation__pain__pâte", "réservation__pain__pâte__nom", "réservation__pain__pâte__ordre"
|
"réservation__pain__pâte",
|
||||||
|
"réservation__pain__pâte__nom",
|
||||||
|
"réservation__pain__pâte__ordre"
|
||||||
)
|
)
|
||||||
.order_by("réservation__pain__pâte")
|
.order_by("réservation__pain__pâte")
|
||||||
.distinct()
|
.distinct()
|
||||||
@ -169,16 +171,21 @@ class FournéeAdmin(nested_admin.NestedModelAdmin):
|
|||||||
pâte_manquante = somme_commandée - somme_coulée
|
pâte_manquante = somme_commandée - somme_coulée
|
||||||
if pâte_manquante > 0:
|
if pâte_manquante > 0:
|
||||||
obj.coulée_set.create(
|
obj.coulée_set.create(
|
||||||
pâte_id=pâte_id, quantité=pâte_manquante, ordre=pâte_ordre
|
pâte_id=pâte_id,
|
||||||
|
quantité=pâte_manquante,
|
||||||
|
ordre=pâte_ordre
|
||||||
)
|
)
|
||||||
self.message_user(
|
self.message_user(
|
||||||
request,
|
request,
|
||||||
f"Création d'une coulée de {pâte_manquante.normalize()} kg pour la pâte {pâte_nom}.",
|
f"Création d'une coulée de "
|
||||||
|
f"{pâte_manquante.normalize()} kg "
|
||||||
|
f"pour la pâte {pâte_nom}.",
|
||||||
)
|
)
|
||||||
elif pâte_manquante < 0:
|
elif pâte_manquante < 0:
|
||||||
self.message_user(
|
self.message_user(
|
||||||
request,
|
request,
|
||||||
f"Attention la pâte {pâte_nom} est prévue en excès ({-pâte_manquante.normalize()} kg en trop)",
|
f"Attention la pâte {pâte_nom} est prévue "
|
||||||
|
f"en excès ({-pâte_manquante.normalize()} kg en trop)",
|
||||||
messages.WARNING,
|
messages.WARNING,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -216,7 +223,8 @@ class FournéeAdmin(nested_admin.NestedModelAdmin):
|
|||||||
ingrédients = c.pâte.ingrédient_set.values_list('nom', 'couleur')
|
ingrédients = c.pâte.ingrédient_set.values_list('nom', 'couleur')
|
||||||
for i, _ in ingrédients:
|
for i, _ in ingrédients:
|
||||||
quantités.append((c.quantité / c.pâte.poids_de_base * sum(
|
quantités.append((c.quantité / c.pâte.poids_de_base * sum(
|
||||||
c.pâte.ingrédient_set.filter(nom=i).values_list("quantité", flat=True)
|
c.pâte.ingrédient_set.filter(nom=i)
|
||||||
|
.values_list("quantité", flat=True)
|
||||||
)).quantize(Decimal('1.000')).normalize())
|
)).quantize(Decimal('1.000')).normalize())
|
||||||
|
|
||||||
masse_coulée = sum(
|
masse_coulée = sum(
|
||||||
@ -228,24 +236,42 @@ class FournéeAdmin(nested_admin.NestedModelAdmin):
|
|||||||
if masse_coulée == masse_commandée:
|
if masse_coulée == masse_commandée:
|
||||||
problems = ""
|
problems = ""
|
||||||
elif masse_coulée > masse_commandée:
|
elif masse_coulée > masse_commandée:
|
||||||
problems = f"{(masse_coulée - masse_commandée).normalize()} kg coulés en trop !!"
|
problems = (
|
||||||
|
f"{(masse_coulée - masse_commandée).normalize()} "
|
||||||
|
"kg coulés en trop !!"
|
||||||
|
)
|
||||||
elif masse_coulée < masse_commandée:
|
elif masse_coulée < masse_commandée:
|
||||||
problems = f"{(masse_commandée - masse_coulée).normalize()} kg coulés en moins !!"
|
problems = (
|
||||||
|
f"{(masse_commandée - masse_coulée).normalize()} "
|
||||||
|
"kg coulés en moins !!"
|
||||||
|
)
|
||||||
extra_context["coulées"].append([problems, ingrédients, quantités])
|
extra_context["coulées"].append([problems, ingrédients, quantités])
|
||||||
|
|
||||||
""" on créé un tableau total coulée / ingrédient """
|
""" on créé un tableau total coulée / ingrédient """
|
||||||
ingrédients = [models.Ingrédient.objects.filter(nom=nom).first() for nom in set(coulées.values_list("pâte__ingrédient__nom", flat=True))]
|
ingrédients = [
|
||||||
|
models.Ingrédient.objects.filter(nom=nom).first()
|
||||||
|
for nom in set(
|
||||||
|
coulées.values_list("pâte__ingrédient__nom", flat=True)
|
||||||
|
)
|
||||||
|
]
|
||||||
ingrédients.sort(key=lambda x: x.ordre)
|
ingrédients.sort(key=lambda x: x.ordre)
|
||||||
extra_context["ingrédients"] = ingrédients
|
extra_context["ingrédients"] = ingrédients
|
||||||
|
|
||||||
pains = models.Pain.objects.filter(pk__in=obj.commande_set.exclude(réservation__isnull=True).values_list("pains", flat=True)).values_list("nom", flat=True)
|
pains = models.Pain.objects.filter(
|
||||||
|
pk__in=obj.commande_set.exclude(réservation__isnull=True)
|
||||||
|
.values_list("pains", flat=True)
|
||||||
|
).values_list("nom", flat=True)
|
||||||
totaux = [sum(obj.coulée_set.values_list('quantité', flat=True))]
|
totaux = [sum(obj.coulée_set.values_list('quantité', flat=True))]
|
||||||
for i in ingrédients:
|
for i in ingrédients:
|
||||||
total = sum([
|
total = sum([
|
||||||
qté * qté_unit / unit
|
qté * qté_unit / unit
|
||||||
for qté, qté_unit, unit in
|
for qté, qté_unit, unit in
|
||||||
obj.coulée_set.filter(pâte__ingrédient__nom=i.nom)
|
obj.coulée_set.filter(pâte__ingrédient__nom=i.nom)
|
||||||
.values_list('quantité', 'pâte__ingrédient__quantité', 'pâte__poids_de_base')
|
.values_list(
|
||||||
|
'quantité',
|
||||||
|
'pâte__ingrédient__quantité',
|
||||||
|
'pâte__poids_de_base',
|
||||||
|
)
|
||||||
]).quantize(Decimal('1.000')).normalize()
|
]).quantize(Decimal('1.000')).normalize()
|
||||||
totaux.append(total)
|
totaux.append(total)
|
||||||
extra_context["totaux_coulées"] = totaux
|
extra_context["totaux_coulées"] = totaux
|
||||||
|
@ -15,8 +15,15 @@ class Fournée(models.Model):
|
|||||||
|
|
||||||
def masse_commandée(self, pâte_id):
|
def masse_commandée(self, pâte_id):
|
||||||
"Renvoie la masse commandée d'une pâte donnée"
|
"Renvoie la masse commandée d'une pâte donnée"
|
||||||
poids_qté = self.commande_set.exclude(réservation=None).filter(réservation__pain__pâte_id=pâte_id).values('réservation__pain__poids', 'réservation__quantité')
|
poids_qté = (
|
||||||
return sum([c['réservation__quantité'] * c['réservation__pain__poids'] for c in poids_qté])
|
self.commande_set.exclude(réservation=None)
|
||||||
|
.filter(réservation__pain__pâte_id=pâte_id)
|
||||||
|
.values('réservation__pain__poids', 'réservation__quantité')
|
||||||
|
)
|
||||||
|
return sum([
|
||||||
|
c['réservation__quantité'] * c['réservation__pain__poids']
|
||||||
|
for c in poids_qté
|
||||||
|
])
|
||||||
|
|
||||||
class Ingrédient(models.Model):
|
class Ingrédient(models.Model):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
Loading…
Reference in New Issue
Block a user