From bc0487f65a8ddc16e5241bff9501865e846e13b5 Mon Sep 17 00:00:00 2001 From: Suherdy Yacob Date: Mon, 8 Jun 2026 15:46:16 +0700 Subject: [PATCH] feat: hide PoS reporting menu in kanban view for restricted users via pos.config inheritance --- __manifest__.py | 1 + models/__init__.py | 1 + models/pos_config.py | 11 +++++++++++ views/pos_config_views.xml | 19 +++++++++++++++++++ 4 files changed, 32 insertions(+) create mode 100644 models/pos_config.py create mode 100644 views/pos_config_views.xml diff --git a/__manifest__.py b/__manifest__.py index 49c4b73..d5297fb 100644 --- a/__manifest__.py +++ b/__manifest__.py @@ -14,6 +14,7 @@ 'depends': ['base', 'point_of_sale', 'pos_enterprise'], 'data': [ 'views/res_users_views.xml', + 'views/pos_config_views.xml', ], 'installable': True, 'application': False, diff --git a/models/__init__.py b/models/__init__.py index 716b818..18ea34e 100644 --- a/models/__init__.py +++ b/models/__init__.py @@ -1,2 +1,3 @@ from . import res_users from . import ir_ui_menu +from . import pos_config diff --git a/models/pos_config.py b/models/pos_config.py new file mode 100644 index 0000000..1f4d1be --- /dev/null +++ b/models/pos_config.py @@ -0,0 +1,11 @@ +from odoo import models, fields + +class PosConfig(models.Model): + _inherit = 'pos.config' + + is_pos_user_restricted = fields.Boolean(compute='_compute_is_pos_user_restricted') + + def _compute_is_pos_user_restricted(self): + is_pos = self.env.user.is_pos_user + for config in self: + config.is_pos_user_restricted = is_pos diff --git a/views/pos_config_views.xml b/views/pos_config_views.xml new file mode 100644 index 0000000..ec7c418 --- /dev/null +++ b/views/pos_config_views.xml @@ -0,0 +1,19 @@ + + + + pos.config.kanban.view.inherit + pos.config + + + + + + + + + + is_pos_user_restricted + + + +