Upgrade rules in commission module

and move rule to commission_manager module
task-035089
This commit is contained in:
Raimon Esteve 2018-07-19 15:57:13 +02:00
parent 8ddb3217c9
commit 3b5d682f41
4 changed files with 14 additions and 52 deletions

View File

@ -3,7 +3,6 @@
# the full copyright notices and license terms.
from trytond.pool import Pool
from . import activity
from . import commission
from . import bank
from . import employee
from . import carrier
@ -35,11 +34,4 @@ def register():
carrier.Carrier,
depends=['carrier'],
module='party_company', type_='model')
Pool.register(
commission.Agent,
depends=['commission'],
module='party_company', type_='model')
Pool.register(
commission.Manager,
depends=['commission_manager'],
module='party_company', type_='model')

View File

@ -1,27 +0,0 @@
# The COPYRIGHT file at the top level of this repository contains the full
# copyright notices and license terms.
from trytond.model import fields
from trytond.pool import PoolMeta
from . import party
__all__ = ['Manager', 'Agent']
class Manager:
__metaclass__ = PoolMeta
__name__ = 'commission.manager'
companies = fields.Function(fields.One2Many('company.company', None,
'Companies'), 'get_companies', searcher='search_companies')
def get_companies(self, name):
if self.agent:
return [c.id for c in self.agent.party.companies]
@classmethod
def search_companies(cls, name, clause):
return [('agent.party.companies',) + tuple(clause[1:])]
class Agent(party.PartyCompanyMixin):
__metaclass__ = PoolMeta
__name__ = 'commission.agent'

View File

@ -3,6 +3,18 @@
this repository contains the full copyright notices and license terms. -->
<tryton>
<data depends="commission">
<!-- commission -->
<record model="ir.rule.group" id="rule_group_commission">
<field name="model" search="[('model', '=', 'commission')]"/>
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_commission1">
<field name="domain"
eval="[('agent.company', '=', Eval('user', {}).get('company', None))]"
pyson="1"/>
<field name="rule_group" ref="rule_group_commission"/>
</record>
<!-- commission.agent -->
<record model="ir.rule.group" id="rule_group_commission_agent">
<field name="model" search="[('model', '=', 'commission.agent')]"/>
@ -10,23 +22,9 @@ this repository contains the full copyright notices and license terms. -->
</record>
<record model="ir.rule" id="rule_commission_agent1">
<field name="domain"
eval="['OR', ('companies', 'in', [Eval('user', {}).get('company', None)]), ('companies', 'in', [])]"
eval="[('company', '=', Eval('user', {}).get('company', None))]"
pyson="1"/>
<field name="rule_group" ref="rule_group_commission_agent"/>
</record>
</data>
<data depends="commission_manager">
<!-- commission.manager -->
<record model="ir.rule.group" id="rule_group_commission_manager">
<field name="model" search="[('model', '=', 'commission.manager')]"/>
<field name="global_p" eval="True"/>
</record>
<record model="ir.rule" id="rule_commission_manager1">
<field name="domain"
eval="['OR', ('companies', 'in', [Eval('user', {}).get('company', None)]), ('companies', 'in', [])]"
pyson="1"/>
<field name="rule_group" ref="rule_group_commission_manager"/>
</record>
</data>
</tryton>

View File

@ -11,7 +11,6 @@ extras_depend:
bank
carrier
commission
commission_manager
commission_party
stock
xml: