diff --git a/addons/event_sale/models/sale_order.py b/addons/event_sale/models/sale_order.py index 685571079c6..adb203fa805 100644 --- a/addons/event_sale/models/sale_order.py +++ b/addons/event_sale/models/sale_order.py @@ -29,9 +29,9 @@ class SaleOrder(models.Model): ._for_xml_id('event_sale.action_sale_order_event_registration') return res - def action_cancel(self): + def _action_cancel(self): self.order_line._cancel_associated_registrations() - return super(SaleOrder, self).action_cancel() + return super()._action_cancel() def action_view_attendee_list(self): action = self.env["ir.actions.actions"]._for_xml_id("event.event_registration_action_tree") diff --git a/addons/sale/models/sale_order.py b/addons/sale/models/sale_order.py index fa0231f321f..d38652f2ca1 100644 --- a/addons/sale/models/sale_order.py +++ b/addons/sale/models/sale_order.py @@ -877,6 +877,9 @@ class SaleOrder(models.Model): 'context': {'default_order_id': self.id}, 'target': 'new' } + return self._action_cancel() + + def _action_cancel(self): inv = self.invoice_ids.filtered(lambda inv: inv.state == 'draft') inv.button_cancel() return self.write({'state': 'cancel'}) diff --git a/addons/sale_coupon/models/sale_order.py b/addons/sale_coupon/models/sale_order.py index c2f54dcbd6c..cd52c05f8d2 100644 --- a/addons/sale_coupon/models/sale_order.py +++ b/addons/sale_coupon/models/sale_order.py @@ -49,8 +49,8 @@ class SaleOrder(models.Model): self._send_reward_coupon_mail() return super(SaleOrder, self).action_confirm() - def action_cancel(self): - res = super(SaleOrder, self).action_cancel() + def _action_cancel(self): + res = super()._action_cancel() self.generated_coupon_ids.write({'state': 'expired'}) self.applied_coupon_ids.write({'state': 'new'}) self.applied_coupon_ids.sales_order_id = False diff --git a/addons/sale_stock/models/sale_order.py b/addons/sale_stock/models/sale_order.py index 026c25d2053..ab7ecd497a3 100644 --- a/addons/sale_stock/models/sale_order.py +++ b/addons/sale_stock/models/sale_order.py @@ -174,10 +174,7 @@ class SaleOrder(models.Model): def action_view_delivery(self): return self._get_action_view_picking(self.picking_ids) - def action_cancel(self): - res = super(SaleOrder, self).action_cancel() - if(isinstance(res, dict)): - return res + def _action_cancel(self): documents = None for sale_order in self: if sale_order.state == 'sale' and sale_order.order_line: @@ -192,7 +189,7 @@ class SaleOrder(models.Model): continue filtered_documents[(parent, responsible)] = rendering_context self._log_decrease_ordered_quantity(filtered_documents, cancel=True) - return res + return super()._action_cancel() def _get_action_view_picking(self, pickings): '''