From 57cd8080eee1476099c85cc922e0abbb76380fe8 Mon Sep 17 00:00:00 2001 From: Victor Feyens Date: Fri, 25 Mar 2022 13:02:04 +0000 Subject: [PATCH] [FIX] website_sale: do not assign public/portal user as salesman for orders created on the e-commerce closes odoo/odoo#87337 X-original-commit: 3c377de0f14fff1b4448220c0a373dab7b800e27 Signed-off-by: Yannick Tivisse (yti) Signed-off-by: Victor Feyens (vfe) --- addons/website_sale/models/sale_order.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/addons/website_sale/models/sale_order.py b/addons/website_sale/models/sale_order.py index 07bb7474fbe..28c051f1fc5 100644 --- a/addons/website_sale/models/sale_order.py +++ b/addons/website_sale/models/sale_order.py @@ -27,6 +27,18 @@ class SaleOrder(models.Model): website_id = fields.Many2one('website', string='Website', readonly=True, help='Website through which this order was placed.') + def _compute_user_id(self): + """Do not assign self.env.user as salesman for e-commerce orders + Leave salesman empty if no salesman is specified on partner or website + + c/p of the logic in Website._prepare_sale_order_values + """ + website_orders = self.filtered('website_id') + super(SaleOrder, self - website_orders)._compute_user_id() + for order in website_orders: + if not order.user_id: + order.user_id = order.website_id.salesperson_id or order.partner_id.parent_id.user_id.id or order.partner_id.user_id.id + @api.model def _get_note_url(self): website = self.env['website'].get_current_website()