[IMP] lunch: Add multi-company ir.rule
- Add a related on the lunch.supplier to the company id of the linked res.partner - Add related on the product: to the company id of the linked lunch.supplier - add multi company Record rules closes odoo/odoo#34859 Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
This commit is contained in:
committed by
Yannick Tivisse
parent
556f8389b1
commit
50043cc3ad
@@ -94,7 +94,7 @@ class LunchProduct(models.Model):
|
||||
supplier_id = fields.Many2one('lunch.supplier', 'Vendor', required=True)
|
||||
active = fields.Boolean(default=True)
|
||||
|
||||
company_id = fields.Many2one('res.company', default=lambda self: self.env.company)
|
||||
company_id = fields.Many2one('res.company', related='supplier_id.company_id', store=True)
|
||||
currency_id = fields.Many2one('res.currency', related='company_id.currency_id')
|
||||
|
||||
# image: all image fields are base64 encoded and PIL-supported
|
||||
|
||||
@@ -48,6 +48,7 @@ class LunchSupplier(models.Model):
|
||||
city = fields.Char(related='partner_id.city', readonly=False)
|
||||
state_id = fields.Many2one("res.country.state", related='partner_id.state_id', readonly=False)
|
||||
country_id = fields.Many2one('res.country', related='partner_id.country_id', readonly=False)
|
||||
company_id = fields.Many2one('res.company', related='partner_id.company_id', readonly=False)
|
||||
|
||||
responsible_id = fields.Many2one('res.users', string="Responsible", domain=lambda self: [('groups_id', 'in', self.env.ref('lunch.group_lunch_manager').id)],
|
||||
default=lambda self: self.env.user,
|
||||
|
||||
@@ -44,5 +44,19 @@
|
||||
<record id="base.default_user" model="res.users">
|
||||
<field name="groups_id" eval="[(4,ref('lunch.group_lunch_manager'))]"/>
|
||||
</record>
|
||||
|
||||
<record id="ir_rule_lunch_supplier_multi_company" model="ir.rule">
|
||||
<field name="name">Lunch supplier: Multi Company</field>
|
||||
<field name="model_id" ref="model_lunch_supplier"/>
|
||||
<field name="global" eval="True"/>
|
||||
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', 'in', company_ids)]</field>
|
||||
</record>
|
||||
|
||||
<record id="ir_rule_lunch_product_multi_company" model="ir.rule">
|
||||
<field name="name">Lunch product: Multi Company</field>
|
||||
<field name="model_id" ref="model_lunch_product"/>
|
||||
<field name="global" eval="True"/>
|
||||
<field name="domain_force">['|', ('company_id', '=', False), ('company_id', 'in', company_ids)]</field>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
<field name="active" invisible="1"/>
|
||||
<field name="email" attrs="{'required': [('send_by', '=', 'mail')]}"/>
|
||||
<field name="phone" attrs="{'required': [('send_by', '=', 'phone')]}"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="responsible_id" attrs="{'required': [('send_by', '=', 'mail')]}" groups="base.group_no_one"/>
|
||||
</group>
|
||||
</group>
|
||||
|
||||
Reference in New Issue
Block a user