From b5c8d24c11fd72950427fdd331face234dab510a Mon Sep 17 00:00:00 2001 From: Morita Shinnosuke Date: Mon, 3 Aug 2026 07:19:46 +0000 Subject: [PATCH] [IMP] base_tier_validation: reflect oca changes Reflect the _remove_reviews hook extraction from OCA/server-ux#1307. Review removal in write() and restart_validation() now goes through a dedicated _remove_reviews() method, so other modules can override the behavior (e.g. archive reviews as history instead of deleting them). --- base_tier_validation/models/tier_validation.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/base_tier_validation/models/tier_validation.py b/base_tier_validation/models/tier_validation.py index 302fd61a..9753c2fd 100644 --- a/base_tier_validation/models/tier_validation.py +++ b/base_tier_validation/models/tier_validation.py @@ -444,7 +444,7 @@ def write(self, vals): } ) if rec._allow_to_remove_reviews(vals): - rec.mapped("review_ids").unlink() + rec._remove_reviews() return super(TierValidation, self).write(vals) def _allow_to_remove_reviews(self, values): @@ -754,7 +754,7 @@ def restart_validation(self): .mapped("partner_id") .ids ) - rec.mapped("review_ids").unlink() + rec._remove_reviews() if to_update_counter: self._update_counter({"review_deleted": True}) if partners_to_notify_ids: @@ -786,6 +786,10 @@ def _update_counter(self, review_counter): notifications.append([self.env.user.partner_id, channel, review_counter]) self.env["bus.bus"]._sendmany(notifications) + def _remove_reviews(self): + """Remove the reviews. Hook to allow overriding the removal behavior.""" + self.review_ids.unlink() + def unlink(self): self.mapped("review_ids").unlink() return super().unlink()