23 lines
820 B
Python
23 lines
820 B
Python
from odoo import models
|
|
|
|
|
|
class PosSession(models.Model):
|
|
_inherit = 'pos.session'
|
|
|
|
def _get_message_author(self):
|
|
"""Override to read employee partner with sudo() to avoid res.partner
|
|
access errors when the cashier's allowed companies don't include the
|
|
company_id set on work_contact_id (caused by hr_multi_company_employee
|
|
assigning employees to branch companies).
|
|
"""
|
|
if not self.employee_id:
|
|
return None
|
|
|
|
# Use sudo() to bypass multi-company partner rule when reading
|
|
# the employee's work_contact_id or user partner for message posting.
|
|
employee = self.employee_id.sudo()
|
|
if related_partners := employee._get_related_partners():
|
|
return related_partners[0]
|
|
|
|
return self.sudo().user_id.partner_id
|