conversion euros
[auf_rh_dae.git] / project / rh / models.py
index cb1776c..1d953e1 100644 (file)
@@ -59,22 +59,26 @@ class DevisableMixin(object):
     def get_annee_pour_taux_devise(self):
         return datetime.datetime.now().year
 
-    def taux_devise(self):
-        if self.devise is None:
+
+    def taux_devise(self, devise=None):
+        if devise is None:
+            devise = self.devise
+
+        if devise is None:
             return None
-        if self.devise.code == "EUR":
+        if devise.code == "EUR":
             return 1
 
         annee = self.get_annee_pour_taux_devise()
-        taux = [tc.taux for tc in TauxChange.objects.filter(devise=self.devise, annee=annee)]
+        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" % (self.devise.code, annee))
+            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" %
-                    (self.devise.code, annee))
+                    (devise.code, annee))
         else:
             return list(taux)[0]