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 += '<li>'+data['errors']['missing_perms'][i]+'</li>';
|
||||||
content += '</ul>';
|
content += '</ul>';
|
||||||
}
|
}
|
||||||
if ('negative' in data['errors'])
|
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>';
|
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']) {
|
if ('addcost' in data['errors']) {
|
||||||
content += '<ul>';
|
content += '<ul>';
|
||||||
if (data['errors']['addcost'].indexOf('__all__') != -1)
|
if (data['errors']['addcost'].indexOf('__all__') != -1)
|
||||||
|
|
|
@ -897,7 +897,7 @@ def kpsul_perform_operations(request):
|
||||||
if missing_perms:
|
if missing_perms:
|
||||||
data['errors']['missing_perms'] = missing_perms
|
data['errors']['missing_perms'] = missing_perms
|
||||||
if stop:
|
if stop:
|
||||||
data['errors']['negative'] = True
|
data['errors']['negative'] = [operationgroup.on_acc.trigramme]
|
||||||
return JsonResponse(data, status=403)
|
return JsonResponse(data, status=403)
|
||||||
|
|
||||||
# If 1 perm is required, filling who perform the operations
|
# 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
|
data['warnings']['already_canceled'] = opes_already_canceled
|
||||||
return JsonResponse(data)
|
return JsonResponse(data)
|
||||||
|
|
||||||
|
negative_accounts = []
|
||||||
# Checking permissions or stop
|
# Checking permissions or stop
|
||||||
for account in to_accounts_balances:
|
for account in to_accounts_balances:
|
||||||
(perms, stop) = account.perms_to_perform_operation(
|
(perms, stop) = account.perms_to_perform_operation(
|
||||||
amount = to_accounts_balances[account])
|
amount = to_accounts_balances[account])
|
||||||
required_perms |= perms
|
required_perms |= perms
|
||||||
stop_all = stop_all or stop
|
stop_all = stop_all or stop
|
||||||
|
if stop:
|
||||||
|
negative_accounts.append(account.trigramme)
|
||||||
|
|
||||||
if stop_all or not request.user.has_perms(required_perms):
|
if stop_all or not request.user.has_perms(required_perms):
|
||||||
missing_perms = get_missing_perms(required_perms, request.user)
|
missing_perms = get_missing_perms(required_perms, request.user)
|
||||||
if missing_perms:
|
if missing_perms:
|
||||||
data['errors']['missing_perms'] = missing_perms
|
data['errors']['missing_perms'] = missing_perms
|
||||||
if stop_all:
|
if stop_all:
|
||||||
data['errors']['negative'] = True
|
data['errors']['negative'] = negative_accounts
|
||||||
return JsonResponse(data, status=403)
|
return JsonResponse(data, status=403)
|
||||||
|
|
||||||
canceled_by = required_perms and request.user.profile.account_kfet or None
|
canceled_by = required_perms and request.user.profile.account_kfet or None
|
||||||
|
@ -1322,19 +1325,22 @@ def perform_transfers(request):
|
||||||
|
|
||||||
stop_all = False
|
stop_all = False
|
||||||
|
|
||||||
|
negative_accounts = []
|
||||||
# Checking if ok on all accounts
|
# Checking if ok on all accounts
|
||||||
for account in to_accounts_balances:
|
for account in to_accounts_balances:
|
||||||
(perms, stop) = account.perms_to_perform_operation(
|
(perms, stop) = account.perms_to_perform_operation(
|
||||||
amount = to_accounts_balances[account])
|
amount = to_accounts_balances[account])
|
||||||
required_perms |= perms
|
required_perms |= perms
|
||||||
stop_all = stop_all or stop
|
stop_all = stop_all or stop
|
||||||
|
if stop:
|
||||||
|
negative_accounts.append(account.trigramme)
|
||||||
|
|
||||||
if stop_all or not request.user.has_perms(required_perms):
|
if stop_all or not request.user.has_perms(required_perms):
|
||||||
missing_perms = get_missing_perms(required_perms, request.user)
|
missing_perms = get_missing_perms(required_perms, request.user)
|
||||||
if missing_perms:
|
if missing_perms:
|
||||||
data['errors']['missing_perms'] = missing_perms
|
data['errors']['missing_perms'] = missing_perms
|
||||||
if stop_all:
|
if stop_all:
|
||||||
data['errors']['negative'] = True
|
data['errors']['negative'] = negative_accounts
|
||||||
return JsonResponse(data, status=403)
|
return JsonResponse(data, status=403)
|
||||||
|
|
||||||
# Creating transfer group
|
# Creating transfer group
|
||||||
|
|
Loading…
Reference in a new issue