From 26905ec24aeb2e379b29cd7701603699f7ecc158 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Maes?= Date: Wed, 2 Aug 2017 13:51:32 +0200 Subject: [PATCH] [IMP] sale_timesheet: name of generated project/task on SO confirmation The project name should take the customer ref into account, when creating project. The task name should be the first line of the SO description to avoid having multiple tasks generated with the same name. --- addons/sale_timesheet/models/sale_order.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/addons/sale_timesheet/models/sale_order.py b/addons/sale_timesheet/models/sale_order.py index 5b0dcc3461f..d84628af9d8 100644 --- a/addons/sale_timesheet/models/sale_order.py +++ b/addons/sale_timesheet/models/sale_order.py @@ -179,8 +179,9 @@ class SaleOrderLine(models.Model): account = self.order_id.analytic_account_id project = Project.search([('analytic_account_id', '=', account.id)], limit=1) if not project: + project_name = '%s (%s)' % (account.name, self.sale_line_id.order_partner_id.ref) if self.sale_line_id.order_partner_id.ref else account.name project_id = account.sudo().project_create({ - 'name': account.name, + 'name': project_name, 'allow_timesheets': self.product_id.service_type == 'timesheet', }) project = Project.sudo().browse(project_id) @@ -194,7 +195,7 @@ class SaleOrderLine(models.Model): project = self._timesheet_find_project() planned_hours = self._convert_qty_company_hours() return { - 'name': '%s:%s' % (self.order_id.name or '', self.product_id.name), + 'name': '%s:%s' % (self.order_id.name or '', self.name.split('\n')[0] or self.product_id.name), 'planned_hours': planned_hours, 'remaining_hours': planned_hours, 'partner_id': self.order_id.partner_id.id,