165 lines
8.2 KiB
XML
165 lines
8.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<data>
|
|
<!-- Project Group -->
|
|
<record id="group_project_department_manager" model="res.groups">
|
|
<field name="name">PMO</field>
|
|
<field name="implied_ids" eval="[(4, ref('project.group_project_manager'))]"/>
|
|
<field name="category_id" ref="base.module_category_services_project"/>
|
|
</record>
|
|
|
|
<!-- Project Group -->
|
|
<record id="group_project_create_invoice" model="res.groups">
|
|
<field name="name">Create Invoice</field>
|
|
<field name="category_id" ref="base.module_category_services_project"/>
|
|
</record>
|
|
|
|
|
|
<!-- configration multi company rule -->
|
|
<record id="project_task_type_multi_company_rule" model="ir.rule">
|
|
<field name="name">Project Task Type multi company rule</field>
|
|
<field name="model_id" ref="model_project_task_type"/>
|
|
<field name="domain_force">['|',('company_id','=',False),('company_id', 'in', company_ids)]</field>
|
|
</record>
|
|
|
|
<record id="project_category_multi_company_rule" model="ir.rule">
|
|
<field name="name">project category multi company rule</field>
|
|
<field name="model_id" ref="model_project_category"/>
|
|
<field name="domain_force">['|',('company_id','=',False),('company_id', 'in', company_ids)]</field>
|
|
</record>
|
|
|
|
<record id="project_hold_reason_multi_company_rule" model="ir.rule">
|
|
<field name="name">project hold reason multi company rule</field>
|
|
<field name="model_id" ref="model_project_hold_reason"/>
|
|
<field name="domain_force">['|',('company_id','=',False),('company_id', 'in', company_ids)]</field>
|
|
</record>
|
|
|
|
<!-- TODO:Review Delete Unneeded rules -->
|
|
<delete model="ir.rule" id="project.project_project_manager_rule"/>
|
|
<delete model="ir.rule" id="project.project_public_members_rule"/>
|
|
<delete model="ir.rule" id="project.project_manager_all_project_tasks_rule"/>
|
|
|
|
<!-- project rules -->
|
|
<record id="project_manager_rule" model="ir.rule">
|
|
<field name="name">Project Manager rule</field>
|
|
<field name="model_id" ref="model_project_project"/>
|
|
<field name="groups" eval="[(4, ref('project.group_project_manager'))]"/>
|
|
<field name="domain_force">[('user_id','=', user.id)]</field>
|
|
</record>
|
|
|
|
<record id="project_department_manager_rule" model="ir.rule">
|
|
<field name="name">Project PMO rule</field>
|
|
<field name="model_id" ref="model_project_project"/>
|
|
<field name="groups" eval="[(4, ref('project_base.group_project_department_manager'))]"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
</record>
|
|
<!-- TODO:Review edit base on new team model
|
|
<record id="rule_team_member_project" model="ir.rule">
|
|
<field name="name">Project Team Member</field>
|
|
<field name="model_id" ref="model_project_project"/>
|
|
<field name="domain_force">['|',('employee_ids.user_id','in',
|
|
[user.id]),'|',('resource_allocation_line_ids.employee_id.user_id','in',[user.id]),('dummy_project','=',True)]
|
|
</field>
|
|
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="perm_read" eval="True"/>
|
|
<field name="perm_write" eval="False"/>
|
|
<field name="perm_unlink" eval="False"/>
|
|
<field name="perm_create" eval="False"/>
|
|
</record>-->
|
|
|
|
<!--Stage rules -->
|
|
<record id="project_stage_multi_company_rule" model="ir.rule">
|
|
<field name="name">Project stage Multi Company rule</field>
|
|
<field name="model_id" ref="model_project_phase"/>
|
|
<field eval="True" name="global"/>
|
|
<field name="domain_force">['|',('company_id', '=',False),('company_id', 'in', company_ids)]</field>
|
|
</record>
|
|
<!-- TODO:Review sub-project stages -->
|
|
<record id="project_phase_manager_rule" model="ir.rule">
|
|
<field name="name">Project Phase Manager rule</field>
|
|
<field name="model_id" ref="model_project_phase"/>
|
|
<field name="groups" eval="[(4, ref('project.group_project_manager'))]"/>
|
|
<field name="domain_force">[('project_id.user_id','=', user.id)]</field>
|
|
</record>
|
|
|
|
<record id="project_phase_department_rule" model="ir.rule">
|
|
<field name="name">Phase PMO rule</field>
|
|
<field name="model_id" ref="model_project_phase"/>
|
|
<field name="groups" eval="[(4, ref('project_base.group_project_department_manager'))]"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
</record>
|
|
|
|
<!-- TODO:Review team member phase rule
|
|
<record id="rule_team_member_project_phase" model="ir.rule">
|
|
<field name="name">Project Stage Team Member</field>
|
|
<field name="model_id" ref="model_project_phase"/>
|
|
<field name="domain_force">[('department_ids','in', [user.department_id.id])]
|
|
</field>
|
|
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="perm_read" eval="True"/>
|
|
<field name="perm_write" eval="False"/>
|
|
<field name="perm_unlink" eval="False"/>
|
|
<field name="perm_create" eval="False"/>
|
|
</record>-->
|
|
|
|
<!-- Project Tasks Rule -->
|
|
<!-- TODO:Review get also the flower of the tasks-->
|
|
<record model="ir.rule" id="project.task_visibility_rule">
|
|
<field name="domain_force">[('user_id','=',user.id)]</field>
|
|
<field name="perm_read" eval="True"/>
|
|
<field name="perm_write" eval="True"/>
|
|
<field name="perm_unlink" eval="True"/>
|
|
<field name="perm_create" eval="True"/>
|
|
</record>
|
|
|
|
<!-- TODO:Review sub-project-->
|
|
<record model="ir.rule" id="project_manager_project_tasks_rule">
|
|
<field name="name">Project/Task: project manager: see his project tasks</field>
|
|
<field name="model_id" ref="model_project_task"/>
|
|
<field name="domain_force">[('project_id.user_id','in',[user.id])]</field>
|
|
<field name="groups" eval="[(4,ref('project.group_project_manager'))]"/>
|
|
</record>
|
|
|
|
<record id="task_project_department_manager" model="ir.rule">
|
|
<field name="name">Task PMO rule</field>
|
|
<field name="model_id" ref="model_project_task"/>
|
|
<field name="groups" eval="[(4, ref('project_base.group_project_department_manager'))]"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
</record>
|
|
|
|
<!-- Project invoice rules -->
|
|
<record id="project_invoice_multi_company_rule" model="ir.rule">
|
|
<field name="name">Project Invoice Multi Company rule</field>
|
|
<field name="model_id" ref="model_project_invoice"/>
|
|
<field eval="True" name="global"/>
|
|
<field name="domain_force">['|',('company_id', '=',False),('company_id', 'in', company_ids)]</field>
|
|
</record>
|
|
|
|
<record model="ir.rule" id="project_manager_invoice_request_rule">
|
|
<field name="name">Invoice Request Project Manager</field>
|
|
<field name="model_id" ref="model_project_invoice"/>
|
|
<field name="domain_force">[('project_id.user_id','in',[user.id])]</field>
|
|
<field name="groups" eval="[(4, ref('project.group_project_manager'))]"/>
|
|
</record>
|
|
|
|
<record model="ir.rule" id="department_manager_invoice_request_rule">
|
|
<field name="name">Project Invoice PMO rule</field>
|
|
<field name="model_id" ref="model_project_invoice"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
<field name="groups" eval="[(4, ref('project_base.group_project_department_manager'))]"/>
|
|
</record>
|
|
|
|
<record model="ir.rule" id="project_invoice_group_account_manager_rule">
|
|
<field name="name">Invoice Request account manager: see all</field>
|
|
<field name="model_id" ref="model_project_invoice"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
<field name="groups" eval="[(4, ref('account.group_account_manager'))]"/>
|
|
</record>
|
|
|
|
|
|
|
|
|
|
|
|
</data>
|
|
</odoo>
|