Files
odoo_source/addons/hr/data/hr_data.xml
T
RomainLibert d5fd84b89a [IMP] hr: add onboarding/offboarding activity plannings
Purpose
=======

Give the possibility to elaborate plans through Odoo. For instance, in HR,
you could create an onboarding plan when a employee is created. Someone manages
laptop and other equipment, someone check hr stuff, ... This feature is generic
but in a first time we will apply it only on the hr module.

Ease HR process in a company by creating plans: a plan is an assembly of Next
Activities that will be launched together whenever you need it.

Example of plan for an employee onboarding:

Activity: Prepare materials
Responsible: Alain
Deadline: At the contract signature

Activity: Manage Cars
Responsible: Cécile
Deadline: at the contract signature (both signature)

Activity: Plan Training
Responsible: Caroline
Deadline: After signature

Activity: Training
Responsible: Employee
Deadline: 1 week after the employement date

Specifications
==============

On HR Configuration: Add a menu "Activity Plans"

Activity plan object:
 - Name
 - Model (debug mode) (hr by default)
 - Activity Template o2m
    - Activity Type (only the one related to hr)
    - Deadline (come from Activity Type)
    - Responsible \/
        0  Coach
        0  Manager
        0  Other
        [Responsible_name] \/  (coach, manager or manually set if other)

Add datas, 2 plans:

Onboarding
    - Name: Onboarding
    - Plan lines:
        Activity: Setup IT Materials
        Responsible: [a user] (manager)
        Deadline: At the contract signature

        Activity: Plan Training
        Responsible: [manager]
        Deadline: After signature

        Activity: Training
        Responsible: [Employee]
        Deadline: 1 week after the employement date

Offboarding
    - Name: Onboarding
    - Plan lines:
        Activity: Compute Out Delais
        Responsible: [a user] (manager)
        Deadline: today

        Activity: Take Back HR Materials
        Responsible: [manager]
        Deadline: today

        Activity: Manage Car
        Responsible: [manager]
        Deadline: today

When to trigger it ?

HR specific use case:

1/ On employee, from the employee chatter:
when you create an employee, Odoobot will log a note with the following message:
"Congratulations ! May i recommand you to setup an onboarding plan?", with a link
create a plan from it.

2/ Add a button 'launch plan' to open a wizard to select the plan

3/ When archive an employee
Open a wizard with:
    - Reason (selection)
    - Action plan (m2o not required)

Error if employee not linked to a user.

Task : 1912681

closes odoo/odoo#29151
2018-12-18 11:20:54 +00:00

136 lines
6.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="dep_administration" model="hr.department">
<field name="name">Administration</field>
</record>
<record id="dep_sales" model="hr.department">
<field name="name">Sales</field>
</record>
<record id="employee_admin" model="hr.employee">
<field name="name" eval="obj(ref('base.partner_admin')).name" model="res.partner"/>
<field name="user_id" ref="base.user_admin"/>
<field name="address_id" ref="base.partner_admin"/>
<field name="address_home_id" ref="base.partner_admin"/>
<field name="image" eval="obj(ref('base.partner_admin')).image" model="res.partner"/>
</record>
<record id="activity_type_setup_it_materials" model="mail.activity.type">
<field name="name">Setup IT Materials</field>
<field name="res_model_id" ref="hr.model_hr_employee"/>
</record>
<record id="activity_type_setup_it_materials" model="mail.activity.type">
<field name="name">Setup IT Materials</field>
<field name="res_model_id" ref="hr.model_hr_employee"/>
</record>
<record id="activity_type_plan_training" model="mail.activity.type">
<field name="name">Plan Training</field>
<field name="res_model_id" ref="hr.model_hr_employee"/>
</record>
<record id="activity_type_training" model="mail.activity.type">
<field name="name">Training</field>
<field name="res_model_id" ref="hr.model_hr_employee"/>
<field name="delay_unit">weeks</field>
<field name="delay_count">1</field>
</record>
<record id="activity_type_compute_out_delais" model="mail.activity.type">
<field name="name">Compute Out Delais</field>
<field name="res_model_id" ref="hr.model_hr_employee"/>
</record>
<record id="activity_type_take_back_hr_materials" model="mail.activity.type">
<field name="name">Take Back HR Materials</field>
<field name="res_model_id" ref="hr.model_hr_employee"/>
</record>
<record id="onboarding_setup_it_materials" model="hr.plan.activity.type">
<field name="activity_type_id" ref="hr.activity_type_setup_it_materials"/>
<field name="responsible">manager</field>
</record>
<record id="onboarding_plan_training" model="hr.plan.activity.type">
<field name="activity_type_id" ref="hr.activity_type_plan_training"/>
<field name="responsible">manager</field>
</record>
<record id="onboarding_training" model="hr.plan.activity.type">
<field name="activity_type_id" ref="hr.activity_type_training"/>
<field name="responsible">employee</field>
</record>
<record id="offboarding_setup_compute_out_delais" model="hr.plan.activity.type">
<field name="activity_type_id" ref="hr.activity_type_compute_out_delais"/>
<field name="responsible">manager</field>
</record>
<record id="offboarding_take_back_hr_materials" model="hr.plan.activity.type">
<field name="activity_type_id" ref="hr.activity_type_take_back_hr_materials"/>
<field name="responsible">manager</field>
</record>
<record id="onboarding_plan" model='hr.plan'>
<field name="name">Onboarding</field>
<field name="plan_activity_type_ids" eval="[(6, 0, [
ref('hr.onboarding_setup_it_materials'),
ref('hr.onboarding_plan_training'),
ref('hr.onboarding_training'),
])]"/>
</record>
<record id="offboarding_plan" model='hr.plan'>
<field name="name">Offboarding</field>
<field name="plan_activity_type_ids" eval="[(6, 0, [
ref('hr.offboarding_setup_compute_out_delais'),
ref('hr.offboarding_take_back_hr_materials'),
])]"/>
</record>
<record id="mail_template_data_unknown_employee_email_address" model="mail.template">
<field name="name">HR: mailgateway unknown employee bounce</field>
<field name="model_id" ref="base.model_ir_module_module"/>
<field name="subject">Your document has not been created</field>
<field name="email_from">${user.email}</field>
<field name="email_to">${ctx['email_to']|safe}</field>
<field name="body_html" type="html">
<table border="0" cellpadding="0" cellspacing="0" style="padding-top: 16px; background-color: #F1F1F1; font-family:Verdana, Arial,sans-serif; color: #454748; width: 100%; border-collapse:separate;"><tr><td align="center">
<table border="0" cellpadding="0" cellspacing="0" width="590" style="padding: 16px; background-color: white; color: #454748; border-collapse:separate;">
<tbody>
<tr>
<td align="center" style="min-width: 590px;">
<table border="0" cellpadding="0" cellspacing="0" width="590" style="min-width: 590px; background-color: white; padding: 0px 8px 0px 8px; border-collapse:separate;">
<tr><td valign="top" style="font-size: 13px;">
<div>
Hi,<br/>
Your document has not been created because your email address is not recognized. Please send emails with the email address recorded on your employee information, or contact your HR manager.
</div>
</td></tr>
</table>
</td></tr>
</tbody>
</table>
</td></tr>
<!-- POWERED BY -->
<tr><td align="center" style="min-width: 590px;">
<table border="0" cellpadding="0" cellspacing="0" width="590" style="min-width: 590px; background-color: #F1F1F1; color: #454748; padding: 8px; border-collapse:separate;">
<tr><td style="text-align: center; font-size: 13px;">
Powered by <a target="_blank" href="https://www.odoo.com?utm_source=db&amp;utm_medium=hr" style="color: #875A7B;">Odoo</a>
</td></tr>
</table>
</td></tr>
</table>
</field>
<field name="lang">${user.lang}</field>
<field name="auto_delete" eval="True"/>
<field name="user_signature" eval="False"/>
</record>
</data>
</odoo>