From 376dbeddb5abcae7e994f9bd01811230b05317f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Thu, 13 Jun 2024 12:34:50 +0200 Subject: [PATCH] Clear cached amount when resetting to draft sale, purchase and purchase requisition Closes #13296 --- modules/purchase/purchase.py | 6 +++++- modules/purchase_requisition/purchase.py | 6 +++++- modules/sale/sale.py | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/modules/purchase/purchase.py b/modules/purchase/purchase.py index 60c4593aaf..dd01368206 100644 --- a/modules/purchase/purchase.py +++ b/modules/purchase/purchase.py @@ -890,7 +890,11 @@ class Purchase( @Workflow.transition('draft') @reset_employee('quoted_by', 'confirmed_by') def draft(cls, purchases): - pass + cls.write(purchases, { + 'tax_amount_cache': None, + 'untaxed_amount_cache': None, + 'total_amount_cache': None, + }) @classmethod @ModelView.button diff --git a/modules/purchase_requisition/purchase.py b/modules/purchase_requisition/purchase.py index 32c2cd97c7..95b7954906 100644 --- a/modules/purchase_requisition/purchase.py +++ b/modules/purchase_requisition/purchase.py @@ -351,7 +351,11 @@ class PurchaseRequisition(Workflow, ModelSQL, ModelView): @Workflow.transition('draft') @reset_employee('approved_by', 'rejected_by') def draft(cls, requisitions): - pass + cls.write(requisitions, { + 'tax_amount_cache': None, + 'untaxed_amount_cache': None, + 'total_amount_cache': None, + }) @classmethod @ModelView.button diff --git a/modules/sale/sale.py b/modules/sale/sale.py index 155fdca49f..b193e85ed5 100644 --- a/modules/sale/sale.py +++ b/modules/sale/sale.py @@ -1026,7 +1026,11 @@ class Sale( @Workflow.transition('draft') @reset_employee('quoted_by', 'confirmed_by') def draft(cls, sales): - pass + cls.write(sales, { + 'tax_amount_cache': None, + 'untaxed_amount_cache': None, + 'total_amount_cache': None, + }) @classmethod @ModelView.button