From 59c3b32778c20de5f835f1575aeccfb9e7697d0f Mon Sep 17 00:00:00 2001 From: Pierre Masereel Date: Mon, 14 Feb 2022 14:15:26 +0000 Subject: [PATCH] [FIX] pos_coupon: allow coupon creation when generated from POS When a coupon is generated from POS order, you get a traceback saying you don't have access rights on "coupon.coupon" when you are only a pos user. So when we need to create the coupons and write on it, we are doing it in sudo, to let the pos process generate the coupon. Task-id: 2742528 X-original-commit: 2faefd5d6e69170a49c2cc5aca000f791f40f448 Part-of: odoo/odoo#84583 --- addons/pos_coupon/models/pos_order.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/pos_coupon/models/pos_order.py b/addons/pos_coupon/models/pos_order.py index f66bb707e04..5e8edf7b55f 100644 --- a/addons/pos_coupon/models/pos_order.py +++ b/addons/pos_coupon/models/pos_order.py @@ -39,7 +39,7 @@ class PosOrder(models.Model): unused_coupon_ids = unused_coupon_ids or [] self.env["coupon.coupon"].browse(unused_coupon_ids).write({"state": "new"}) - self.write( + self.sudo().write( { "applied_program_ids": [(4, i) for i in self.lines.program_id.ids], "used_coupon_ids": [(4, i) for i in self.lines.coupon_id.ids], @@ -48,7 +48,7 @@ class PosOrder(models.Model): for i in ( self.env["coupon.program"] .browse(program_ids_to_generate_coupons) - ._generate_coupons(self.partner_id.id) + .sudo()._generate_coupons(self.partner_id.id) ).ids ], }