[#5104] Si on n'a pas le taux de change de l'année, prendre le taux le plus récent
authorEric Mc Sween <eric.mcsween@auf.org>
Wed, 9 Jan 2013 17:01:52 +0000 (12:01 -0500)
committerEric Mc Sween <eric.mcsween@auf.org>
Wed, 9 Jan 2013 17:01:52 +0000 (12:01 -0500)
project/rh/models.py

index 43ae7bf..187dffe 100644 (file)
@@ -118,22 +118,9 @@ class DevisableMixin(object):
             return 1
 
         annee = self.get_annee_pour_taux_devise()
-        taux = [
-            tc.taux
-            for tc in TauxChange.objects.filter(devise=devise, annee=annee)
-        ]
-        taux = set(taux)
-
-        if len(taux) == 0:
-            raise Exception(
-                u"Pas de taux pour %s en %s" % (devise.code, annee)
-            )
-
-        if len(taux) > 1:
-            raise Exception(u"Il existe plusieurs taux de %s en %s" %
-                    (devise.code, annee))
-        else:
-            return list(taux)[0]
+        taux = TauxChange.objects.filter(devise=devise, annee__lte=annee) \
+                .order_by('-annee')
+        return taux[0].taux
 
     def montant_euros(self):
         try: