forked from DGNum/gestioCOF
Annulation et balance de caisses
- Une opération annulée alors qu'il y a eu un relevé depuis ne modifie plus la balance de la caisse - Fix maj balance caisse lors d'une annulation sur LIQ
This commit is contained in:
parent
313764dcf4
commit
093c7ffb0e
1 changed files with 15 additions and 5 deletions
|
@ -872,12 +872,22 @@ def kpsul_cancel_operations(request):
|
||||||
to_accounts_balances[ope.addcost_for] -= ope.addcost_amount
|
to_accounts_balances[ope.addcost_for] -= ope.addcost_amount
|
||||||
# Pour les groupes d'opés
|
# Pour les groupes d'opés
|
||||||
to_groups_amounts[ope.group] -= ope.amount
|
to_groups_amounts[ope.group] -= ope.amount
|
||||||
|
|
||||||
# Pour les balances de caisses
|
# Pour les balances de caisses
|
||||||
|
# Les balances de caisses dont il y a eu un relevé depuis la date
|
||||||
|
# de la commande ne doivent pas être modifiées
|
||||||
|
# TODO ? : Maj les balance_old de relevés pour modifier l'erreur
|
||||||
|
last_statement = (CheckoutStatement.objects
|
||||||
|
.filter(checkout=ope.group.checkout)
|
||||||
|
.order_by('at')
|
||||||
|
.last())
|
||||||
|
if not last_statement or last_statement.at < ope.group.at:
|
||||||
if ope.type == Operation.PURCHASE:
|
if ope.type == Operation.PURCHASE:
|
||||||
if ope.group.on_acc.is_cash:
|
if ope.group.on_acc.is_cash:
|
||||||
to_checkouts_balances[ope.group.on_acc] -= - ope.amount
|
to_checkouts_balances[ope.group.checkout] -= - ope.amount
|
||||||
else:
|
else:
|
||||||
to_checkouts_balances[ope.group.checkout] -= ope.amount
|
to_checkouts_balances[ope.group.checkout] -= ope.amount
|
||||||
|
|
||||||
# Pour les stocks d'articles
|
# Pour les stocks d'articles
|
||||||
if ope.article and ope.article_nb:
|
if ope.article and ope.article_nb:
|
||||||
to_articles_stocks[ope.article] += ope.article_nb
|
to_articles_stocks[ope.article] += ope.article_nb
|
||||||
|
|
Loading…
Reference in a new issue