odoo/upgrade#2208

Created by Mahendrasinh Barad (mba)
Merged at c3f75875f34337b833baf851b9f22edbbbd438bc

Statuses:

label
odoo-dev:master-timer-syc-ppr
head
74323f736c8351ec41bc27276ff58a6ccfcdbac3
merged
1 month ago by Upgrade, Christophe Simonis (chs)
odoo/odoo odoo/enterprise odoo/upgrade odoo/upgrade-util
master #136946 #65414 #16084 #2208 #51

[IMP] timer,timesheet_grid,helpdesk_timesheet/saas~18.3: align timer on tasks/tickets with timer header

[IMP] timer,*/saas~18.3: uniformize the using of timer

  • = helpdesk_timesheet,timesheet_grid

The timer used in the Helpdesk, Project and Timesheet app was linked to 3
different models (helpdesk.ticket, project.task and
account.analytic.line), the problem with that is when the timer is
launched on ticket or a task, the user cannot stops the timer in the
Timesheet app.

The goal is the timer will be linked to a timesheet and ticket/task (if
the timesheet linked is linked to a ticket or a task). By doing that,
the user will be able to stop the timer in the helpdesk/Project app and
Timesheet app.

This commit migrates the changes to be able to align the timer in
tickets/tasks with the timer header in Timesheet app.
That is:
- the helpdesk.ticket and project.task will inherit to
timer.parent.mixin instead of timer.mixin.
- 2 fields are added in timer.timer model to be able to link the
ticket or the task on the timer.
- The project.task.create.timesheet and
helpdesk.ticket.create.timesheet wizards are removed because those
wizards were used when the timer is stopped in the form view of task
(respectivetly, ticket) to create a timesheet after the changes in
odoo/enterprise#65414 , the timesheet will be generated when the timer
will be started and so those wizards will not be useful anymore except
if we want to add confirmation for the user.

[IMP] timesheet_grid/saas~18.3: populate parent_res_{model,id} in timer

This commit updates the running timer linked to a timesheet to fill the
parent_res_model and parent_res_id columns.

[IMP] {helpdesk_}timesheet{_grid}/saas~18.3: create timesheets for timer

This commit generates the timesheets for the existing timers linked to
ticket or task and stopped those timers because now when a timer will
be started in task or ticket, a timesheet is generated (before the
timesheet was generated when the timer is stopped). Those timers are
stopped because it is possible a timer is existed for a same user in
another timesheet. To avoid having 2 timers in the same model for the
same user, those timers are removed after creating the timesheets.

task-2276015

Enterprise PR: odoo/enterprise#16084