summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Feyens <vfe@odoo.com>2020-09-01 08:46:26 +0000
committerVictor Feyens <vfe@odoo.com>2020-09-01 10:16:39 +0000
commit2ad2f3d6567b6266fc42c6d2999d11f3066b282c (patch)
treebfe4aca8aea89de87f75ebca25d2210c0b76f164
parent48fe6b824ef4f99f54883f013f32a1276d3818d8 (diff)
[FIX] sale_coupon: batch confirmation of sales orders
`_send_reward_coupon_mail` is defined as `ensure_one` but is called on `self` in `action_confirm` which supports multiple records in self, thus raising a ValueError when confirming multiple sales orders together. This commit adapts the method to handle multiple records. FW-Port of odoo/enterprise#12161 closes odoo/odoo#56855 X-original-commit: 99c230c1c167d7369f8003c0219386799f92097d Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com> Co-authored-by: Alex Comba <alex.comba@agilebg.com>
-rw-r--r--addons/sale_coupon/models/sale_order.py13
1 files changed, 7 insertions, 6 deletions
diff --git a/addons/sale_coupon/models/sale_order.py b/addons/sale_coupon/models/sale_order.py
index 742781355ae..50d04f68725 100644
--- a/addons/sale_coupon/models/sale_order.py
+++ b/addons/sale_coupon/models/sale_order.py
@@ -240,12 +240,13 @@ class SaleOrder(models.Model):
def _send_reward_coupon_mail(self):
template = self.env.ref('coupon.mail_template_sale_coupon', raise_if_not_found=False)
if template:
- for coupon in self.generated_coupon_ids:
- self.message_post_with_template(
- template.id, composition_mode='comment',
- model='coupon.coupon', res_id=coupon.id,
- email_layout_xmlid='mail.mail_notification_light',
- )
+ for order in self:
+ for coupon in order.generated_coupon_ids:
+ order.message_post_with_template(
+ template.id, composition_mode='comment',
+ model='coupon.coupon', res_id=coupon.id,
+ email_layout_xmlid='mail.mail_notification_light',
+ )
def _get_applicable_programs(self):
"""