[FIX] project: task: correctly set stage_id during onchange project_id
If you create a task when `default_project_id` is set, the stage_id is initialized at the lowest sequence of the stages of the project, which is normal. However, when you change the project of the task, the stage_id was not correctly reset. If you save at this time, you add the selected stage in the project. Also, the stage_id was not correctly cleared if you remove the project.
This commit is contained in:
@@ -399,11 +399,16 @@ class task(osv.osv):
|
||||
|
||||
@api.cr_uid_ids_context
|
||||
def onchange_project(self, cr, uid, id, project_id, context=None):
|
||||
values = {}
|
||||
if project_id:
|
||||
project = self.pool.get('project.project').browse(cr, uid, project_id, context=context)
|
||||
if project and project.partner_id:
|
||||
return {'value': {'partner_id': project.partner_id.id}}
|
||||
return {}
|
||||
values['partner_id'] = project.partner_id.id
|
||||
values['stage_id'] = self.stage_find(cr, uid, [], project_id, [('fold', '=', False)], context=context)
|
||||
else:
|
||||
values['stage_id'] = False
|
||||
values['partner_id'] = False
|
||||
return {'value': values}
|
||||
|
||||
def onchange_user_id(self, cr, uid, ids, user_id, context=None):
|
||||
vals = {}
|
||||
|
||||
Reference in New Issue
Block a user