forked from DGNum/gestioCOF
Fix négatif lors d'annulations/transferts
This commit is contained in:
parent
42f6144226
commit
0c210aa48c
2 changed files with 14 additions and 5 deletions
|
@ -65,8 +65,11 @@ function getErrorsHtml(data) {
|
|||
content += '<li>'+data['errors']['missing_perms'][i]+'</li>';
|
||||
content += '</ul>';
|
||||
}
|
||||
if ('negative' in data['errors'])
|
||||
content += '<a class="btn btn-primary" href="/k-fet/accounts/'+account_data['trigramme']+'/edit" target="_blank">Autorisation de négatif requise</a>';
|
||||
if ('negative' in data['errors']) {
|
||||
for (var i=0; i<data['errors']['negative'].length; i++) {
|
||||
content += '<a class="btn btn-primary" href="/k-fet/accounts/'+data['errors']['negative'][i]+'/edit" target="_blank" style="width:100%">Autorisation de négatif requise pour '+data['errors']['negative'][i]+'</a>';
|
||||
}
|
||||
}
|
||||
if ('addcost' in data['errors']) {
|
||||
content += '<ul>';
|
||||
if (data['errors']['addcost'].indexOf('__all__') != -1)
|
||||
|
|
|
@ -897,7 +897,7 @@ def kpsul_perform_operations(request):
|
|||
if missing_perms:
|
||||
data['errors']['missing_perms'] = missing_perms
|
||||
if stop:
|
||||
data['errors']['negative'] = True
|
||||
data['errors']['negative'] = [operationgroup.on_acc.trigramme]
|
||||
return JsonResponse(data, status=403)
|
||||
|
||||
# If 1 perm is required, filling who perform the operations
|
||||
|
@ -1088,19 +1088,22 @@ def kpsul_cancel_operations(request):
|
|||
data['warnings']['already_canceled'] = opes_already_canceled
|
||||
return JsonResponse(data)
|
||||
|
||||
negative_accounts = []
|
||||
# Checking permissions or stop
|
||||
for account in to_accounts_balances:
|
||||
(perms, stop) = account.perms_to_perform_operation(
|
||||
amount = to_accounts_balances[account])
|
||||
required_perms |= perms
|
||||
stop_all = stop_all or stop
|
||||
if stop:
|
||||
negative_accounts.append(account.trigramme)
|
||||
|
||||
if stop_all or not request.user.has_perms(required_perms):
|
||||
missing_perms = get_missing_perms(required_perms, request.user)
|
||||
if missing_perms:
|
||||
data['errors']['missing_perms'] = missing_perms
|
||||
if stop_all:
|
||||
data['errors']['negative'] = True
|
||||
data['errors']['negative'] = negative_accounts
|
||||
return JsonResponse(data, status=403)
|
||||
|
||||
canceled_by = required_perms and request.user.profile.account_kfet or None
|
||||
|
@ -1322,19 +1325,22 @@ def perform_transfers(request):
|
|||
|
||||
stop_all = False
|
||||
|
||||
negative_accounts = []
|
||||
# Checking if ok on all accounts
|
||||
for account in to_accounts_balances:
|
||||
(perms, stop) = account.perms_to_perform_operation(
|
||||
amount = to_accounts_balances[account])
|
||||
required_perms |= perms
|
||||
stop_all = stop_all or stop
|
||||
if stop:
|
||||
negative_accounts.append(account.trigramme)
|
||||
|
||||
if stop_all or not request.user.has_perms(required_perms):
|
||||
missing_perms = get_missing_perms(required_perms, request.user)
|
||||
if missing_perms:
|
||||
data['errors']['missing_perms'] = missing_perms
|
||||
if stop_all:
|
||||
data['errors']['negative'] = True
|
||||
data['errors']['negative'] = negative_accounts
|
||||
return JsonResponse(data, status=403)
|
||||
|
||||
# Creating transfer group
|
||||
|
|
Loading…
Reference in a new issue