Check rule only if _check_access is set and enforce companies rule

issue4080
This commit is contained in:
Raimon Esteve 2022-03-22 18:11:30 +01:00
parent 660649d45e
commit 4b17757b7d
3 changed files with 9 additions and 4 deletions

View File

@ -24,7 +24,7 @@ class Production(metaclass=PoolMeta):
__name__ = 'production'
quality_templates = fields.Function(fields.One2Many(
'product.template-quality.template', None, "Quality Templates"),
'product.template-quality.template', None, "Quality Templates"),
'get_quality_templates')
quality_tests = fields.One2Many('quality.test', 'document', 'Quality Tests',
@ -107,7 +107,11 @@ class ProductionTemplate(ModelSQL, ModelView):
__name__ = 'product.template-quality.template'
template = fields.Many2One('product.template', "Template",required=True,
ondelete="CASCADE")
ondelete="CASCADE",
context={
'company': Eval('company'),
},
depends=['company'])
company = fields.Many2One('company.company', "Company", required=True)
interval = fields.Integer("Interval", required=True,
help="Interval in minutes")

View File

@ -28,7 +28,7 @@
</record>
<record model="ir.rule" id="rule_product_template_quality_template">
<field name="domain"
eval="[('company', '=', Eval('user', {}).get('company', None))]"
eval="[('company', 'in', Eval('companies', []))]"
pyson="1"/>
<field name="rule_group" ref="rule_product_quality_template"/>
</record>

View File

@ -4,9 +4,10 @@
import unittest
import trytond.tests.test_tryton
from trytond.tests.test_tryton import ModuleTestCase
from trytond.modules.company.tests import CompanyTestMixin
class TestCase(ModuleTestCase):
class TestCase(CompanyTestMixin, ModuleTestCase):
'Test module'
module = 'production_quality_control'