This commit changes how hr_homeworking deals with hr.employee.homework records. Before this, an hr.employee.homework record was created for each day of the week, even if it was the default location of the employee. This commit reworks how homeworking deals with them to reduce the amount of records generated. Now default employee locations don't generate records. They are rendered in the calendar view as ghost events. For exceptions, we allow only creating a single exception per day. If an employee sets an exception as 'weekly', it sets that location as the default one for the employee on that day of the week. Not having to deal with recurrencies makes the homeworking code simpler to manage as well. Also exceptions are, by definition, not common. So we shouldn't expect a lot of exception records to be created. task-3527196 Part-of: odoo/odoo#137502
37 lines
1.6 KiB
XML
37 lines
1.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<data noupdate="1">
|
|
<record id="homeworking_own_rule" model="ir.rule">
|
|
<field name="name">homeworking: own</field>
|
|
<field name="model_id" ref="model_hr_employee_location"/>
|
|
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="domain_force">[
|
|
('employee_id', '=', user.employee_id.id)
|
|
]</field>
|
|
</record>
|
|
|
|
<record id="homeworking_admin_rule" model="ir.rule">
|
|
<field name="name">homeworking: admin</field>
|
|
<field name="model_id" ref="model_hr_employee_location"/>
|
|
<field name="groups" eval="[(4, ref('hr.group_hr_user'))]"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
</record>
|
|
|
|
<record id="homeworking_location_wizard_own_rule" model="ir.rule">
|
|
<field name="name">homeworking wizard: own</field>
|
|
<field name="model_id" ref="model_homework_location_wizard"/>
|
|
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
|
|
<field name="domain_force">[
|
|
('employee_id', '=', user.employee_id.id)
|
|
]</field>
|
|
</record>
|
|
|
|
<record id="homeworking_location_wizard_admin_rule" model="ir.rule">
|
|
<field name="name">homeworking wizard: admin</field>
|
|
<field name="model_id" ref="model_homework_location_wizard"/>
|
|
<field name="groups" eval="[(4, ref('hr.group_hr_user'))]"/>
|
|
<field name="domain_force">[(1, '=', 1)]</field>
|
|
</record>
|
|
</data>
|
|
</odoo>
|