Daily updates from Odoo
Tuesday, November 30, 2021
6 changes · master
Enhancements to existing features
Project task schedule popovers now show allocated hours based on each assignee's working calendar. This helps managers quickly understand planned workload directly from the Gantt view, including totals across multiple assignees.
Original PR description
This PR adds the allocated hours information on the gantt popover. The allocated hours are computed based on the user's working calendar information. If there are multiple assignees, the working hours is the sum of the allocated hours for each user. This commit takes advantage of the PR #21135 and copy the way the allocated hours are computed in planning slots. task-2664117
Project and task views have been refined to make everyday planning and forecasting workflows easier to use. These updates help teams navigate project information more smoothly and reduce friction when working with forecasts and timesheets.
Original PR description
Purpose of the commit is to improve the generic UX of project task and project views. Related Community PR: odoo/odoo#75509 task-2590412
Employee appraisal planning now shows the next planned appraisal date before the appraisal is created. When Employee Contracts is installed, the first appraisal is scheduled from the employee's first contract start date when available, making appraisal timelines better aligned with actual employment start dates.
Original PR description
In the following commits: 1) next_appraisal_date_display is added in order to show upcoming (planed and not yet created) appraisal date from employee app 2) Appraisal plan domain is modified so that when 'Employee Contracts' is installed, the date of the first appraisal will be based on the start date of the first contract, rather then create_date of the employee. task - 2667125
Event attendee screens now open with overview-focused views first, making it easier to monitor registrations and event fill levels. Attendee reporting now starts with a graph instead of a pivot table, giving business users a clearer visual snapshot at a glance.
Original PR description
PURPOSE Change the view sequence of the attendees in Event. SPECIFICATIONS In this commit we have changed the sequence of the view, after this commit if the attendees opened from stat button or kanban button it will display the list view before the kanban view, purpose is that this is not the path to register or confirm attendance, you just want to keep an eye on how well your event is filling up and need an overview. We have also changed the sequence of attendees reporting view, after this if we opens attendees reporting, instead of displaying the stern looking pivot table it will display the graph view. LINKS PR #21976 Task 2670765
Resolved issues and error corrections
Creating a field service shift now chooses a more relevant default date based on the current planning period. This helps users avoid accidentally scheduling work on the wrong day, while preserving the selected time slot when using the Gantt view plus button.
Original PR description
**Current behavior before PR:** Today's date is selected by default in industry_fsm. **Desired behavior after PR is merged:** If a shift is created through the 'ADD' button: - Set today's date by default if it falls during the current period. - Set the first working day of the period if it doesn't include today's date (i.e. it is in the past or in the future). If the user creates a shift through the (+) button of the Gantt view, the selected timeframe should bypass today's date. **LINKS:** Task-2627052
Code cleanup and technical improvements
This refactor simplifies how project task auto-shifting calculates employee availability and planned dates. It makes scheduling behavior more consistent by using the company calendar whenever an employee is unavailable or not covered by a valid work calendar, reducing module-specific custom logic.
Original PR description
Purpose ======= The auto-shift functionnality shifts the tasks backward or forward thanks to two triggers : - Manual trigger : User clicks on an arrow in the gantt view - Auto trigger : User plans a…
Purpose ======= The auto-shift functionnality shifts the tasks backward or forward thanks to two triggers : - Manual trigger : User clicks on an arrow in the gantt view - Auto trigger : User plans a task in conflict with a depending task that should be shifted in order to keep a waterfall order. This functionnality may be summarized as : 1) When a forward (resp. backward) shift is triggered, find the first datetime in the future (resp. the past) where the assignee is available. 2) Starting from this datetime, allocate the planned hours based on user's calendar availabilities. Analysis ======== Currently the implementation takes a big advantage of caching the work intervals information for a given calendar and resource and fill efficiently the dict in order to limit the number of calls to work_intervals_batch. However efficient, the current implementation can be factorized in order to have : 1) a unique method responsible of the work intervals caching which is handled two times currently. 2) a unique method responsible of giving the new begin and end planned dates, whatever there are or not planned hours on task 3) an efficient way to use the 'calendar validity' API of resource introduced in PR #21135. Which allows to remove overrides in project_enterprise_hr and project_enterprise_hr_contract. task-2643752