changeset b795c2d2472b in modules/purchase_requisition:default
details: 
https://hg.tryton.org/modules/purchase_requisition?cmd=changeset&node=b795c2d2472b
description:
        Check rule only if _check_access is set and enforce companies rule

        issue4080
        review343891009
diffstat:

 purchase.xml                       |  40 ++++++++++++++++++++++++-------------
 tests/test_purchase_requisition.py |   4 +-
 2 files changed, 28 insertions(+), 16 deletions(-)

diffs (93 lines):

diff -r 25ac2a496d23 -r b795c2d2472b purchase.xml
--- a/purchase.xml      Fri Apr 09 10:52:03 2021 +0200
+++ b/purchase.xml      Sat Apr 10 23:46:24 2021 +0200
@@ -232,7 +232,20 @@
             <field name="group" ref="group_purchase_requisition_approval"/>
         </record>
 
-        <record model="ir.rule.group" id="rule_group_requisition_default">
+        <record model="ir.rule.group" id="rule_group_requisition_companies">
+            <field name="name">User in companies</field>
+            <field name="model" search="[('model', '=', 
'purchase.requisition')]"/>
+            <field name="global_p" eval="True"/>
+        </record>
+        <record model="ir.rule" id="rule_requisition_companies">
+            <field
+                name="domain"
+                eval="[('company', 'in', Eval('companies', []))]"
+                pyson="1"/>
+            <field name="rule_group" ref="rule_group_requisition_companies"/>
+        </record>
+
+        <record model="ir.rule.group" id="rule_group_requisition_employees">
             <field name="name">Own requisition</field>
             <field name="model"
                 search="[('model', '=', 'purchase.requisition')]"/>
@@ -240,39 +253,38 @@
             <field name="default_p" eval="True"/>
             <field name="perm_read" eval="False"/>
         </record>
-         <record model="ir.rule" id="rule_requisition_default">
+         <record model="ir.rule" id="rule_requisition_employees">
             <field name="domain"
-                eval="[('employee', 'in', Eval('user', {}).get('employees', 
None))]"
+                eval="[('employee', 'in', Eval('employees', []))]"
                 pyson="1"/>
-            <field name="rule_group" ref="rule_group_requisition_default"/>
+            <field name="rule_group" ref="rule_group_requisition_employees"/>
         </record>
         <record model="ir.rule.group-res.group"
-            id="rule_group_requisition_default_group_purchase_requisition">
-            <field name="rule_group"
-                ref="rule_group_requisition_default"/>
+            id="rule_group_requisition_employees_group_purchase_requisition">
+            <field name="rule_group" ref="rule_group_requisition_employees"/>
             <field name="group" ref="group_purchase_requisition"/>
         </record>
 
         <!-- Give access to user who could trigger requisition work-flow -->
-        <record model="ir.rule.group" id="rule_group_requisition">
+        <record model="ir.rule.group" id="rule_group_requisition_admin">
             <field name="name">Any requisition</field>
             <field name="model"
                 search="[('model', '=', 'purchase.requisition')]"/>
             <field name="global_p" eval="False"/>
         </record>
         <record model="ir.rule.group-res.group"
-            id="rule_group_requisition_group_purchase_requisition_approval">
-            <field name="rule_group" ref="rule_group_requisition"/>
+            
id="rule_group_requisition_admin_group_purchase_requisition_approval">
+            <field name="rule_group" ref="rule_group_requisition_admin"/>
             <field name="group" ref="group_purchase_requisition_approval"/>
         </record>
         <record model="ir.rule.group-res.group"
-            id="rule_group_requisition_group_purchase_request">
-            <field name="rule_group" ref="rule_group_requisition"/>
+            id="rule_group_requisition_admin_group_purchase_request">
+            <field name="rule_group" ref="rule_group_requisition_admin"/>
             <field name="group" ref="purchase_request.group_purchase_request"/>
         </record>
         <record model="ir.rule.group-res.group"
-            id="rule_group_requisition_group_purchase">
-            <field name="rule_group" ref="rule_group_requisition"/>
+            id="rule_group_requisition_admin_group_purchase">
+            <field name="rule_group" ref="rule_group_requisition_admin"/>
             <field name="group" ref="purchase.group_purchase"/>
         </record>
 
diff -r 25ac2a496d23 -r b795c2d2472b tests/test_purchase_requisition.py
--- a/tests/test_purchase_requisition.py        Fri Apr 09 10:52:03 2021 +0200
+++ b/tests/test_purchase_requisition.py        Sat Apr 10 23:46:24 2021 +0200
@@ -9,10 +9,10 @@
 from trytond.tests.test_tryton import doctest_teardown
 from trytond.tests.test_tryton import doctest_checker
 
-from trytond.modules.company.tests import CompanyMultiValueTestMixin
+from trytond.modules.company.tests import CompanyTestMixin
 
 
-class PurchaseRequisitionTestCase(CompanyMultiValueTestMixin, ModuleTestCase):
+class PurchaseRequisitionTestCase(CompanyTestMixin, ModuleTestCase):
     'Test Purchase Requisition module'
     module = 'purchase_requisition'
 

Reply via email to