[FIX] sale_timesheet: default so line for subtasks
When creating a task in a project generated from an SO line, we want this to be linked to that sale line too. When creating a subtask, the sale line is forced to be the one of the parent, in `create` method. But we want to see it on the form view.
This commit is contained in:
@@ -56,7 +56,16 @@ class Project(models.Model):
|
|||||||
class ProjectTask(models.Model):
|
class ProjectTask(models.Model):
|
||||||
_inherit = "project.task"
|
_inherit = "project.task"
|
||||||
|
|
||||||
sale_line_id = fields.Many2one('sale.order.line', 'Sales Order Item', domain="[('is_service', '=', True), ('order_partner_id', '=', partner_id)]")
|
@api.model
|
||||||
|
def _default_sale_line_id(self):
|
||||||
|
sale_line_id = False
|
||||||
|
if self._context.get('default_parent_id'):
|
||||||
|
sale_line_id = self.env['project.task'].browse(self._context['default_parent_id']).sale_line_id.id
|
||||||
|
if not sale_line_id and self._context.get('default_project_id'):
|
||||||
|
sale_line_id = self.env['project.project'].browse(self._context['default_project_id']).sale_line_id.id
|
||||||
|
return sale_line_id
|
||||||
|
|
||||||
|
sale_line_id = fields.Many2one('sale.order.line', 'Sales Order Item', default=_default_sale_line_id, domain="[('is_service', '=', True), ('order_partner_id', '=', partner_id)]")
|
||||||
|
|
||||||
@api.model
|
@api.model
|
||||||
def create(self, values):
|
def create(self, values):
|
||||||
|
|||||||
Reference in New Issue
Block a user