From 34416ecf87541a3b8d350d87c43d72fbc26f9d1a Mon Sep 17 00:00:00 2001 From: Harsh Modi Date: Wed, 13 Mar 2024 15:11:14 +0530 Subject: [PATCH] [FIX] pos_online_payment: prioritize pos order customer Before this commit: POS online payments uses the logged-in user or the public user, even when a POS order customer might also be present. After this commit: We check the partner_id for POS orders and give it precedence over both the logged-in user and the public user. task-3805695 closes odoo/odoo#157562 Signed-off-by: Joseph Caburnay (jcb) --- addons/pos_online_payment/controllers/payment_portal.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/pos_online_payment/controllers/payment_portal.py b/addons/pos_online_payment/controllers/payment_portal.py index 1c9cf5ae116..9ac4fad5f42 100644 --- a/addons/pos_online_payment/controllers/payment_portal.py +++ b/addons/pos_online_payment/controllers/payment_portal.py @@ -99,7 +99,7 @@ class PaymentPortal(payment_portal.PaymentPortal): user_sudo = request.env.user logged_in = not user_sudo._is_public() - partner_sudo = self._get_partner_sudo(user_sudo) + partner_sudo = pos_order_sudo.partner_id or self._get_partner_sudo(user_sudo) if not partner_sudo: return self._redirect_login() @@ -179,7 +179,7 @@ class PaymentPortal(payment_portal.PaymentPortal): exit_route = request.httprequest.args.get('exit_route') user_sudo = request.env.user logged_in = not user_sudo._is_public() - partner_sudo = self._get_partner_sudo(user_sudo) + partner_sudo = pos_order_sudo.partner_id or self._get_partner_sudo(user_sudo) if not partner_sudo: return self._redirect_login()