Skip to content

Commit

Permalink
[IMP] Set team responsible as default user when activity is created
Browse files Browse the repository at this point in the history
  • Loading branch information
AdriaGForgeFlow committed Dec 24, 2018
1 parent 2043e3e commit cf57f33
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 6 deletions.
6 changes: 3 additions & 3 deletions mail_activity_team/models/mail_activity.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,11 @@ def _onchange_team_id(self):
if not self.team_id:
return res
res['domain']['user_id'] = [('id', 'in', self.team_id.member_ids.ids)]
if self.user_id and self.user_id in self.team_id.member_ids:
return res
if self.team_id.user_id:
self.user_id = self.team_id.user_id
elif self.env.user in self.team_id.member_ids.ids:
elif len(self.team_id.member_ids.ids) == 1:
self.user_id = self.team_id.member_ids
elif self.env.user.id in self.team_id.member_ids.ids:
self.user_id = self.env.user
else:
self.user_id = self.env['res.users']
Expand Down
8 changes: 7 additions & 1 deletion mail_activity_team/models/mail_activity_team.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,6 @@ def _compute_missing_activities(self):
user_id = fields.Many2one(
comodel_name='res.users',
string='Team Leader',
domain="[('id', 'in', member_ids)]",
)
count_missing_activities = fields.Integer(
string="Missing Activities",
Expand All @@ -59,6 +58,13 @@ def _onchange_member_ids(self):
if self.user_id and self.user_id not in self.member_ids:
self.user_id = False

@api.onchange('user_id')
def _onchange_user_id(self):
if self.user_id and self.user_id not in self.member_ids:
members_ids = self.member_ids.ids
members_ids.append(self.user_id.id)
self.member_ids = [(4, member) for member in members_ids]

def assign_team_to_unassigned_activities(self):
activity_model = self.env['mail.activity']
for team in self:
Expand Down
2 changes: 1 addition & 1 deletion mail_activity_team/tests/test_mail_activity_team.py
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ def test_activity_onchanges(self):
self.assertEqual(self.act2.team_id, self.team2)
self.act2.team_id = self.team1
self.act2._onchange_team_id()
self.assertFalse(self.act2.user_id)
self.assertEqual(self.act2.user_id, self.team1.member_ids)
with self.assertRaises(ValidationError):
self.act2.write({
'user_id': self.employee2.id,
Expand Down
2 changes: 1 addition & 1 deletion mail_activity_team/views/mail_activity_team_views.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
<group>
<group name="base">
<field name="name"/>
<field name="user_id" attrs="{'invisible': [('member_ids', '=', [])]}"/>
<field name="user_id"/>
</group>
<group name="models">
<field name="res_model_ids" widget="many2many_tags"
Expand Down

0 comments on commit cf57f33

Please sign in to comment.