betagouv / ma-cantine

Accompagner les acteurs restau co dans la loi EGalim
https://ma-cantine.beta.gouv.fr/
MIT License
14 stars 8 forks source link

:lady_beetle: Fix de la comparaison pou le badge waste #4013

Closed alemangui closed 1 month ago

alemangui commented 1 month ago

La ligne de la comparaison du badge waste

if self.canteen.daily_meal_count < 3000 or self.has_donation_agreement:

pouvait échouer si daily_meal_count n'était pas renseigné (çad à None). Fut un temps c'était une possibilité, donc on a des cantines dans la base de données dans ce cas de figure.

Dans les logs on a :

 if self.canteen.daily_meal_count < 3000 or self.has_donation_agreement:#012       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^#012TypeError: '<' not supported between instances of 'NoneType' and 'int'

Ce petit fix s'assure que la valeur existe avant de faire la comparaison. Testé localement.

hfroot commented 1 month ago

Je veux clarifier le règle, mais je merge ça pour avoir le fix et on pourrait le changer après. Avec cette logique, les CC sans site ont besoin d'avoir un accord de don pour gagner le badge. Mais même pas forcement car c'est possible que daily_meal_count a été saisi avant...