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)
- montant_euros = models.IntegerField(null=True)
+
+ def taux_devise(self):
+ liste_taux = self.devise.tauxchange_set.order_by('-annee').filter(implantation=self.implantation)
+ if len(liste_taux) == 0:
+ raise Exception(u"La devise %s n'a pas de taux pour l'implantation %s" % (self.devise, self.implantation))
+ else:
+ return liste_taux[0].taux
+
+ def montant_euros(self):
+ return round(float(self.montant) * float(self.taux_devise()), 2)
### EMPLOYÉ/PERSONNE
personne = models.CharField(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)
- montant_euros = models.IntegerField(null=True)
+
+ def taux_devise(self):
+ 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_euros(self):
+ return round(float(self.montant) * float(self.taux_devise()), 2)
+
### RÉMUNÉRATION