Commit Graph
14 Commits
Author SHA1 Message Date
Kevin Baptiste 0273a236ee [FIX] hr_holidays_attendance: delete overtime on leave cancelation
When a leave was canceled, the overtime record linked to it was not
deleted resulting in a wrong count of available overtimes.

Whatever the config of the time off type used to deduct extra-hours, its
total should be displayed in "hours" instead of "days" on the dashboard.

task-3097259

closes odoo/odoo#108275

Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-12-19 13:38:09 +01:00
Kevin Baptiste 5389f2640a [FIX] hr_holidays_attendance: grant back overtime on leave deletion
The linked overtime record was not deleted when deleting a time off.
Meaning that those hours were lost.

task-3097259

closes odoo/odoo#107917

X-original-commit: 54cdc8435c28ecea253f61d5c8eeef317874456a
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-12-14 11:42:24 +01:00
Kevin Baptiste 80576925e9 [FIX] hr_(holidays_)attendance: recompute overtime on leaves > 1 day
1/ When approving / refusing a leave spanning multiple days, the
   overtimes were only recomputed for the starting date and not the
   whole period.

2/ Overtimes should be computed whatever the kind of time off that's
   been taken (Absence or Other).

task-3073155

closes odoo/odoo#106751

X-original-commit: 116d7cb46132404354e00e67a2364b8239fcdce5
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-11-29 09:32:48 +01:00
Kevin Baptiste 1950e11167 [FIX] hr_holidays_attendance: update overtime when time off is validated
The overtime were not updated when a leave was updated, which lead to
incorrect situation.

Example:
    - Check-in from 8:00 to 12:00
    - Take a day off for the afternoon
    - It was wrongly counting 4h of "undertime"

task-2982443

closes odoo/odoo#100389

X-original-commit: 0330eab5f0c477ea07f14d4aa5a0d14ae56da77c
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-09-17 00:51:47 +02:00
Philippe Wauthy 6abce995d5 [FIX] hr_holidays_attendance: remove has_valid_allocation from search_count
In hr_holidays_attendance, the model that inherits from res.users adds a request_overtime field.
This field is used to allow the user to request overtime based on the total overtime.
The domain for the time off type includes has_valid_allocation. If the user doesn't have any allocation,
he won't be able to deduct extra hours

task-2701128

closes odoo/odoo#87845

X-original-commit: b6d186d7b46df1e0f4e0af3eb7c8e7b07909a040
Related: odoo/enterprise#25843
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-04-04 09:24:59 +02:00
alt-odoo e1d1e1f2a5 [FIX] hr_holidays_attendance: allow non HR officer user to refuse leaves
When refusing a leave, we are deleting the associated overtime if any so it can be
used again by the employee. However, we need HR Officer rights to access overtime
field. The sudo() should be used before we try to read the field to avoid errors
in case the manager of the employee does not have HR rights.

closes odoo/odoo#80945

X-original-commit: 1ffbcf9787e5efe00d49f18baba0144f631ada51
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Signed-off-by: Alex Thuyls (alt) <alt@odoo.com>
2021-12-07 10:08:17 +00:00
William Braeckman 48c0a5ac8b [FIX] hr_holidays_attendance: fix deduct extra hours
Since the Time Off B2B, the deduct extra hours didn't work anymore due
to an invalid domain.
This commit fixes the traceback but also the behaviour as the domain did
not make any sense anymore.

Also changes the default order for overtime records.

TaskId-2658077

X-original-commit: 13c57cdb3b797e56a164e5049b9f9d799ad127c9
Part-of: odoo/odoo#79498
2021-11-08 13:24:14 +00:00
William Braeckman 4a29ba94ad [IMP] hr_holidays_attendance: improve leave_type name_get
The name_get for leaves types would previously not show the number of
hours available to the user for the extra hours time off type.
This commit adds that special case of time off type.

This commit also improves the leave_type name_get overall, by allowing
the hours to be display upon initial loading when requesting new
leaves/allocations properly.
Thanks to this change we do not need to display the number of extra
hours available at all time in the form views.

TaskId-2655689

Part-of: odoo/odoo#77841
2021-10-26 14:10:56 +00:00
William Braeckman fb3ac94ce8 [FIX] hr_holidays: count only valid allocations in dashboard
Since the recent time off B2B, time off validity has been moved from the
time off type to the time off allocation. Meaning that a company may use
the same time off type every year for their yearly time off.
This means that the dashboard must display currently valid data.
Remaining leaves and taken leaves will now be computed in function of
that data aswell in the dashboard.

This commit also fixes being able to take a leave if the current
allocation does not permit it if an expired one would have made it
possible.

TaskId-2636405

closes odoo/odoo#76366

X-original-commit: eeccd682124fe83d2c2342be0d8804aa2ca21146
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Signed-off-by: William Braeckman (wbr) <Williambraecky@users.noreply.github.com>
2021-09-10 18:19:40 +00:00
254d6a71e8 [IMP] hr_holidays: Improve Accruals, dashboards and general UX (Back2basics)
Purpose
=======

Time Off : New Dashboard, Accruals feature, Public holidays, New time off type configuration view.

- Review of Dashboard
- Accrual feature : Currently, when you create an allocation, it's possible to create an
  Accrual, but there is no appraisal Plan. An Appraisal plan is use to define steps of accruals
  for each employee.
  In Belgium, we use accrual Allocation for European Leaves, or compensatory hours, it's a
  simple use case.  But in USA, it's possible to change the calculation mode each year.
  Also, in USA, it's possible to deal your accrual plan when you arrive on the company. It's a
  HR Officer task to create the right Accrual allocation for each new employee.
- Public Holidays :
  Improvement of global time off feature located on Working hours calendar. Now, Time off
  application have to manage Public Holidays.
- Review of Time Off type configuration

COM PR: https://github.com/odoo/odoo/pull/72511
ENT PR: https://github.com/odoo/enterprise/pull/19157
UPG PR: https://github.com/odoo/upgrade/pull/2791
TaskID:2475413

closes odoo/odoo#72511

Related: odoo/enterprise#19157
Related: odoo/upgrade#2791
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Co-authored-by: William Braeckman <wbr@odoo.com>
Co-authored-by: Xavier BOL (xbo) <xbo@odoo.com>
Co-authored-by: Laurent Stukkens (LTU) <ltu@odoo.com>
Co-authored-by: Yannick Tivisse <yti@odoo.com>
2021-09-02 12:57:03 +00:00
William Braeckman 57f9b798af [FIX] hr{,_holidays}_attendance: compute correct default time off type
Previously the default time off type computed when pressing the deduct
extra hours button would not always be valid, this commits aims to
change that behaviour.

The form would also not recognize the fact that we are in a overtime
deductible context when the time off type was not bound to a company.

Task ID: 2607436
2021-08-23 08:09:47 +00:00
William Braeckman 1ac39f6ef8 [FIX] hr_holidays_attendance: fix deduct extra hours not showing
Fixes the deduct extra hours option not showing in time off type form
views if no company is linked, it will now use the current company to
fetch the setting if no company is linked.

Task ID: 2607436
2021-07-27 08:22:48 +00:00
William Braeckman e4a4d498ef [FIX] hr_holidays_attendance: fix archived time off
When installing the `hr_holidays_attendance` module without demo data,
and having the count extra hours options enabled, the extra hours time
off type would remain archived instead of being enabled.
This commit fixes that behaviour and will now start in sync with the
company option(s).

Closes odoo/odoo#74241

Task ID: 2607436
2021-07-26 12:43:50 +00:00
Kevin Baptiste 2961513141 [ADD] hr_holidays_attendance: convert overtime to holidays
This module allows an employee to create leave requests or allocation
requests from their overtime.

Depending on the configuration of the leave type, the request can be
made from:

    - "My Profile" for allocation which allows employee requests;
    - Time Off dashboard for leave type with no allocations;
    - The employee profile for the time off manager.

TaskID: 1904850

[IMP] hr_holidays{,_attendance}: leave allocation multi create

Change leave allocation create function to a multi create one.

Task ID: 1904850
2021-07-06 11:35:01 +02:00