forked from DGNum/gestioCOF
Gestion des permissions dans K-Psul
- Ajout d'une méthode sur Account pour connaître les permissions nécessaires pour enregistrer des opérations en fonction du futur solde du compte - Ajout d'une permission pour effectuer une charge sur un compte - Ajoute que l'utilisateur connecté doit avoir toutes les permissions nécessaires pour enregistrer un groupe d'opérations. Si ce n'est pas le cas, aucune opération n'est enregistrée et les permissions manquantes sont envoyées en réponse. - Dans le cas d'une charge ou d'un retrait, "article" et "article_nb" de Operation sont définis à NULL
This commit is contained in:
parent
515a7ce28e
commit
4cb89aa005
5 changed files with 87 additions and 9 deletions
|
@ -93,6 +93,13 @@ class Account(models.Model):
|
|||
data['is_free'] = True
|
||||
return data
|
||||
|
||||
def perms_to_perform_operation(self, amount):
|
||||
new_balance = self.balance + amount
|
||||
perms = []
|
||||
if new_balance < 0:
|
||||
perms.append('kfet.can_perform_negative_operations')
|
||||
return perms
|
||||
|
||||
# Surcharge Méthode save() avec gestions de User et CofProfile
|
||||
# Args:
|
||||
# - data : datas pour User et CofProfile
|
||||
|
@ -415,6 +422,9 @@ class GlobalPermissions(models.Model):
|
|||
managed = False
|
||||
permissions = (
|
||||
('is_team', 'Is part of the team'),
|
||||
('can_perform_deposit', 'Peut effectuer une charge'),
|
||||
('can_perform_negative_operations',
|
||||
'Peut enregistrer des commandes en négatif')
|
||||
)
|
||||
|
||||
class Settings(models.Model):
|
||||
|
@ -437,4 +447,5 @@ class Settings(models.Model):
|
|||
return 0
|
||||
|
||||
class SettingsError(Exception):
|
||||
pass
|
||||
def __init__(self, msg):
|
||||
self.msg = msg
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue