Compare commits
6 Commits
12.0
...
14.0-hr_ef
Author | SHA1 | Date | |
---|---|---|---|
|
68788e3950 | ||
|
c7e1c8de0b | ||
|
4dc8241a5e | ||
|
250b9022cf | ||
|
eab094677a | ||
|
2a6fb40a15 |
@@ -27,6 +27,7 @@ Configuration
|
||||
1. Go to ``Configuration > Technical > Calendar > Meeting Types`` and define the meeting categories which cancel the daily luncheon voucher distribution.
|
||||
2. Go to ``Configuration > General Settings > Employees`` and define if employees need to work the whole day to get a luncheon voucher.
|
||||
3. Go to ``Employees`` and define for each employee the default number of luncheon vouchers to distribute in each distribution campaign.
|
||||
4. Go to ``Configuration > Technical > Resource > Working Times`` and create Working Times for each combination of attendance that you have in your company. Do not forget to indicate which period are effectively attended.
|
||||
|
||||
Use
|
||||
===
|
||||
|
@@ -2,7 +2,7 @@
|
||||
{
|
||||
"name": "HR Luncheon Voucher",
|
||||
"category": "Human Resources",
|
||||
"version": "14.0.1.0",
|
||||
"version": "14.0.2.0.0",
|
||||
"summary": "Manage luncheon vouchers credit and distribution",
|
||||
"author": "Elabore",
|
||||
"website": "https://elabore.coop/",
|
||||
@@ -13,6 +13,7 @@
|
||||
"base",
|
||||
"calendar",
|
||||
"hr",
|
||||
"hr_effective_attendance_period",
|
||||
"hr_holidays",
|
||||
"resource",
|
||||
],
|
||||
|
547
hr-luncheon-voucher/i18n/fr.po
Normal file
547
hr-luncheon-voucher/i18n/fr.po
Normal file
@@ -0,0 +1,547 @@
|
||||
# Translation of Odoo Server.
|
||||
# This file contains the translation of the following modules:
|
||||
# * hr-luncheon-voucher
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Odoo Server 14.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-18 15:03+0000\n"
|
||||
"PO-Revision-Date: 2023-01-18 15:03+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: \n"
|
||||
"Plural-Forms: \n"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Acquired"
|
||||
msgstr "Acquis"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__number_acquired_lv
|
||||
#, python-format
|
||||
msgid "Acquired Vouchers"
|
||||
msgstr "Tickets acquis"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction
|
||||
msgid "Action Needed"
|
||||
msgstr "Action nécessaire"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_ids
|
||||
msgid "Activities"
|
||||
msgstr "Activités"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_decoration
|
||||
msgid "Activity Exception Decoration"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_state
|
||||
msgid "Activity State"
|
||||
msgstr "État de l'activité"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_type_icon
|
||||
msgid "Activity Type Icon"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Adjust distribution"
|
||||
msgstr "Ajuster la distribution"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_attachment_count
|
||||
msgid "Attachment Count"
|
||||
msgstr "Nombre de pièces jointes"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Back to draft"
|
||||
msgstr "Retour en brouillon"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_hr_employee_base
|
||||
msgid "Basic Employee"
|
||||
msgstr "Employé basique"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Cancel"
|
||||
msgstr "Annuler"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_res_company
|
||||
msgid "Companies"
|
||||
msgstr "Sociétés"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_res_config_settings
|
||||
msgid "Config Settings"
|
||||
msgstr "Paramètres de config"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Confirm"
|
||||
msgstr "Confirmer"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields.selection,name:hr-luncheon-voucher.selection__hr_lv_allocation__state__confirmed
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
msgid "Confirmed"
|
||||
msgstr "Confirmé"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.actions.act_window,name:hr-luncheon-voucher.lv_allocations_requests_wizard_action
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Create Luncheon Vouchers allocations requests"
|
||||
msgstr "Créer demandes d'allocation de Tickets Restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Create allocations requests"
|
||||
msgstr "Créer les demandes d'allocation"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__create_uid
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__create_uid
|
||||
msgid "Created by"
|
||||
msgstr "Créé par"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__create_date
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__create_date
|
||||
msgid "Created on"
|
||||
msgstr "Créé le"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__default_monthly_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__default_monthly_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__default_monthly_lv
|
||||
#, python-format
|
||||
msgid "Default monthly distribution"
|
||||
msgstr "Distribution mensuel par défaut"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_resource_calendar__display_name
|
||||
msgid "Display Name"
|
||||
msgstr "Nom affiché"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Distribute Vouchers"
|
||||
msgstr "Tickets distribués"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields.selection,name:hr-luncheon-voucher.selection__hr_lv_allocation__state__distributed
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Distributed"
|
||||
msgstr "Distribué"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__number_distributed_lv
|
||||
#, python-format
|
||||
msgid "Distributed Vouchers"
|
||||
msgstr "Tickets distribués"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__distributed_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__distributed_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__distributed_lv
|
||||
#, python-format
|
||||
msgid "Distributed luncheon vouchers"
|
||||
msgstr "Tickets distribués"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__distrib_campaign_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__distrib_campaign_name
|
||||
msgid "Distribution campaign"
|
||||
msgstr "Campagne de distribution"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields.selection,name:hr-luncheon-voucher.selection__hr_lv_allocation__state__draft
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
msgid "Draft"
|
||||
msgstr "Brouillon"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Dued"
|
||||
msgstr "Dû"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__number_dued_lv
|
||||
#, python-format
|
||||
msgid "Dued Vouchers"
|
||||
msgstr "Tickets dûs"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__employee_id
|
||||
#, python-format
|
||||
msgid "Employee"
|
||||
msgstr "Employé"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.res_config_settings_lv_form
|
||||
msgid "Employee Luncheon Vouchers"
|
||||
msgstr "Tickets restaurant"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__date_to
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__date_to
|
||||
#, python-format
|
||||
msgid "End Date"
|
||||
msgstr "Date de fin"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_calendar_event_type
|
||||
msgid "Event Meeting Type"
|
||||
msgstr "Type d'événement réunion"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_follower_ids
|
||||
msgid "Followers"
|
||||
msgstr "Abonnés"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_channel_ids
|
||||
msgid "Followers (Channels)"
|
||||
msgstr "Abonnés (Canaux)"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_partner_ids
|
||||
msgid "Followers (Partners)"
|
||||
msgstr "Abonnés (Contacts)"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_type_icon
|
||||
msgid "Font awesome icon e.g. fa-tasks"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_tree_lv
|
||||
msgid "Generate Luncheon Vouchers Allocations"
|
||||
msgstr "Générer les allocations de Tickets Restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_generate_lv_allocation_requests
|
||||
msgid "Generate Luncheon Vouchers Allocations Requests"
|
||||
msgstr "Générer les demandes d'allocations de Tickets Restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company__hr_half_day_cancels_voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings__hr_half_day_cancels_voucher
|
||||
msgid "Half working days cancel luncheon vouchers"
|
||||
msgstr "Une demi-journée travaillée annule les tickets restaurants."
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_resource_calendar__id
|
||||
msgid "ID"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_icon
|
||||
msgid "Icon"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_icon
|
||||
msgid "Icon to indicate an exception activity."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_unread
|
||||
msgid "If checked, new messages require your attention."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error
|
||||
msgid "If checked, some messages have a delivery error."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_is_follower
|
||||
msgid "Is Follower"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_resource_calendar____last_update
|
||||
msgid "Last Modified on"
|
||||
msgstr "Dernière modification le"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__write_uid
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__write_uid
|
||||
msgid "Last Updated by"
|
||||
msgstr "Dernière mise à jour par"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__write_date
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__write_date
|
||||
msgid "Last Updated on"
|
||||
msgstr "Dernière mise à jour le"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Luncheon Vouchers"
|
||||
msgstr "Tickets Restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_hr_lv_allocation
|
||||
msgid "Luncheon Vouchers Allocation"
|
||||
msgstr "Allocation de Tickets Restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.res_config_settings_lv_form
|
||||
msgid "Luncheon Vouchers Half-day Cancel"
|
||||
msgstr "Annulation Tickets Restaurants sur une demi-journée"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.ui.menu,name:hr-luncheon-voucher.menu_hr_lv_allocations
|
||||
msgid "Luncheon vouchers"
|
||||
msgstr "Ticket restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.actions.act_window,name:hr-luncheon-voucher.act_lv_allocations
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Luncheon vouchers allocations"
|
||||
msgstr "Allocations de Tickets restaurant"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
msgid "Luncheon vouchers calculation"
|
||||
msgstr "Calculs des tickets restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__lv_allocations_ids
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__lv_allocations_ids
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__lv_allocations_ids
|
||||
msgid "Lv Allocations"
|
||||
msgstr "Allocations TR"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_main_attachment_id
|
||||
msgid "Main Attachment"
|
||||
msgstr "Pièce jointe principale"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error
|
||||
msgid "Message Delivery error"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_ids
|
||||
msgid "Messages"
|
||||
msgstr "Messages"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__my_activity_date_deadline
|
||||
msgid "My Activity Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__name
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_date_deadline
|
||||
msgid "Next Activity Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_summary
|
||||
msgid "Next Activity Summary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_type_id
|
||||
msgid "Next Activity Type"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction_counter
|
||||
msgid "Number of Actions"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error_counter
|
||||
msgid "Number of errors"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction_counter
|
||||
msgid "Number of messages which requires an action"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error_counter
|
||||
msgid "Number of messages with delivery error"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_unread_counter
|
||||
msgid "Number of unread messages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Period to consider"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__ref
|
||||
#, python-format
|
||||
msgid "Reference"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Refresh Luncheon Vouchers"
|
||||
msgstr "Rafraîchir les Tickets Restaurants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__dued_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__dued_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__dued_lv
|
||||
#, python-format
|
||||
msgid "Remaining luncheon vouchers"
|
||||
msgstr "Tickets restaurants restants"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__remove_luncheon_voucher
|
||||
#, python-format
|
||||
msgid "Remove luncheon voucher"
|
||||
msgstr "Retirer Ticket restaurant"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
msgid "Request context"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_resource_calendar
|
||||
msgid "Resource Working Time"
|
||||
msgstr "Temps de travail de la ressource"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_user_id
|
||||
msgid "Responsible User"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__date_from
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__date_from
|
||||
#, python-format
|
||||
msgid "Start Date"
|
||||
msgstr "Date de début"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__state
|
||||
msgid "Status"
|
||||
msgstr "Statut"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_state
|
||||
msgid ""
|
||||
"Status based on activities\n"
|
||||
"Overdue: Due date is already passed\n"
|
||||
"Today: Activity date is today\n"
|
||||
"Planned: Future activities."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__state
|
||||
msgid ""
|
||||
"The status is set to 'Draft', when an allocation request is created.\n"
|
||||
"The status is 'Confirmed', when an allocation request is confirmed by HR manager.\n"
|
||||
"The status is 'Distributed', when the luncheon vouchers have been distributed."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__total_acquired_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__total_acquired_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__total_acquired_lv
|
||||
#, python-format
|
||||
msgid "Total allocated luncheon vouchers"
|
||||
msgstr "Total Tickets restaurant alloués"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_decoration
|
||||
msgid "Type of the exception activity on record."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_unread
|
||||
msgid "Unread Messages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_unread_counter
|
||||
msgid "Unread Messages Counter"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.res_config_settings_lv_form
|
||||
msgid ""
|
||||
"Voucher is acquired only if the employee worked during all his attendance."
|
||||
msgstr "Les tickets sont acquis seulement si l'employé a travaillé durant toutes la période de présence."
|
547
hr-luncheon-voucher/i18n/hr-luncheon-voucher.pot
Normal file
547
hr-luncheon-voucher/i18n/hr-luncheon-voucher.pot
Normal file
@@ -0,0 +1,547 @@
|
||||
# Translation of Odoo Server.
|
||||
# This file contains the translation of the following modules:
|
||||
# * hr-luncheon-voucher
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Odoo Server 14.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-01-18 15:02+0000\n"
|
||||
"PO-Revision-Date: 2023-01-18 15:02+0000\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: \n"
|
||||
"Plural-Forms: \n"
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Acquired"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__number_acquired_lv
|
||||
#, python-format
|
||||
msgid "Acquired Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction
|
||||
msgid "Action Needed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_ids
|
||||
msgid "Activities"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_decoration
|
||||
msgid "Activity Exception Decoration"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_state
|
||||
msgid "Activity State"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_type_icon
|
||||
msgid "Activity Type Icon"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Adjust distribution"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_attachment_count
|
||||
msgid "Attachment Count"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Back to draft"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_hr_employee_base
|
||||
msgid "Basic Employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_res_company
|
||||
msgid "Companies"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_res_config_settings
|
||||
msgid "Config Settings"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Confirm"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields.selection,name:hr-luncheon-voucher.selection__hr_lv_allocation__state__confirmed
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
msgid "Confirmed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.actions.act_window,name:hr-luncheon-voucher.lv_allocations_requests_wizard_action
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Create Luncheon Vouchers allocations requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Create allocations requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__create_uid
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__create_uid
|
||||
msgid "Created by"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__create_date
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__create_date
|
||||
msgid "Created on"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__default_monthly_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__default_monthly_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__default_monthly_lv
|
||||
#, python-format
|
||||
msgid "Default monthly distribution"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings__display_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_resource_calendar__display_name
|
||||
msgid "Display Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Distribute Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields.selection,name:hr-luncheon-voucher.selection__hr_lv_allocation__state__distributed
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Distributed"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__number_distributed_lv
|
||||
#, python-format
|
||||
msgid "Distributed Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__distributed_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__distributed_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__distributed_lv
|
||||
#, python-format
|
||||
msgid "Distributed luncheon vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__distrib_campaign_name
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__distrib_campaign_name
|
||||
msgid "Distribution campaign"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields.selection,name:hr-luncheon-voucher.selection__hr_lv_allocation__state__draft
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
msgid "Draft"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Dued"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__number_dued_lv
|
||||
#, python-format
|
||||
msgid "Dued Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__employee_id
|
||||
#, python-format
|
||||
msgid "Employee"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.res_config_settings_lv_form
|
||||
msgid "Employee Luncheon Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__date_to
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__date_to
|
||||
#, python-format
|
||||
msgid "End Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_calendar_event_type
|
||||
msgid "Event Meeting Type"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_follower_ids
|
||||
msgid "Followers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_channel_ids
|
||||
msgid "Followers (Channels)"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_partner_ids
|
||||
msgid "Followers (Partners)"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_type_icon
|
||||
msgid "Font awesome icon e.g. fa-tasks"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_tree_lv
|
||||
msgid "Generate Luncheon Vouchers Allocations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_generate_lv_allocation_requests
|
||||
msgid "Generate Luncheon Vouchers Allocations Requests"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company__hr_half_day_cancels_voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings__hr_half_day_cancels_voucher
|
||||
msgid "Half working days cancel luncheon vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings__id
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_resource_calendar__id
|
||||
msgid "ID"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_icon
|
||||
msgid "Icon"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_icon
|
||||
msgid "Icon to indicate an exception activity."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_unread
|
||||
msgid "If checked, new messages require your attention."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error
|
||||
msgid "If checked, some messages have a delivery error."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_is_follower
|
||||
msgid "Is Follower"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_company____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_res_config_settings____last_update
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_resource_calendar____last_update
|
||||
msgid "Last Modified on"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__write_uid
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__write_uid
|
||||
msgid "Last Updated by"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__write_date
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__write_date
|
||||
msgid "Last Updated on"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Luncheon Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_hr_lv_allocation
|
||||
msgid "Luncheon Vouchers Allocation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.res_config_settings_lv_form
|
||||
msgid "Luncheon Vouchers Half-day Cancel"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.ui.menu,name:hr-luncheon-voucher.menu_hr_lv_allocations
|
||||
msgid "Luncheon vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.actions.act_window,name:hr-luncheon-voucher.act_lv_allocations
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_search
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_tree
|
||||
msgid "Luncheon vouchers allocations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
msgid "Luncheon vouchers calculation"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__lv_allocations_ids
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__lv_allocations_ids
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__lv_allocations_ids
|
||||
msgid "Lv Allocations"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_main_attachment_id
|
||||
msgid "Main Attachment"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error
|
||||
msgid "Message Delivery error"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_ids
|
||||
msgid "Messages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__my_activity_date_deadline
|
||||
msgid "My Activity Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__name
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_date_deadline
|
||||
msgid "Next Activity Deadline"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_summary
|
||||
msgid "Next Activity Summary"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_type_id
|
||||
msgid "Next Activity Type"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction_counter
|
||||
msgid "Number of Actions"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error_counter
|
||||
msgid "Number of errors"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_needaction_counter
|
||||
msgid "Number of messages which requires an action"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_has_error_counter
|
||||
msgid "Number of messages with delivery error"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__message_unread_counter
|
||||
msgid "Number of unread messages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.lv_allocations_requests_wizard
|
||||
msgid "Period to consider"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__ref
|
||||
#, python-format
|
||||
msgid "Reference"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.view_employee_form_lv
|
||||
msgid "Refresh Luncheon Vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__dued_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__dued_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__dued_lv
|
||||
#, python-format
|
||||
msgid "Remaining luncheon vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/calendar_event_type.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_calendar_event_type__remove_luncheon_voucher
|
||||
#, python-format
|
||||
msgid "Remove luncheon voucher"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.hr_lv_allocation_form
|
||||
msgid "Request context"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model,name:hr-luncheon-voucher.model_resource_calendar
|
||||
msgid "Resource Working Time"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__activity_user_id
|
||||
msgid "Responsible User"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_lv_allocation.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: code:addons/hr-luncheon-voucher/wizard/generate_lv_allocations_wizard.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_generate_lv_allocation_requests__date_from
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__date_from
|
||||
#, python-format
|
||||
msgid "Start Date"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__state
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_state
|
||||
msgid ""
|
||||
"Status based on activities\n"
|
||||
"Overdue: Due date is already passed\n"
|
||||
"Today: Activity date is today\n"
|
||||
"Planned: Future activities."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__state
|
||||
msgid ""
|
||||
"The status is set to 'Draft', when an allocation request is created.\n"
|
||||
"The status is 'Confirmed', when an allocation request is confirmed by HR manager.\n"
|
||||
"The status is 'Distributed', when the luncheon vouchers have been distributed."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: code:addons/hr-luncheon-voucher/models/hr_employee.py:0
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee__total_acquired_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_base__total_acquired_lv
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_employee_public__total_acquired_lv
|
||||
#, python-format
|
||||
msgid "Total allocated luncheon vouchers"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,help:hr-luncheon-voucher.field_hr_lv_allocation__activity_exception_decoration
|
||||
msgid "Type of the exception activity on record."
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_unread
|
||||
msgid "Unread Messages"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model:ir.model.fields,field_description:hr-luncheon-voucher.field_hr_lv_allocation__message_unread_counter
|
||||
msgid "Unread Messages Counter"
|
||||
msgstr ""
|
||||
|
||||
#. module: hr-luncheon-voucher
|
||||
#: model_terms:ir.ui.view,arch_db:hr-luncheon-voucher.res_config_settings_lv_form
|
||||
msgid ""
|
||||
"Voucher is acquired only if the employee worked during all his attendance."
|
||||
msgstr ""
|
@@ -3,6 +3,5 @@
|
||||
from . import calendar_event_type
|
||||
from . import hr_employee
|
||||
from . import hr_lv_allocation
|
||||
from . import resource
|
||||
from . import res_company
|
||||
from . import res_config_settings
|
||||
|
@@ -97,6 +97,7 @@ class LuncheonVouchersAllocation(models.Model):
|
||||
},
|
||||
)
|
||||
|
||||
@api.model_create_multi
|
||||
def create(self, values):
|
||||
res = super(LuncheonVouchersAllocation, self).create(values)
|
||||
res._calculate_number_acquired_lv()
|
||||
|
@@ -9,7 +9,8 @@
|
||||
<field name="state" />
|
||||
<filter name="draft" string="Draft" domain="[('state', '=', 'draft')]" />
|
||||
<filter name="confirmed" string="Confirmed" domain="[('state', '=', 'confirmed')]" />
|
||||
<filter name="distributed" string="Distributed" domain="[('state', '=', 'distributed')]" />
|
||||
<filter name="distributed" string="Distributed"
|
||||
domain="[('state', '=', 'distributed')]" />
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
@@ -20,10 +21,14 @@
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Luncheon vouchers allocations">
|
||||
<header>
|
||||
<button type="object" name="confirm_allocation" string="Confirm" class="btn-primary" />
|
||||
<button type="object" name="distribute_allocation" string="Distribute Vouchers" class="btn-primary" />
|
||||
<button type="object" name="back_to_draft" string="Back to draft" class="btn-secundary" />
|
||||
<button type="object" name="adjust_distribution" string="Adjust distribution" class="btn-secundary" />
|
||||
<button type="object" name="confirm_allocation" string="Confirm"
|
||||
class="btn-primary" />
|
||||
<button type="object" name="distribute_allocation" string="Distribute Vouchers"
|
||||
class="btn-primary" />
|
||||
<button type="object" name="back_to_draft" string="Back to draft"
|
||||
class="btn-secundary" />
|
||||
<button type="object" name="adjust_distribution" string="Adjust distribution"
|
||||
class="btn-secundary" />
|
||||
</header>
|
||||
<field name="distrib_campaign_name" />
|
||||
<field name="employee_id" />
|
||||
@@ -43,14 +48,18 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="">
|
||||
<header>
|
||||
<button type="object" name="confirm_allocation" string="Confirm" class="btn-primary" attrs="{'invisible': [('state', '!=', 'draft')]}" />
|
||||
<button type="object" name="distribute_allocation" string="Distribute Vouchers" class="btn-primary" attrs="{'invisible': [('state', '!=', 'confirmed')]}" />
|
||||
<button type="object" name="back_to_draft" string="Back to draft" class="btn-secundary" attrs="{'invisible': [('state', '=', 'draft')]}" />
|
||||
<button type="object" name="adjust_distribution" string="Adjust distribution" class="btn-secundary" attrs="{'invisible': [('state', '!=', 'draft')]}" />
|
||||
<button type="object" name="confirm_allocation" string="Confirm"
|
||||
class="btn-primary" attrs="{'invisible': [('state', '!=', 'draft')]}" />
|
||||
<button type="object" name="distribute_allocation" string="Distribute Vouchers"
|
||||
class="btn-primary" attrs="{'invisible': [('state', '!=', 'confirmed')]}" />
|
||||
<button type="object" name="back_to_draft" string="Back to draft"
|
||||
class="btn-secundary" attrs="{'invisible': [('state', '=', 'draft')]}" />
|
||||
<button type="object" name="adjust_distribution" string="Adjust distribution"
|
||||
class="btn-secundary" attrs="{'invisible': [('state', '!=', 'draft')]}" />
|
||||
</header>
|
||||
<sheet>
|
||||
<h1>
|
||||
<field name="name" />
|
||||
<field name="name" readonly="1" />
|
||||
</h1>
|
||||
<group string="Request context">
|
||||
<field name="distrib_campaign_name" />
|
||||
|
43
hr_effective_attendance_period/README.rst
Normal file
43
hr_effective_attendance_period/README.rst
Normal file
@@ -0,0 +1,43 @@
|
||||
==============================
|
||||
hr_effective_attendance_period
|
||||
==============================
|
||||
|
||||
Provide indication that attendance are effectively worked periods or not
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
Use Odoo normal module installation procedure to install
|
||||
``hr_effective_attendance_period``.
|
||||
|
||||
Known issues / Roadmap
|
||||
======================
|
||||
|
||||
None yet.
|
||||
Bug Tracker
|
||||
===========
|
||||
|
||||
Bugs are tracked on `our issues website <https://github.com/elabore-coop/hr-tools/issues>`_. In case of
|
||||
trouble, please check there if your issue has already been
|
||||
reported. If you spotted it first, help us smashing it by providing a
|
||||
detailed and welcomed feedback.
|
||||
|
||||
Credits
|
||||
=======
|
||||
|
||||
Contributors
|
||||
------------
|
||||
|
||||
* Stéphan Sainléger
|
||||
|
||||
Funders
|
||||
-------
|
||||
|
||||
The development of this module has been financially supported by:
|
||||
* Elabore (https://elabore.coop)
|
||||
|
||||
|
||||
Maintainer
|
||||
----------
|
||||
|
||||
This module is maintained by Elabore.
|
3
hr_effective_attendance_period/__init__.py
Normal file
3
hr_effective_attendance_period/__init__.py
Normal file
@@ -0,0 +1,3 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from . import models
|
37
hr_effective_attendance_period/__manifest__.py
Normal file
37
hr_effective_attendance_period/__manifest__.py
Normal file
@@ -0,0 +1,37 @@
|
||||
# Copyright 2023 Stéphan Sainléger (Elabore)
|
||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
|
||||
|
||||
{
|
||||
"name": "hr_effective_attendance_period",
|
||||
"version": "14.0.2.0.0",
|
||||
"author": "Elabore",
|
||||
"website": "https://elabore.coop",
|
||||
"maintainer": "Stéphan Sainléger",
|
||||
"license": "AGPL-3",
|
||||
"category": "Tools",
|
||||
"summary": "Provide indication that attendance are effectively worked periods or not",
|
||||
# any module necessary for this one to work correctly
|
||||
"depends": [
|
||||
"base",
|
||||
"resource",
|
||||
],
|
||||
"qweb": [
|
||||
# "static/src/xml/*.xml",
|
||||
],
|
||||
"external_dependencies": {
|
||||
"python": [],
|
||||
},
|
||||
# always loaded
|
||||
"data": [
|
||||
"views/resource_views.xml",
|
||||
],
|
||||
# only loaded in demonstration mode
|
||||
"demo": [],
|
||||
"js": [],
|
||||
"css": [],
|
||||
"installable": True,
|
||||
# Install this module automatically if all dependency have been previously
|
||||
# and independently installed. Used for synergetic or glue modules.
|
||||
"auto_install": False,
|
||||
"application": False,
|
||||
}
|
1
hr_effective_attendance_period/i18n/README
Normal file
1
hr_effective_attendance_period/i18n/README
Normal file
@@ -0,0 +1 @@
|
||||
This directory should contain the *.po for Odoo translation.
|
1
hr_effective_attendance_period/models/__init__.py
Normal file
1
hr_effective_attendance_period/models/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from . import resource
|
@@ -1,13 +1,23 @@
|
||||
from datetime import timedelta
|
||||
import math
|
||||
from datetime import timedelta
|
||||
from odoo import models, fields
|
||||
|
||||
|
||||
class ResourceCalendarAttendance(models.Model):
|
||||
_inherit = "resource.calendar.attendance"
|
||||
|
||||
effective_attendance_period = fields.Boolean('Effective Attendance Period', store=True)
|
||||
|
||||
|
||||
class ResourceCalendar(models.Model):
|
||||
_inherit = "resource.calendar"
|
||||
|
||||
def _retrieve_day_matching_attendances(self, day):
|
||||
domain = [("calendar_id", "=", self.id),("dayofweek", "=", day.weekday())]
|
||||
domain = [
|
||||
("calendar_id", "=", self.id),
|
||||
("dayofweek", "=", day.weekday()),
|
||||
("effective_attendance_period", "=", True)
|
||||
]
|
||||
if self.two_weeks_calendar:
|
||||
# Employee has Even/Odd weekly calendar
|
||||
week_type = 1 if int(math.floor((day.toordinal() - 1) / 7) % 2) else 0
|
||||
@@ -34,7 +44,16 @@ class ResourceCalendar(models.Model):
|
||||
def _is_worked_attendance(self, resource, day, attendance):
|
||||
attendance_start = fields.Datetime.to_datetime(day.date()) + timedelta(hours=attendance.hour_from)
|
||||
attendance_end = fields.Datetime.to_datetime(day.date()) + timedelta(hours=attendance.hour_to)
|
||||
resource_leaves = self.env["resource.calendar.leaves"].search([("resource_id", "=", resource.id), ("date_from", "<=", attendance_start), ("date_to", ">=", attendance_end)])
|
||||
resource_leaves = self.env["resource.calendar.leaves"].search(
|
||||
[
|
||||
("company_id", "=", resource.company_id.id),
|
||||
("date_from", "<=", attendance_start),
|
||||
("date_to", ">=", attendance_end),
|
||||
"|",
|
||||
("resource_id", "=", resource.id),
|
||||
("resource_id", "=", None),
|
||||
]
|
||||
)
|
||||
if resource_leaves:
|
||||
return False
|
||||
else:
|
||||
@@ -55,5 +74,4 @@ class ResourceCalendar(models.Model):
|
||||
for attendance in day_attendances:
|
||||
if not self._is_worked_attendance(resource, day, attendance):
|
||||
return False
|
||||
return True
|
||||
|
||||
return True
|
26
hr_effective_attendance_period/views/resource_views.xml
Normal file
26
hr_effective_attendance_period/views/resource_views.xml
Normal file
@@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<record id="view_resource_calendar_attendance_tree_inherit_effective_attendance"
|
||||
model="ir.ui.view">
|
||||
<field name="name">resource.calendar.attendance.view.tree.inherit</field>
|
||||
<field name="model">resource.calendar.attendance</field>
|
||||
<field name="inherit_id" ref="resource.view_resource_calendar_attendance_tree" />
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='week_type']" position="after">
|
||||
<field name="effective_attendance_period" />
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_resource_calendar_attendance_form_inherit_effective_attendance"
|
||||
model="ir.ui.view">
|
||||
<field name="name">resource.calendar.attendance.view.tree.inherit</field>
|
||||
<field name="model">resource.calendar.attendance</field>
|
||||
<field name="inherit_id" ref="resource.view_resource_calendar_attendance_form" />
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='day_period']" position="after">
|
||||
<field name="effective_attendance_period" />
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
Reference in New Issue
Block a user