Merge branch 'master' into dev
authorOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 28 Jul 2011 15:39:02 +0000 (11:39 -0400)
committerOlivier Larchevêque <olivier.larcheveque@auf.org>
Thu, 28 Jul 2011 15:39:02 +0000 (11:39 -0400)
1  2 
project/dae/models.py

diff --combined project/dae/models.py
@@@ -378,7 -378,7 +378,7 @@@ class PostePiece(models.Model)
  
  class PosteComparaison(models.Model):
      poste = models.ForeignKey('Poste', related_name='comparaisons_internes')
 -    implantation = models.ForeignKey(ref.Implantation, null=True, blank=True)
 +    implantation = models.ForeignKey(ref.Implantation, null=True, blank=True, related_name="+")
      nom = models.CharField(verbose_name="Poste", max_length=255, null=True, blank=True)
      montant = models.IntegerField(null=True)
      devise = models.ForeignKey(rh.Devise, default=5, related_name='+', null=True, blank=True)
@@@ -673,7 -673,11 +673,11 @@@ class Remuneration(models.Model)
          return round(self.montant / 12, 2)
  
      def taux_devise(self):
-         return self.devise.tauxchange_set.order_by('-annee').filter(implantation=self.dossier.poste.implantation)[0].taux
+         liste_taux = self.devise.tauxchange_set.order_by('-annee').filter(implantation=self.dossier.poste.implantation)
+         if len(liste_taux) == 0:
+             raise Exception(u"La devise %s n'a pas de taux pour l'implantation %s" % (self.devise, self.dossier.poste.implantation))
+         else:
+             return liste_taux[0].taux
  
      def montant_euro(self):
          return round(float(self.montant) * float(self.taux_devise()), 2)