Create holidays module, v16.0.0.0.1
This commit is contained in:
parent
085819695f
commit
854bbeb0e4
@ -8,7 +8,8 @@ Addons for Odoo 16.
|
||||
| Name | Version | Description |
|
||||
|-------------------------|--------------|----------------------------------------------------------|
|
||||
| gn_l10n_fr_pcg_asso | 16.0.0.0.3 | French chart of account and fiscal position for NGO's |
|
||||
| gn_cc | 16.0.0.0.2 | Configuration for French convention collective, with data for IDCC3442 |
|
||||
| gn_cc | 16.0.0.0.2 | Configuration for French convention collective, with data for IDCC3442 |
|
||||
| gn_holidays | 16.0.0.0.1 | French configuration for Publics Holidays and Leave Management |
|
||||
|
||||
|
||||
## ToDo
|
||||
|
||||
19
gn_holidays/README.md
Normal file
19
gn_holidays/README.md
Normal file
@ -0,0 +1,19 @@
|
||||
# GN Holidays
|
||||
|
||||
Module de gestion des congés et absences des employés
|
||||
|
||||
## How to install
|
||||
|
||||
1. Clone this repository in your odoo's extra-modules folder (i.e. /mnt/extra-addons)
|
||||
2. Refresh list of Applications in UI
|
||||
3. Search for 'gn_holidays' and click on **Install**
|
||||
|
||||
## Changelog
|
||||
|
||||
- v16.0.0.0.1 (2024/03/01):
|
||||
- Création du module
|
||||
- Ajouts des jours feriés pour 2024
|
||||
- Ajout des types d'absence
|
||||
|
||||
## Issues
|
||||
- [] Need prevention mechanism when CP or Compensatory Day is asked on a Public Holiday (cf issue #8)
|
||||
22
gn_holidays/__manifest__.py
Normal file
22
gn_holidays/__manifest__.py
Normal file
@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "France - Congés",
|
||||
"version": "16.0.0.0.1",
|
||||
"category": "HR",
|
||||
"summary": "Configuration des congés et absences",
|
||||
"author": "Le Garage Numérique",
|
||||
"maintainers": ["makayabou"],
|
||||
"website": "https://odoo.legaragenumerique.fr",
|
||||
"depends": [
|
||||
"hr",
|
||||
"hr_contract",
|
||||
"l10n_fr_oca",
|
||||
"hr_work_entry",
|
||||
"hr_work_entry_holidays",
|
||||
"hr_holidays_public",
|
||||
],
|
||||
"data": [
|
||||
"data/gn_holidays_public.xml",
|
||||
"data/gn_holidays.xml",
|
||||
],
|
||||
"license": "LGPL-3",
|
||||
}
|
||||
140
gn_holidays/data/gn_holidays.xml
Normal file
140
gn_holidays/data/gn_holidays.xml
Normal file
@ -0,0 +1,140 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<data noupdate="0">
|
||||
<!-- Work Entry Type -->
|
||||
<record id="hr_work_entry_contract.work_entry_type_compensatory" model="hr.work.entry.type">
|
||||
<field name="display_name">Congé compensatoire (récup')</field>
|
||||
<field name="code">RTT</field>
|
||||
<field name="color">15</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_home_working" model="hr.work.entry.type">
|
||||
<field name="name">Télé-travail</field>
|
||||
<field name="code">TT</field>
|
||||
<field name="color">1</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_unpaid_leave" model="hr.work.entry.type">
|
||||
<field name="name">Absence non-rémunérée</field>
|
||||
<field name="color">2</field>
|
||||
<field name="code">ABS</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_sick_leave" model="hr.work.entry.type">
|
||||
<field name="name">Congé Maladie</field>
|
||||
<field name="code">AM</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
<field name="color">9</field>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_legal_leave" model="hr.work.entry.type">
|
||||
<field name="name">Congé payé</field>
|
||||
<field name="code">CP</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
<field name="color">6</field>
|
||||
</record>
|
||||
<!--Congés payés-->
|
||||
<record id="hr_holidays.holiday_status_cl" model="hr.leave.type">
|
||||
<field name="name">Paid Time Off</field>
|
||||
<field name="requires_allocation">yes</field>
|
||||
<field name="employee_requests">no</field>
|
||||
<field name="leave_validation_type">hr</field>
|
||||
<field name="allocation_validation_type">officer</field>
|
||||
<field name="leave_notif_subtype_id" ref="hr_holidays.mt_leave"/>
|
||||
<field name="allocation_notif_subtype_id" ref="hr_holidays.mt_leave_allocation"/>
|
||||
<field name="responsible_id" ref="base.user_admin"/>
|
||||
<field name="request_unit">day</field>
|
||||
<field name="support_document" eval="False"/>
|
||||
<field name="time_type">leave</field>
|
||||
<field name="exclude_public_holidays" eval="True"/>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_legal_leave"/>
|
||||
<field name="icon_id" ref="hr_holidays.icon_14"/>
|
||||
<field name="color">2</field>
|
||||
<field name="company_id" eval="False"/> <!-- Explicitely set to False for it to be available to all companies -->
|
||||
<field name="sequence">1</field>
|
||||
</record>
|
||||
|
||||
<!-- Arrêt maladie -->
|
||||
<record id="hr_holidays.holiday_status_sl" model="hr.leave.type">
|
||||
<field name="name">Sick Time Off</field>
|
||||
<field name="requires_allocation">no</field>
|
||||
<field name="color_name">red</field>
|
||||
<field name="leave_validation_type">no_validation</field>
|
||||
<field name="leave_notif_subtype_id" ref="hr_holidays.mt_leave_sick"/>
|
||||
<field name="responsible_id" ref="base.user_admin"/>
|
||||
<field name="request_unit">day</field>
|
||||
<field name="support_document" eval="True"/>
|
||||
<field name="time_type">leave</field>
|
||||
<field name="exclude_public_holidays" eval="False"/>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_sick_leave"/>
|
||||
<field name="icon_id" ref="hr_holidays.icon_22"/>
|
||||
<field name="color">3</field>
|
||||
<field name="company_id" eval="False"/> <!-- Explicitely set to False for it to be available to all companies -->
|
||||
<field name="sequence">2</field>
|
||||
</record>
|
||||
|
||||
<!-- Compensatory Days -->
|
||||
<record id="hr_holidays.holiday_status_comp" model="hr.leave.type">
|
||||
<field name="name">Compensatory Days</field>
|
||||
<field name="requires_allocation">yes</field>
|
||||
<field name="employee_requests">yes</field>
|
||||
<field name="leave_validation_type">hr</field>
|
||||
<field name="allocation_validation_type">officer</field>
|
||||
<field name="request_unit">hour</field>
|
||||
<field name="support_document" eval="True"/>
|
||||
<field name="time_type">leave</field>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_compensatory"/>
|
||||
<field name="exclude_public_holidays" eval="True"/>
|
||||
<field name="leave_notif_subtype_id" ref="hr_holidays.mt_leave"/>
|
||||
<field name="responsible_id" ref="base.user_admin"/>
|
||||
<field name="icon_id" ref="hr_holidays.icon_4"/>
|
||||
<field name="color">4</field>
|
||||
<field name="company_id" eval="False"/> <!-- Explicitely set to False for it to be available to all companies -->
|
||||
<field name="sequence">4</field>
|
||||
</record>
|
||||
|
||||
<!--Absence non-rémunérée -->
|
||||
<record id="hr_holidays.holiday_status_unpaid" model="hr.leave.type">
|
||||
<field name="name">Unpaid</field>
|
||||
<field name="requires_allocation">no</field>
|
||||
<field name="leave_validation_type">hr</field>
|
||||
<field name="allocation_validation_type">officer</field>
|
||||
<field name="request_unit">hour</field>
|
||||
<field name="unpaid" eval="True"/>
|
||||
<field name="time_type">leave</field>
|
||||
<field name="support_document" eval="True"/>
|
||||
<field name="exclude_public_holidays" eval="True"/>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_unpaid_leave"/>
|
||||
<field name="leave_notif_subtype_id" ref="hr_holidays.mt_leave_unpaid"/>
|
||||
<field name="responsible_id" ref="base.user_admin"/>
|
||||
<field name="icon_id" ref="hr_holidays.icon_28"/>
|
||||
<field name="color">5</field>
|
||||
<field name="company_id" eval="False"/> <!-- Explicitely set to False for it to be available to all companies -->
|
||||
<field name="sequence">3</field>
|
||||
</record>
|
||||
|
||||
<!-- Plan de cumul des congés payés-->
|
||||
<record id="cumul_cp" model="hr.leave.accrual.plan">
|
||||
<field name="name">Cumul des congés payés</field>
|
||||
<field name="time_off_type_id" ref="hr_holidays.holiday_status_cl"/>
|
||||
</record>
|
||||
|
||||
<!-- Régle de cumul des Congés payés-->
|
||||
<record id="cumul_standard" model="hr.leave.accrual.level">
|
||||
<field name="start_count">0</field>
|
||||
<field name="start_type">month</field>
|
||||
<field name="is_based_on_worked_time" eval="True"/>
|
||||
<field name="added_value">2.5</field>
|
||||
<field name="added_value_type">days</field>
|
||||
<field name="frequency">monthly</field>
|
||||
<field name="maximum_leave">90</field>
|
||||
<field name="action_with_unused_accruals">postponed</field>
|
||||
<field name="postpone_max_days">60</field>
|
||||
<field name="accrual_plan_id" ref="gn_holidays.cumul_cp"/>
|
||||
</record>
|
||||
</data>
|
||||
<delete model="hr.work.entry.type" id="hr_work_entry_contract.work_entry_type_leave"/>
|
||||
</odoo>
|
||||
76
gn_holidays/data/gn_holidays_public.xml
Normal file
76
gn_holidays/data/gn_holidays_public.xml
Normal file
@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<data noupdate="0">
|
||||
<!-- Jour fériés 2024 -->
|
||||
<record id="jours_feries_2024" model="hr.holidays.public">
|
||||
<field name="year">2024</field>
|
||||
<field name="country_id" ref="base.fr"/>
|
||||
</record>
|
||||
<record id="jour_ferie_jour_de_l_an" model="hr.holidays.public.line">
|
||||
<field name="name">Jour de l'an</field>
|
||||
<field name="date" eval="'2024-01-01'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_lundi_de_paques" model="hr.holidays.public.line">
|
||||
<field name="name">Lundi de Pâques</field>
|
||||
<field name="date" eval="'2024-04-01'"/>
|
||||
<field name="variable_date" eval="True"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_fete_du_travail" model="hr.holidays.public.line">
|
||||
<field name="name">Fête du Travail</field>
|
||||
<field name="date" eval="'2024-05-01'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_victoire_1945" model="hr.holidays.public.line">
|
||||
<field name="name">Victoire 1945</field>
|
||||
<field name="date" eval="'2024-05-08'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_ascension" model="hr.holidays.public.line">
|
||||
<field name="name">Ascension</field>
|
||||
<field name="date" eval="'2024-05-09'"/>
|
||||
<field name="variable_date" eval="True"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_pentecote" model="hr.holidays.public.line">
|
||||
<field name="name">Pentecôte</field>
|
||||
<field name="date" eval="'2024-05-20'"/>
|
||||
<field name="variable_date" eval="True"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_fete_nationale" model="hr.holidays.public.line">
|
||||
<field name="name">Fête Nationale</field>
|
||||
<field name="date" eval="'2024-07-14'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_assomption" model="hr.holidays.public.line">
|
||||
<field name="name">Assomption</field>
|
||||
<field name="date" eval="'2024-08-15'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_toussaint" model="hr.holidays.public.line">
|
||||
<field name="name">Toussaint</field>
|
||||
<field name="date" eval="'2024-11-01'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_armistrice_1918" model="hr.holidays.public.line">
|
||||
<field name="name">Armistrice 1918</field>
|
||||
<field name="date" eval="'2024-11-11'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
<record id="jour_ferie_noel" model="hr.holidays.public.line">
|
||||
<field name="name">Jour de Noël</field>
|
||||
<field name="date" eval="'2024-12-25'"/>
|
||||
<field name="variable_date" eval="False"/>
|
||||
<field name="year_id" ref="jours_feries_2024"/>
|
||||
</record>
|
||||
</data>
|
||||
</odoo>
|
||||
@ -4,14 +4,14 @@
|
||||
<!-- Work Entry Type -->
|
||||
<record id="hr_work_entry_contract.work_entry_type_compensatory" model="hr.work.entry.type">
|
||||
<field name="display_name">Congé compensatoire (récup')</field>
|
||||
<field name="code">LEAVE105</field>
|
||||
<field name="code">RTT</field>
|
||||
<field name="color">15</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_home_working" model="hr.work.entry.type">
|
||||
<field name="name">Télé-travail</field>
|
||||
<field name="code">WORK110</field>
|
||||
<field name="code">TT</field>
|
||||
<field name="color">1</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
</record>
|
||||
@ -19,20 +19,20 @@
|
||||
<record id="hr_work_entry_contract.work_entry_type_unpaid_leave" model="hr.work.entry.type">
|
||||
<field name="name">Absence non-rémunérée</field>
|
||||
<field name="color">2</field>
|
||||
<field name="code">LEAVE90</field>
|
||||
<field name="code">ABS</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_sick_leave" model="hr.work.entry.type">
|
||||
<field name="name">Congé Maladie</field>
|
||||
<field name="code">LEAVE110</field>
|
||||
<field name="code">AM</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
<field name="color">9</field>
|
||||
</record>
|
||||
|
||||
<record id="hr_work_entry_contract.work_entry_type_legal_leave" model="hr.work.entry.type">
|
||||
<field name="name">Congé payé</field>
|
||||
<field name="code">LEAVE120</field>
|
||||
<field name="code">CP</field>
|
||||
<field name="is_leave" eval="True"/>
|
||||
<field name="color">6</field>
|
||||
</record>
|
||||
@ -51,7 +51,6 @@
|
||||
<field name="time_type">leave</field>
|
||||
<field name="exclude_public_holidays" eval="True"/>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_legal_leave"/>
|
||||
<field name="code">CP</field>
|
||||
<field name="icon_id" ref="hr_holidays.icon_14"/>
|
||||
<field name="color">2</field>
|
||||
<field name="company_id" eval="False"/> <!-- Explicitely set to False for it to be available to all companies -->
|
||||
@ -71,7 +70,6 @@
|
||||
<field name="time_type">leave</field>
|
||||
<field name="exclude_public_holidays" eval="False"/>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_sick_leave"/>
|
||||
<field name="code">AM</field>
|
||||
<field name="icon_id" ref="hr_holidays.icon_22"/>
|
||||
<field name="color">3</field>
|
||||
<field name="company_id" eval="False"/> <!-- Explicitely set to False for it to be available to all companies -->
|
||||
@ -88,7 +86,6 @@
|
||||
<field name="request_unit">hour</field>
|
||||
<field name="support_document" eval="True"/>
|
||||
<field name="time_type">leave</field>
|
||||
<field name="code">RTT</field>
|
||||
<field name="work_entry_type_id" ref="hr_work_entry_contract.work_entry_type_compensatory"/>
|
||||
<field name="exclude_public_holidays" eval="True"/>
|
||||
<field name="leave_notif_subtype_id" ref="hr_holidays.mt_leave"/>
|
||||
@ -107,7 +104,6 @@
|
||||
<field name="allocation_validation_type">officer</field>
|
||||
<field name="request_unit">hour</field>
|
||||
<field name="unpaid" eval="True"/>
|
||||
<field name="code">ABS</field>
|
||||
<field name="time_type">leave</field>
|
||||
<field name="support_document" eval="True"/>
|
||||
<field name="exclude_public_holidays" eval="True"/>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user