From 34ed84d1ea3131f84c8c413b364b1983c6d0bfe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Laporte?= <stephane.laporte@enercoop.org> Date: Tue, 27 May 2025 15:25:18 +0200 Subject: [PATCH] [FIX] tableau de repartition droits profil producteur --- security/ir.model.access.csv | 3 +++ security/security_rules.xml | 41 ++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv index 4cab550..d4ae337 100644 --- a/security/ir.model.access.csv +++ b/security/ir.model.access.csv @@ -2,3 +2,6 @@ id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink access_acc_operation_portal,acc.operation.portal,oacc.model_acc_operation,base.group_portal,1,0,0,0 access_acc_counter_period_portal,acc.counter.period.portal,oacc.model_acc_counter_period,base.group_portal,1,0,0,0 access_acc_actu_portal,acc.actu.portal,oacc_actus.model_acc_actu,base.group_portal,1,0,0,0 +access_acc_counter_portal,acc.counter.portal,oacc.model_acc_counter,base.group_portal,1,0,0,0 +access_acc_enedis_cdc_day_producteur,acc.enedis.cdc.day.producteur,oacc.model_acc_enedis_cdc_day,base.group_portal,1,0,0,0 +access_acc_enedis_cdc_prorata_day_producteur,acc.enedis.cdc.prorata.day.producteur,oacc.model_acc_enedis_cdc_prorata_day,base.group_portal,1,0,0,0 diff --git a/security/security_rules.xml b/security/security_rules.xml index e2ac0cf..3a314be 100644 --- a/security/security_rules.xml +++ b/security/security_rules.xml @@ -2,6 +2,47 @@ <!-- Copyright 2023 Le Filament License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). --> <odoo> + <!-- tableau de répartition pour les producteurs, si l'utilisateur est producteur de l'opération il peut accèder aux compteurs de soutirage --> + <record id="portal_counter_rule" model="ir.rule"> + <field name="name">Portal: Counter rule</field> + <field name="model_id" ref="oacc.model_acc_counter" /> + <field + name="domain_force" + >['&', ('type', 'in', ['del', 'del_inj']), ('acc_operation_id.productor_ids', 'in', [user.commercial_partner_id.id])]</field> + <field name="groups" eval="[(6, 0, [ref('base.group_portal')])]" /> + <field name="perm_read" eval="True" /> + </record> + <!-- tableau de répartition pour les producteurs, si l'utilisateur est producteur de l'opération il peut accéder aux courbes de conso --> + <record id="portal_cdc_conso_rule" model="ir.rule"> + <field name="name">Portal: Cdc conso rule</field> + <field name="model_id" ref="oacc.model_acc_enedis_cdc_day" /> + <field + name="domain_force" + >['&', ('comp_data_type', 'in', ['cons']), ('acc_operation_id.productor_ids', 'in', [user.commercial_partner_id.id])]</field> + <field name="groups" eval="[(6, 0, [ref('base.group_portal')])]" /> + <field name="perm_read" eval="True" /> + </record> + <!-- tableau de répartition pour les producteurs, le producteur peut accéder à ses courbes de prod --> + <record id="portal_cdc_prod_rule" model="ir.rule"> + <field name="name">Portal: Cdc prod rule</field> + <field name="model_id" ref="oacc.model_acc_enedis_cdc_day" /> + <field + name="domain_force" + >['&', ('comp_data_type', 'in', ['prod']), ('partner_id.id', 'in', [user.commercial_partner_id.id])]</field> + <field name="groups" eval="[(6, 0, [ref('base.group_portal')])]" /> + <field name="perm_read" eval="True" /> + </record> + <!-- tableau de répartition pour les producteurs, un producteur peut accéder aux proratas associés à ses compteurs d'injection --> + <record id="portal_cdc_prorata_rule" model="ir.rule"> + <field name="name">Portal: Cdc prorata rule</field> + <field name="model_id" ref="oacc.model_acc_enedis_cdc_prorata_day" /> + <field + name="domain_force" + >[('acc_inj_counter_id.partner_id', 'in', [user.commercial_partner_id.id])]</field> + <field name="groups" eval="[(6, 0, [ref('base.group_portal')])]" /> + <field name="perm_read" eval="True" /> + </record> + <!-- Règles pour les consomateurs/producteurs accès Portail sur les périodes de PRM --> <record id="portal_counter_period_rule" model="ir.rule"> <field name="name">Portal: Counter period rule</field> -- GitLab