25 lines
1012 B
Python
25 lines
1012 B
Python
from odoo import models, fields, api
|
|
|
|
class MrpProduction(models.Model):
|
|
_inherit = 'mrp.production'
|
|
|
|
restrict_quality_check_button = fields.Boolean(compute='_compute_restrict_quality_check_button')
|
|
|
|
@api.depends_context('uid')
|
|
def _compute_restrict_quality_check_button(self):
|
|
user = self.env.user
|
|
for production in self:
|
|
is_inventory_user = user.has_group('stock.group_stock_user')
|
|
is_mrp_user = user.has_group('mrp.group_mrp_user')
|
|
is_mrp_manager = user.has_group('mrp.group_mrp_manager')
|
|
|
|
is_restricted_role = is_inventory_user or is_mrp_user or is_mrp_manager
|
|
|
|
is_quality_manager = user.has_group('quality.group_quality_manager')
|
|
is_system = user.has_group('base.group_system')
|
|
|
|
if is_restricted_role and not (is_quality_manager or is_system):
|
|
production.restrict_quality_check_button = True
|
|
else:
|
|
production.restrict_quality_check_button = False
|