From 089f7d00e1058df8c16d683d6877bb7dadfd5c5f Mon Sep 17 00:00:00 2001 From: benjamin <benjamin@le-filament.com> Date: Thu, 4 Jan 2024 17:53:52 +0100 Subject: [PATCH] [UPD] add current_ur_id for user and update mail.activity.type rule --- models/res_users.py | 16 ++++++++++++++-- security/security_rules.xml | 31 +++++-------------------------- 2 files changed, 19 insertions(+), 28 deletions(-) diff --git a/models/res_users.py b/models/res_users.py index 81c35ab..67182d8 100644 --- a/models/res_users.py +++ b/models/res_users.py @@ -12,17 +12,29 @@ class ResUsers(models.Model): return self.env.company.ur_id ur_id = fields.Many2one( - "union.regionale", compute="_compute_ur_id", string="UR", store=True + comodel_name="union.regionale", + compute="_compute_ur_id", + string="UR", + store=True + ) + current_ur_id = fields.Many2one( + comodel_name="union.regionale", + compute="_compute_current_ur_id", + string="UR courant", ) # ------------------------------------------------------ - # Compute funcitons + # Compute functions # ------------------------------------------------------ @api.depends("company_id.ur_id") def _compute_ur_id(self): for user in self: user.ur_id = user.company_id.ur_id + def _compute_current_ur_id(self): + for user in self: + user.current_ur_id = self.env.company.ur_id + # ------------------------------------------------------ # Override parent # ------------------------------------------------------ diff --git a/security/security_rules.xml b/security/security_rules.xml index 3c34efa..92c83ca 100644 --- a/security/security_rules.xml +++ b/security/security_rules.xml @@ -219,36 +219,15 @@ <field eval="True" name="global" /> </record> -<!-- <record id="mail_activity_type_rule_ur_readall" model="ir.rule">--> -<!-- <field name="name">read all mail activity type rule per ur</field>--> -<!-- <field name="model_id" ref="mail.model_mail_activity_type"/>--> -<!-- <field name="domain_force">['|',('ur_id','=',False),('ur_id','=',user.company_id.ur_id.id)]</field>--> -<!-- <field name="groups" eval="[(6, 0, [ref('base.group_user')])]"/>--> -<!-- <field name="perm_read" eval="True"/>--> -<!-- <field name="perm_write" eval="False"/>--> -<!-- <field name="perm_create" eval="False"/>--> -<!-- <field name="perm_unlink" eval="False"/>--> -<!-- </record>--> - - <record id="mail_activity_type_rule_ur" model="ir.rule"> - <field name="name">mail activity type rule per ur</field> - <field name="model_id" ref="mail.model_mail_activity_type" /> - <field name="domain_force">[('ur_id','=',user.company_id.ur_id.id)]</field> - <field name="groups" eval="[(6, 0, [ref('base.group_user')])]" /> - <field name="perm_read" eval="False" /> - <field name="perm_write" eval="True" /> - <field name="perm_create" eval="True" /> - <field name="perm_unlink" eval="False" /> - </record> <record id="mail_activity_type_rule_admin" model="ir.rule"> <field name="name">mail activity type rule administrator</field> <field name="model_id" ref="mail.model_mail_activity_type" /> - <field name="domain_force">[(1,'=',1)]</field> - <field - name="groups" - eval="[(6, 0, [ref('cgscop_partner.group_cg_administrator')])]" - /> + <field name="domain_force">['|', ('ur_id','=',False), ('ur_id','=',user.current_ur_id.id)]</field> + <field name="perm_read" eval="True" /> + <field name="perm_write" eval="True" /> + <field name="perm_create" eval="True" /> + <field name="perm_unlink" eval="True" /> <field eval="True" name="global" /> </record> -- GitLab