Commit Graph
274 Commits
Author SHA1 Message Date
Kevin Baptiste 08588f7cc7 [IMP] hr_holidays: hide archived time off from analysis report
The "Time Off Analysis" report was showing Archived (aka canceled) time
off, which was confusing/misleading.

closes odoo/odoo#92778

Taskid: 2864419
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-06-03 13:07:02 +02:00
William Braeckman b15206ad5d [FIX] hr_holidays: exclude cancelled time off by default in report
Prior to this commit cancelled time off were included in the leave
report calendar model and were shown as regular time offs.
They will now be hidden.

closes odoo/odoo#91675

X-original-commit: c8d17c760e27736d0cb809b59e9945f808b1138e
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-05-18 17:09:48 +02:00
Yannick Tivisse 36d466fea8 [FIX] hr_holidays: Avoid useless overhead on employee creation
Part-of: odoo/odoo#85133
2022-02-28 17:27:06 +00:00
Yannick Tivisse f85cc5995c [FIX] hr_holidays: Avoid useless overhead on employee creation
Part-of: odoo/odoo#85133
2022-02-28 17:27:06 +00:00
Kevin Baptiste 3f106f216a [IMP] hr_holidays: open corresponding record on Time Off Analysis
Add a button to directly open the leave/allocation in the Time Off
Analysis view.

closes odoo/odoo#84729

Taskid: 2762014
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-02-18 09:49:37 +00:00
Yannick Tivisse 956044c680 [IMP] hr_holidays: Add links to leave/allocation on time off by type report
Part-of: odoo/odoo#84558
2022-02-16 13:04:49 +00:00
Philippe Wauthy ef1e5f8c40 [FIX] hr_holidays: fix duration field traceback on hr_leave_report_calendar
The duration field was removed from the hr_leave_report_calendar model in
https://github.com/odoo/odoo/pull/55568. The field was still accessible in the measures when
using Studio and creating a pivot view.

This PR removes this unused field to avoid a traceback when selected as measure in the pivot view

task-2698879

Part-of: odoo/odoo#80463
2022-01-25 09:57:10 +00:00
Rob Coekaerts e4ac144ace [IMP] hr_holidays: 'My Department' filter now includes child departments.
The "My department" filter in the "Time Off" overview menu is changed to also include the leaves of employees from child departments (all the way to the bottom of the hierarchy).

task-2699541

closes odoo/odoo#81597

Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-01-07 07:26:53 +00:00
Krina Oza b1b6ccc85d [FIX] hr_holidays: add default filter
Currently, in the overview page of timeoff, in gantt view all
records of the company are displayed. The purpose of this commit
is to improve the loading time by displaying less information
also remove "by employee and time off type" from reporting.

So in this commit, added a default filter "My Department" on
overview page and removed "by employee and time off type" from
the menu "reporting".

closes odoo/odoo#80542

Task-id: 2695774
X-original-commit: ede8331294ebd163af93c8c02eacfbffccfa97c6
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2021-11-29 16:28:10 +00:00
ani-odooandChristophe Simonis 4f42d3302a [FIX] hr_holidays: correct definition of Time Off Calendar report
- Use fully qualified column names to avoid ambiguities.
 - Remove the useless usage of `row_number()`. The ID of the timeoff can
   act as ID. It also allow the removal of the `ORDER BY` clause which
   accelerate the query execution
 - Correctly compute the timezone. Gettting the timezone of the current
   user at build time led to invalid data.

closes odoo/odoo#80172

X-original-commit: fed5b8e4ebafd4002d66d1c748ea4e2b2f650f21
Signed-off-by: Christophe Simonis <chs@odoo.com>
Co-authored-by: Christophe Simonis <chs@odoo.com>
2021-11-22 12:43:33 +00:00
Philippe Wauthy 6367ff2b33 [FIX] hr_holidays: Improve general UX (Back2basics)
General fixes for usability

- Time off type configuration visual : https://tinyurl.com/yj2z6okp
- When you create an allocation, the end date should have a place holder "no limit". If there is no end date recorded, that value should be displayed on loading.
- In Overview, remove filter "people i manage"
- In Approvals / time off : change filters : https://i.imgur.com/uDNjZv8.png
- In Approvals / approvals : change filters like in point 5 (remove people I manage replace with my team)
- In Reporting / By Employee : filters : https://tinyurl.com/yg3u3rkf
- In Reporting / By Type : filters : https://tinyurl.com/yhbpgz5m
- Remove Allocations smartbutton from Employee App
- When you click on TimeOff Smartbutton from Employee App, you should be redirect to this screen : https://tinyurl.com/ygwxzx5b
- When an allocation is created, the validity is added to the name of the allocation like "Allocation X (validity Date --> Date) and hide the validity field in "My allocations".
- Users will have the information of the validity from the name of the allocation

task-2643692

closes odoo/odoo#77376

X-original-commit: 7f92c830d3607167bd76bc43d992fbf720a3ef29
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2021-09-29 08:33:26 +00:00
Kevin Baptiste 5e377e9c48 [FIX] hr_holidays: show Time Off Analysis action only in debug
The Time Off Analysis action should only be available in debug mode.

closes odoo/odoo#77257

Taskid: 2653912
X-original-commit: 1f5e741b42afaef4ffd2e96203bc4f14f75057d2
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2021-09-27 16:57:10 +00:00
Kevin Baptiste 8c969fb980 [IMP] hr_holidays: improve views
- Hide transition mode if there is 0 or 1 level on accrual plan;
- Fix kanban card
- Reduce bottom padding on calendar view
- Log a message when an allocation linked to accrual runs for the first
time

closes odoo/odoo#75940

Taskid: 2636417
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2021-09-08 12:44:49 +00:00
d1e227b07b [IMP] web,*: new PivotView component
Part-of: odoo/odoo#73311
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Bruno Boi <boi@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
Co-authored-by: Lucas Perais <lpe@odoo.com>
Co-authored-by: Jorge Pinna Puissant <jpp@odoo.com>
2021-09-07 10:04:38 +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
Barad Mahendra 639a3d0fcc [IMP] project,hr: generic improvement for the project
Purpose of the commit is to improve the ui of the project and task

So in this comit, project_id and tag_ids should be always visible
in fsm mode too. also re-sequence the task form view buttons and
added class for the proper xpath.

also move the common for for get_unusual_days on employee so it
can be reused.

Related enterprise PR: https://github.com/odoo/enterprise/pull/19134
Closes: #72440
TaskID: 2502339
2021-07-21 04:44:27 +00:00
Romain Derie 4a1c516b01 [FIX] *: search_view_id expects an id/name pair
Passing an id directly to `search_view_id` is not working. It is silently
ignored.
The framework js code expects an id/name pair, as described in the ORM doc.

Most of the time, this will be unoticed as the specified search view being
ignored, the default one will be used instead, which is often the same one as
there is only one search view.

Only 3 occurences are real misbehavior.

Note that the `name` of the pair is useless, you can just pass the ID in an
array.

Working:
'search_view_id': [123, 'search'],
'search_view_id': [123],

Not working:
'search_view_id': 123,

closes odoo/odoo#72247

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2021-06-17 10:38:18 +00:00
sofiagvaladze 8804690e7a [IMP] hr_holidays: Improve archived employees management
Add filter on everyone menu
Add archived filters

task - 2416659

closes odoo/odoo#64806

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2021-06-15 04:07:52 +00:00
Leonardo Pavan Rocha c53724ebc3 [IMP] *: adds generic user avatar
Description of the issue/feature this PR addresses:
It is currently quite difficult to differentiate users. Most of the time, people
don't take the time to upload an actual avatar so everybody looks the same. This
PR generates a custom avatar with the users initials and random color to
differentiate them. For res.users, res.partner and hr.employee, image fields now
hold the binary image and avatar are used to show the image or svg.

Current behavior before PR:
Avatar had only random colors and was being saved in database, being inefficient

Desired behavior after PR is merged:
A new mixin defines image fields and in case no image is set, it generates an
SVG image with the user's initials and random color.

closes odoo/odoo#69819

Task: 2404630
Related: odoo/enterprise#18199
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2021-06-01 14:36:23 +00:00
Nisha patel adf3c610c7 [FIX] hr_holidays: Improve displayed information on calendar leaves
See task pad for complete information.

closes odoo/odoo#58168

Taskid: 2314838
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2021-03-10 14:21:24 +00:00
Aurélien (avd) 2b73e09ba8 [IMP] hr_holidays: add various cosmetic changes
Remove 'refuse' leaves from the Calendar View.
Improve leave/leave.allocation popup form views.
Add Sequence handle to leave type list view.

Change the sorted key func. in _search override to
first order by sequence asc then sort ties by
remaining,taken desc.

closes odoo/odoo#62162

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2021-03-09 08:52:43 +00:00
Giacomello Nathan ec25487cfb [IMP] Time Off: Year Calendar ajustments
A new calendar view has been added, the "year" view.
Some modifications should be done on this view, more specialy in "Time Off" application.
Problems were the fact that it was hard to see if a time off has been approved or not.
Another was the fact that week-ends & public holidays were not grey.

This commit change year calendar in Time Off module.
More specially, this commit:
- Change default calendar in personal dashboard to "year"
- Gray week-ends & public holiday (based on the worker's calendar)
- Hatch non-approved time off
- Removed a calendar view from My Time Off Requests
- Fix a "cancel" button that doesn't work
- Add a new view that is displayed when there is no filter to show on the filter view for calendars

Task id #2318645
Task id #2317525
2020-12-09 16:06:30 +01:00
Adrien Widart 327b335658 [FIX] hr_holidays_calendar: hide archived employee
When going on Leaves dashboard, if an employee is archived, his leaves
are still displayed.

To reproduce the error:
1. Add time-off to an employee E
2. Archive E
3. Go back to Time Off module > Everyone

=> The E's leaves are still shown

They should be hidden.

Notes:
	Manual forward-port.
	In previous versions, the fix concerned the `hr_holidays` module
	Replace #62795
	Initial PR #62726

OPW-2406702

closes odoo/odoo#62987

X-original-commit: aa4be1c39d246a1a48c40bf7717c23809ca2e7ef
Signed-off-by: adwid <adwid@users.noreply.github.com>
2020-12-08 07:26:12 +00:00
ppr-odoo 1bda0da91b [FIX] hr_holidays: fix traceback to add timezone
Currently, Traceback occurs when we do timezone filters in every one
report of time off because the timezone is non-stored compute field in
hr leave model.

So in this commit, get the timzone value based on compute field from
resource or timezone of the current company's calendar OR user's tz
and at last 'UTC'.

closes odoo/odoo#61910

Taskid: 2334866
X-original-commit: 05c373a99a6064f08fc9eb0662ab2ccdb1978cd7
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-11-18 01:51:27 +00:00
Xavier-Do 1495065041 [FIX] stock, hr_holidays: fix server actions groups_id
f0d37c384b added a check on write access
for server action. Since the fixed server action are readonly with strict
access right, corresponding groups are added to avoid a warning.
2020-08-21 14:18:59 +00:00
Yannick Tivisse d2238de576 [IMP] hr_holidays: Improve the general usability (back2basics)
closes odoo/odoo#55568

Taskid: 2282495
Related: odoo/upgrade#1574
Related: odoo/enterprise#12272
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-08-11 09:10:49 +00:00
Thibault Delavallée 7385ac9e41 [IMP] hr_holidays: remove dead code
_read_from_database was removed in the ormpocalypse of 13.0 . It was used in
hr leaves report to make leave name (holding description) anonymous for
people not belonging to HR groups. Since 13.0 _read_from_database has been
removed. A security has been added in read_group itself, preventing to try to
read name through read_group.

In this commit we therefore simply remove dead code as the feature itself
is still alive.

Task ID-2285881

closes odoo/odoo#55610

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-08-07 08:45:45 +00:00
Xavier Morel 6835aeb0de [REM] core, *: deprecate <act_window> and <report>
Convert deprecated tags through the codebase.
2020-07-28 13:03:13 +00:00
Raphael Collet ea3e39506a [IMP] models: use slots for BaseModel
This restricts the attributes of a BaseModel instance to `env`, `_ids`
and `_prefetch_ids`.  This way, one can only assign fields on a record;
other assignments are programming errors.

This also reduces the memory footprint of records from 168 to 64 bytes
(-62%), and makes their instanciation faster.

closes odoo/odoo#51075

Related: odoo/enterprise#10529
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-05-18 09:51:43 +00:00
Yannick Tivisse 152097d099 [IMP] hr*: Use correct default employee_id based on company
Followup of https://github.com/odoo/odoo/pull/50982/commits

Courtesy of https://github.com/sswapnesh

In a multi-company environment `self.env['hr.employee'].search([('user_id', '=', self.env.uid)], limit=1)` could be wrong while `employee_id`represents correct employee based on company.

https://github.com/odoo/odoo/blob/fb17af76d791488c69eb3829376940b32998d374/addons/hr/models/res_users.py#L13

Making behavior Similar to https://github.com/odoo/odoo/blob/fb17af76d791488c69eb3829376940b32998d374/addons/hr_expense/models/hr_expense.py#L663

closes odoo/odoo#51246

Taskid: 2254687
X-original-commit: d7d1557e7a0f613335a9ca5ca1355d246093f9d1
Related: odoo/enterprise#10599
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-15 07:06:59 +00:00
Kevin Baptiste 1b4767ee79 [IMP] hr_holidays: hide duplicated info on popover
The name of the employee and the dates were shown multiple times in the
popover. This commit aims at showing the relevant information only once.

closes odoo/odoo#49845

Taskid: 2227158
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-04-22 08:30:19 +00:00
Kevin Baptiste b8a8ad27de [FIX] hr_holidays: "Everyone" view on calendar_event
Purpose
=======

Avoid to show to much information to leave responsibles.

Specification
=============

- Dynamically add/remove the leave_manager_ids on the group
  group_hr_holidays_responsible, on employee creation/modification
- Retrict the available employees when creating a leave. For
  manager/users : Everyone. For responsibles: The employee for
  who the user is responsible. Otherwise: Only me.
- Don't obfuscate the leave name on employees for who I'm the
  responsible.
- Add a new SQL view for "Everyone" report. To select only the
  information we want to share instead of showing the hr.leave
  model directly.

closes odoo/odoo#47659

closes odoo/odoo#49765

Taskid: 2206862
Related: odoo/enterprise#9239
Related: odoo/enterprise#10021
X-original-commit: 781147dcaf1552b8f2ab687ed73034b8fd1f7352
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-04-20 09:19:48 +00:00
Lucas Lefèvre c2eef0cace [IMP] hr_holidays: Unifies leave and allocation name
Some changes were made at leave names in eb02e9b.
This commit applies the same behavior for allocations.
2019-11-22 16:58:38 +01:00
fw-bot 4c28667efd [IMP] hr_holidays: prevent grouping leaves by name
closes odoo/odoo#40426

Taskid: 2088559
X-original-commit: 5653520252f321d1fa185bffd897952830b509c4
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-11-18 13:33:30 +00:00
Kevin Baptiste eb02e9b3e0 [IMP] hr_holidays: compute leave description based on user group
The leave description is now replaced with a compute method in order to
obfuscate the description based on the user's group.

closes odoo/odoo#38995

Taskid: 2088559
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-11-13 10:55:43 +00:00
Sébastien Theys b6288e5446 [IMP] *: remove image_64 and clean views
There are too many image sizes. Since they are stored resized this takes time to
generate when saving a new image, it's more rows on the attachment table, more
files on the disk, ...

64px is close enough to 128px that it can be removed without a big impact on
download size.

It will even reduce download and number of requests when both images are
displayed because now only one has to be downloaded and then benefit from cache.

The difference between the two is typically around 1.5kB which is negligible
these days, especially when the request overhead is around 0.5kB already, not
even taking into account other factors such as latency.

If a 64px image must absolutely be returned, it is still possible to pass the
size parameters to the image route. But the current guideline is to handle
resizing in the views when necessary.

Views
=====

- remove width and height attributes when existing CSS rules are overriding them
  (eg. `.oe_kanban_avatar` in the right context)
- add CSS rules instead of width and height attributes when possible
- use `object-fit: cover;` where width and height are forced to avoid distortion
  of non-square images
- for products, use `object-fit: contain;` instead, keep ratio but without crop
- add new CSS rules where the expected size was max 64px*64px before due to the
  image size itself
- remove `img-fluid` where using size classes to avoid conflicting rules

task-2060865

closes odoo/odoo#36147

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2019-09-19 10:23:39 +00:00
Kevin Baptiste 5b3509daaa [FIX] hr_holidays: filter Time off Analysis on active ids
Prior to this commit, the Time Off Analysis report was showing the
leaves of all employees and not the ones selected.

closes odoo/odoo#37048

Taskid: 2073345
Signed-off-by: Romain Libert (rli) <rli@odoo.com>
2019-09-18 13:50:05 +00:00
Yannick Tivisse abd73d61a2 [IMP] hr_holidays: Improve general UX (back2basics)
TaskID: 2053585

closes odoo/odoo#35737

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-08-16 11:24:04 +00:00
Christophe Simonis 886eca0131 [IMP] *: remove usage of oldname attribute
This attribute is misleading as it is insufficient to correctly upgrade
the database. It only renames the column in the database, but other
operations are needed, like updating the corresponding `ir.model.fields`
record (and its xmlid). The default values and the translations are also
lost during the upgrade.

Moreover, this feature was misused. It was:
 - left on fields during multiple versions.
 - used on reports (SQL views). This would be ok if the feature was
   complete, but, as is, it was useless.
 - kept unchanged after a second renaming of the field (which can happen
   versions later the first rename).
 - used, even when the meaning of the field changed. i.e. the field
   `archived` has been renamed to the classic `active`, but the value
   in the database should be switched.
2019-08-05 09:36:41 +00:00
Sébastien Theys 58a2ffa26f [IMP] *: rename image fields
image_original => image_1920 (now resized to 1920)
image_big => image_1024
image_large => image_256
image_medium => image_128
image_small  => image_64
image replaced by image_1920 (when writing) or by image_1024 (when displaying
	what was previously the big size)

+ add new intermediate format:
image_512

PR: #34925
2019-08-02 16:47:58 +00:00
Martin Trigaux fd15ca1918 [MERGE] Forward port of saas-12.4 to master up to 1f5a4649a6
closes odoo/odoo#34850

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-07-15 08:12:26 +00:00
Martin Trigaux 1f5a4649a6 [MERGE] Forward port of saas-12.3 to saas-12.4 up to 87fc1554d6
closes odoo/odoo#34820

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-07-12 13:59:35 +00:00
Hiral Bhavsar b7c8cf1b60 [IMP] hr(_*), website_hr: replace actions menu by stat button
* attendance, contract, fleet, holidays, maintenance, presence,
  timesheet.

For the model 'hr.employee', replace the actions menu 'Archive/Restore'
by the stat button. That's why adapted changes regarding xpath.

Also rename the actions menu 'Time Off' by 'Time off'.

Linked to task 1984526
Related to PR #33720
2019-07-10 15:07:57 +00:00
Christophe Simonis 039e6bae99 [MERGE] forward port branch 12.0 up to 9c742d0c65 2019-07-05 11:13:53 +02:00
Lucas Perais (lpe) 356b2ae43e [FIX] hr_holidays: report summary has a wizard as model
Before this commit, the report Leave Summary had hr.leave as its model
implicitly meaning that a report could be printed from an hr leave.

Since the report actually is a view which aggregates data, and not a document
representing a leave, it should have its wizard (the only entry point for that report)
as its model

OPW 2029699

closes odoo/odoo#34507

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-07-04 08:14:58 +00:00
Hiral Bhavsar 3cd7ed07a2 [IMP] *: remove 'view_type' on window actions.
The old tree views don't really exist anymore, this odd pseudo-flag to
dispatch between "list" and "tree" tree views has no reason to remain.

Task 1937686

closes odoo/odoo#31243

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-06-17 11:34:17 +00:00
Xavier Morel 10f1a1a0c4 [REM] multi from ir.actions.act_window
Task 1843603

* src_model is redundant with binding_model_id
* multi -> binding_view_types (if empty => all views) (maybe should be
empty by default yo?)
* in convert, type => rec.get(type) but no @type possible on <act_window>...
* removed deprecated auto_refresh & auto_search (not used anywhere (?))

closes odoo/odoo#24738

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-05-27 12:00:39 +00:00
Christophe Simonis 71faa19af0 [MERGE] forward port branch saas-12.1 up to 2b3296bbf8 2019-03-11 14:42:34 +01:00
Christophe Simonis 2c5c9b8342 [MERGE] forward port branch 12.0 up to c023d0784f 2019-03-08 17:56:14 +01:00
Christophe Simonis c023d0784f [MERGE] forward port branch saas-11.3 up to ecd8c023b7 2019-03-08 16:10:55 +01:00