From 57c58153248e30e1a7cb450076b9880da44f6816 Mon Sep 17 00:00:00 2001 From: Quentin Mondot Date: Wed, 5 Mar 2025 11:10:40 +0100 Subject: [PATCH] [FIX] helpdesk_create_task_from_ticket: debug when used with timesheet module --- .../models/project_task.py | 54 +++++++++++-------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/helpdesk_create_task_from_ticket/models/project_task.py b/helpdesk_create_task_from_ticket/models/project_task.py index 71c838a..0ccb842 100644 --- a/helpdesk_create_task_from_ticket/models/project_task.py +++ b/helpdesk_create_task_from_ticket/models/project_task.py @@ -12,34 +12,44 @@ class ProjectTask(models.Model): @api.model def create(self, vals_list): - user_ids = [self.env.context["default_user_id"]] - task_service_id, request_type_id = self._match_task_service_and_request_type( - ticket_category_id=self.env.context["default_ticket_category_id"], - ticket_request_type_id=self.env.context["default_ticket_request_type_id"] - ) + if all(key in self.env.context for key in ( + "default_user_id", + "default_ticket_category_id", + "default_ticket_request_type_id" + )): + user_ids = [self.env.context["default_user_id"]] + task_service_id, request_type_id = self._match_task_service_and_request_type( + ticket_category_id=self.env.context["default_ticket_category_id"], + ticket_request_type_id=self.env.context["default_ticket_request_type_id"] + ) - result = super(ProjectTask, self.with_context( - default_user_ids=user_ids, - default_service_id=task_service_id, - default_request_type_id=request_type_id - )).create(vals_list) + return super(ProjectTask, self.with_context( + default_user_ids=user_ids, + default_service_id=task_service_id, + default_request_type_id=request_type_id + )).create(vals_list) - return result + return super(ProjectTask, self).create(vals_list) def onchange(self, values, field_name, field_onchange): - user_ids = [self.env.context["default_user_id"]] - task_service_id, request_type_id = self._match_task_service_and_request_type( - ticket_category_id=self.env.context["default_ticket_category_id"], - ticket_request_type_id=self.env.context["default_ticket_request_type_id"] - ) + if all(key in self.env.context for key in ( + "default_user_id", + "default_ticket_category_id", + "default_ticket_request_type_id" + )): + user_ids = [self.env.context["default_user_id"]] + task_service_id, request_type_id = self._match_task_service_and_request_type( + ticket_category_id=self.env.context["default_ticket_category_id"], + ticket_request_type_id=self.env.context["default_ticket_request_type_id"] + ) - result = super(ProjectTask, self.with_context( - default_user_ids=user_ids, - default_service_id=task_service_id, - default_request_type_id=request_type_id - )).onchange(values, field_name, field_onchange) + return super(ProjectTask, self.with_context( + default_user_ids=user_ids, + default_service_id=task_service_id, + default_request_type_id=request_type_id + )).onchange(values, field_name, field_onchange) - return result + return super(ProjectTask, self).onchange(values, field_name, field_onchange) def _match_task_service_and_request_type( self,