summaryrefslogtreecommitdiff
path: root/addons/maintenance/security
diff options
context:
space:
mode:
authorThibault Delavallée <tde@openerp.com>2016-05-17 13:17:11 +0200
committerThibault Delavallée <tde@openerp.com>2016-07-04 16:22:37 +0200
commit12a35ec1a9b547ba57e9fdad12e0ddb40b54c5d8 (patch)
tree007f8fadd7f7ddba8bbe8a584a49e4638c793b37 /addons/maintenance/security
parent71aee8e1663a384f838b35f2320ee3fb44b46665 (diff)
[MOV] hr_equipment to maintenance
hr_equipment module is renamed to maintenance. No change is performed to the module itself. It prepares further changes, mainly splitting maintenance from hr_maintenance.
Diffstat (limited to 'addons/maintenance/security')
-rw-r--r--addons/maintenance/security/ir.model.access.csv10
-rw-r--r--addons/maintenance/security/maintenance.xml48
2 files changed, 58 insertions, 0 deletions
diff --git a/addons/maintenance/security/ir.model.access.csv b/addons/maintenance/security/ir.model.access.csv
new file mode 100644
index 00000000000..3748c9f79bb
--- /dev/null
+++ b/addons/maintenance/security/ir.model.access.csv
@@ -0,0 +1,10 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_hr_equipment_user,hr.equipment.user,model_hr_equipment,base.group_hr_user,1,1,1,1
+access_hr_equipment_emp,hr.equipment.emp,model_hr_equipment,base.group_user,1,0,0,0
+access_hr_equipment_admin_user,hr.equipment.admin.user,model_hr_equipment,base.group_equipment_manager,1,1,1,1
+access_hr_maintenance_user,hr.equipment.request user,model_hr_equipment_request,base.group_hr_user,1,1,1,1
+access_hr_maintenance_system_user,hr.equipment.request system user,model_hr_equipment_request,base.group_user,1,1,1,1
+access_hr_equipment_category_user,hr.equipment.category.user,model_hr_equipment_category,base.group_hr_user,1,1,1,1
+access_maintenance_request_stage_user,hr.equipment.stage.user,model_hr_equipment_stage,base.group_hr_user,1,1,1,1
+access_hr_equipment_category_employee,hr.equipment.category.employee,model_hr_equipment_category,base.group_user,1,0,0,0
+access_maintenance_request_stage_employee,hr.equipment.stage.employee,model_hr_equipment_stage,base.group_user,1,0,0,0
diff --git a/addons/maintenance/security/maintenance.xml b/addons/maintenance/security/maintenance.xml
new file mode 100644
index 00000000000..b52aebd5346
--- /dev/null
+++ b/addons/maintenance/security/maintenance.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+ <!-- This group is the lowest level of HR management: the Equipment manager
+ is only allowed to deal with equipment registration and maintenance
+
+ HR Officers/Managers are Equipment Managers (see next group) -->
+ <record id="base.group_equipment_manager" model="res.groups">
+ <field name="name">Equipment Manager</field>
+ <field name="category_id" ref="base.module_category_human_resources"/>
+ <field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
+ <field name="comment">The user will be able to manage equipments.</field>
+ </record>
+
+ <!-- HR officers and HR managers are allowed to manage equipments -->
+ <record id="base.group_hr_user" model="res.groups">
+ <field name="implied_ids" eval="[(4, ref('base.group_equipment_manager'))]"/>
+ </record>
+
+ <!-- Rules -->
+ <record id="hr_equipment_request_rule_user" model="ir.rule">
+ <field name="name">Employees are allowed to access their own maintenance requests</field>
+ <field name="model_id" ref="model_hr_equipment_request"/>
+ <field name="domain_force">['|', ('user_id.id', '=', user.id), ('employee_id.user_id.id', '=', user.id)]</field>
+ <field name="groups" eval="[(4, ref('base.group_user'))]"/>
+ </record>
+
+ <record id="hr_equipment_rule_user" model="ir.rule">
+ <field name="name">Employees are allowed to access their own equipments</field>
+ <field name="model_id" ref="model_hr_equipment"/>
+ <field name="domain_force">[('employee_id.user_id.id', '=', user.id)]</field>
+ <field name="groups" eval="[(4, ref('base.group_user'))]"/>
+ </record>
+
+ <record id="hr_equipment_request_rule_admin_user" model="ir.rule">
+ <field name="name">Administrator of maintenance requests</field>
+ <field name="model_id" ref="model_hr_equipment_request"/>
+ <field name="domain_force">[(1, '=', 1)]</field>
+ <field name="groups" eval="[(4, ref('base.group_equipment_manager'))]"/>
+ </record>
+
+ <record id="hr_equipment_rule_admin_user" model="ir.rule">
+ <field name="name">Equipments administrator</field>
+ <field name="model_id" ref="model_hr_equipment"/>
+ <field name="domain_force">[(1, '=', 1)]</field>
+ <field name="groups" eval="[(4, ref('base.group_equipment_manager'))]"/>
+ </record>
+
+</odoo>