[FIX] sales_team: allow to pass False as default saleteam
Before this fix, sales_team.team_sales_department was always used ignoring default_ in context. Now we check before in context if a default sale team is forced. We allow False as saleteam, eg you assign a lead to a employee who is not a saleman. Now we check that the default saleteam sales_team.team_sales_department is configured to use_leads to avoid undefined saleteam in the front end.
This commit is contained in:
@@ -15,13 +15,15 @@ class CrmTeam(models.Model):
|
||||
def _get_default_team_id(self, user_id=None):
|
||||
if not user_id:
|
||||
user_id = self.env.uid
|
||||
team_id = self.env['crm.team'].search([
|
||||
'|',
|
||||
('user_id', '=', user_id),
|
||||
('member_ids', 'in', [user_id])],
|
||||
limit=1) or self.env.ref('sales_team.team_sales_department', raise_if_not_found=False)
|
||||
if not team_id and self.env.context.get('default_team_id'):
|
||||
team_id = self.env['crm.team'].search(
|
||||
['|', ('user_id', '=', user_id), ('member_ids', 'in', [user_id])],
|
||||
limit=1)
|
||||
if not team_id and 'default_team_id' in self.env.context:
|
||||
team_id = self.env['crm.team'].browse(self.env.context.get('default_team_id'))
|
||||
if not team_id and 'default_team_id' not in self.env.context:
|
||||
default_team_id = self.env.ref('sales_team.team_sales_department', raise_if_not_found=False)
|
||||
if default_team_id and (self.env.context.get('default_type') != 'lead' or default_team_id.use_leads):
|
||||
team_id = default_team_id
|
||||
return team_id
|
||||
|
||||
name = fields.Char('Sales Team', required=True, translate=True)
|
||||
|
||||
Reference in New Issue
Block a user