ajout de la gestion du solde

darcs-hash:20050125015446-4ec08-8787cb180c5418f8fe2bc968307303b2c250a0e6.gz
This commit is contained in:
chove 2005-01-25 02:54:46 +01:00
parent 28515c760d
commit ea8193a663

View file

@ -795,9 +795,16 @@ class base_classes_crans(crans_ldap) :
### ON NE TOUCHE PAS A SELF.MODIFS, IL EST UTILISÉ PLUS LOIN !!!!!!!
modif=', '.join(self.modifs)
if "chbre" in self.modifs:
modif.replace('chbre', "chbre %s -> %s" % (self._init_data["chbre"][0],
modif = modif.replace('chbre', "chbre %s -> %s" % (self._init_data["chbre"][0],
self._data["chbre"][0]))
if "solde" in self.modifs:
diff = string.atof(self._init_data["solde"][0]) - string.atof(self._data["solde"][0])
if diff > 0 :
modif = modif.replace("solde", "debit %s Euros" % str(diff) )
else :
modif = modif.replace("solde", "credit %s Euros" % str(-diff) )
timestamp = localtime()
hist = "%s, %s" % ( time.strftime(date_format, timestamp), script_utilisateur )
@ -1022,7 +1029,37 @@ class base_proprietaire(base_classes_crans) :
return []
else :
return []
def solde(self, new=None) :
""" Retourne ou modifie le solde d'un propriétaire """
if not self._data.has_key('solde') :
self._data['solde']=['0']
solde = string.atof( self._data['solde'][0] )
if new==None :
return solde
# vérifie que new est un nombre
try :
new + 0
except TypeError :
raise TypeError(u"Il faut donner un nombre en argument.")
# découvert accepté
if new < 0 :
raise ValueError(u"Solde minimal atteind, opération non effectuée.")
self._set('solde',[str(new)])
return new
def debit(self, montant) :
""" Effectue un débit sur le solde d'un propriétaire """
return self.solde( self.solde() - montant )
def credit(self, montant) :
""" Effectue un crédit sur le solde d'un propriétaire """
return self.solde( self.solde() + montant )
def paiement(self,action=None) :
"""
Action est un entier représentant une année
@ -1030,7 +1067,7 @@ class base_proprietaire(base_classes_crans) :
si négatif le supprime
"""
return self._an('paiement',action)
def delete(self,comment='') :
"""Destruction du proprietaire"""