From 54d8f4b0274a04947e4cbc1742e34113c86853f3 Mon Sep 17 00:00:00 2001 From: Jigar Patel Date: Wed, 12 Apr 2017 16:12:53 +0530 Subject: [PATCH] [IMP] project(_issue): avoid stage reset at project change when it is shared among the new project If the new project of the task or issue has the current record stage among its own stages do not reset it. It avoids unnecessary changes and chatter logs. --- addons/project/models/project.py | 3 ++- addons/project_issue/models/project_issue.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/addons/project/models/project.py b/addons/project/models/project.py index cfe3f91aff5..945c5ded9e2 100644 --- a/addons/project/models/project.py +++ b/addons/project/models/project.py @@ -434,7 +434,8 @@ class Task(models.Model): default_partner = self.env['res.partner'].browse(default_partner_id) if default_partner_id else None if self.project_id: self.partner_id = self.project_id.partner_id or default_partner - self.stage_id = self.stage_find(self.project_id.id, [('fold', '=', False)]) + if self.project_id not in self.stage_id.project_ids: + self.stage_id = self.stage_find(self.project_id.id, [('fold', '=', False)]) else: self.partner_id = default_partner self.stage_id = False diff --git a/addons/project_issue/models/project_issue.py b/addons/project_issue/models/project_issue.py index 9b8373d000b..0a1c838e18f 100644 --- a/addons/project_issue/models/project_issue.py +++ b/addons/project_issue/models/project_issue.py @@ -132,7 +132,8 @@ class ProjectIssue(models.Model): if not self.partner_id and not self.email_from: self.partner_id = self.project_id.partner_id.id self.email_from = self.project_id.partner_id.email - self.stage_id = self.stage_find(self.project_id.id, [('fold', '=', False)]) + if self.project_id not in self.stage_id.project_ids: + self.stage_id = self.stage_find(self.project_id.id, [('fold', '=', False)]) else: self.partner_id = default_partner self.email_from = default_partner.email