From f9233da337733e5fd0ef623016aea4d096f69ef6 Mon Sep 17 00:00:00 2001 From: Suherdy Yacob Date: Mon, 8 Jun 2026 21:20:22 +0700 Subject: [PATCH] feat: bypass loyalty program state reset logic during module installation and explicit context triggers --- models/loyalty_program.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/models/loyalty_program.py b/models/loyalty_program.py index bbc03ef..22fb8c9 100644 --- a/models/loyalty_program.py +++ b/models/loyalty_program.py @@ -50,6 +50,12 @@ class LoyaltyProgram(models.Model): if len(vals) == 1 and 'state' in vals: return super().write(vals) + # Skip reset logic if Odoo is installing/upgrading modules or explicitly bypassed + if (self.env.context.get('install_mode') + or self.env.context.get('module') + or self.env.context.get('no_marketing_reset')): + return super().write(vals) + # For modifications, check if they are in pending/approved state programs_to_reset = self.filtered(lambda p: p.state in ['pending', 'approved']) if programs_to_reset: