Ajout de la méthode update_solde à la classe proprio

This commit is contained in:
Vincent Le Gallic 2012-11-29 01:53:14 +01:00
parent 1d48d08b18
commit 9846ab8c5d

View file

@ -576,8 +576,22 @@ class proprio(CransLdapObject):
return bool_carte
return True
def update_solde(self, diff, comment=u""):
"""Modifie le solde du proprio. diff peut être négatif ou positif."""
assert isinstance(diff, int) or isinstance(diff, float)
assert isinstance(comment, unicode)
solde = float(self["solde"][0].value)
new_solde = solde + diff
# On vérifie qu'on ne dépasse par le découvert autorisé
if new_solde < config.impression.decouvert:
raise ValueError(u"Solde minimal atteint, opération non effectuée.")
transaction = u"credit" if diff >=0 else u"debit"
new_solde = u"%.2f" % new_solde
self.history_add(current_user, u"%s %.2f Euros [%s]" % (transaction, abs(diff), comment))
self["solde"] = new_solde
def machines(self):
"""Renvoie la liste des machines"""