From 546ce6416b999f9992fe8f3c2bbef021829ea502 Mon Sep 17 00:00:00 2001 From: Goffin Simon Date: Tue, 28 Sep 2021 15:53:21 +0000 Subject: [PATCH] [FIX] sale_coupon: Prommotional program applied on canceled SO Steps to reproduce the bug: - Create a promotional program P with 'Fixed amount' discount of $50 and 'Automatically applied' on current order - Create SO and cancel it Bug: P was applied on the canceled SO opw:2579344 closes odoo/odoo#77455 X-original-commit: 8f11cabcb605cab5c83e4889156e4979d55aa517 Signed-off-by: Simon Goffin (sig) --- addons/sale_coupon/models/sale_order.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/sale_coupon/models/sale_order.py b/addons/sale_coupon/models/sale_order.py index 1dbe8566a5c..5a7339a32a8 100644 --- a/addons/sale_coupon/models/sale_order.py +++ b/addons/sale_coupon/models/sale_order.py @@ -30,7 +30,8 @@ class SaleOrder(models.Model): def recompute_coupon_lines(self): for order in self: order._remove_invalid_reward_lines() - order._create_new_no_code_promo_reward_lines() + if order.state != 'cancel': + order._create_new_no_code_promo_reward_lines() order._update_existing_reward_lines() @api.returns('self', lambda value: value.id)