diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv index 4cab550bd32741510baa8c52024fe37c3c413ff7..d4ae3375c7adad5b5101ba1fa1bcb9a1fcb97aad 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 e2ac0cfc541b698b4ca011beced1a791bb302b7c..3a314be945286a923818346c67c5d83ecebfadaa 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>