From 182ac4ad323bae7171436be1c69b4fc7db6a5b63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre-Elliott=20B=C3=A9cue?= Date: Wed, 11 Mar 2015 22:28:54 +0100 Subject: [PATCH] =?UTF-8?q?Update=20des=20attributs=20dans=20l'adh=C3=A9re?= =?UTF-8?q?nt=20quand=20update=20des=20factures,=20et=20changement=20de=20?= =?UTF-8?q?s=C3=A9mantique.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gestion/gest_crans.py | 11 +++++++++++ gestion/ldap_crans.py | 20 ++++++++++++++++---- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/gestion/gest_crans.py b/gestion/gest_crans.py index 080f2e44..33fcdecd 100755 --- a/gestion/gest_crans.py +++ b/gestion/gest_crans.py @@ -2713,8 +2713,12 @@ def menu_principal(): if del_facture(facture): continue del(facture) facture = None + proprio.update_adhesion() proprio.update_connexion() + proprio.save() + del(proprio) + proprio = None elif choix == 'aKM': # Ajout machine au crans @@ -2823,6 +2827,13 @@ def menu_principal(): if modif_facture(facture): # Annulation des modifs facture.restore() + else: + proprio = facture.proprietaire() + proprio.update_adhesion() + proprio.update_connexion() + proprio.save() + del(proprio) + proprio = None elif choix == 'mCc': # Modif club courant diff --git a/gestion/ldap_crans.py b/gestion/ldap_crans.py index 870aa374..b2a7c110 100755 --- a/gestion/ldap_crans.py +++ b/gestion/ldap_crans.py @@ -1481,7 +1481,7 @@ class BaseProprietaire(BaseClasseCrans): finAdh = max([0.0] + [fgtf(facture) for facture in adh_factures if facture.controle() != "FALSE" - and facture.recuPaiement() is not None + and facture.recuPaiement() is not None ]) if update == False: @@ -1732,12 +1732,24 @@ class BaseProprietaire(BaseClasseCrans): return [] def factures_adh(self): - """ Retourne les factures pour adhésion """ - return self.factures("(debutAdhesion=*)") + """ Retourne les factures pour adhésion valides.""" + factures_adh = self.factures("(debutAdhesion=*)") + return [ + facture + for facture in factures_adh + if facture.controle() != "FALSE" + and facture.recuPaiement() is not None + ] def factures_conn(self): """ Retourne les factures pour connexion """ - return self.factures("(debutConnexion=*)") + factures_conn = self.factures("(debutConnexion=*)") + return [ + facture + for facture in factures_conn + if facture.controle() != "FALSE" + and facture.recuPaiement() is not None + ] def solde(self, operation=None, comment=None): """ Retourne ou modifie le solde d'un propriétaire