[IMP] mail_activity_team
This commit is contained in:
parent
589f0f7f38
commit
bd214206b6
@ -38,7 +38,7 @@ class MailActivity(models.Model):
|
|||||||
if self.team_id and self.user_id in self.team_id.member_ids:
|
if self.team_id and self.user_id in self.team_id.member_ids:
|
||||||
return res
|
return res
|
||||||
self.team_id = self.with_context(
|
self.team_id = self.with_context(
|
||||||
default_res_model=self.res_model_id.model
|
default_res_model=self.sudo().res_model_id.model
|
||||||
)._get_default_team_id(user_id=self.user_id.id)
|
)._get_default_team_id(user_id=self.user_id.id)
|
||||||
return res
|
return res
|
||||||
|
|
||||||
@ -86,9 +86,10 @@ class MailActivity(models.Model):
|
|||||||
|
|
||||||
@api.onchange("activity_type_id")
|
@api.onchange("activity_type_id")
|
||||||
def _onchange_activity_type_id(self):
|
def _onchange_activity_type_id(self):
|
||||||
super(MailActivity, self)._onchange_activity_type_id()
|
res = super(MailActivity, self)._onchange_activity_type_id()
|
||||||
if self.activity_type_id.default_team_id:
|
if self.activity_type_id.default_team_id:
|
||||||
self.team_id = self.activity_type_id.default_team_id
|
self.team_id = self.activity_type_id.default_team_id
|
||||||
members = self.activity_type_id.default_team_id.member_ids
|
members = self.activity_type_id.default_team_id.member_ids
|
||||||
if self.user_id not in members and members:
|
if self.user_id not in members and members:
|
||||||
self.user_id = members[:1]
|
self.user_id = members[:1]
|
||||||
|
return res
|
||||||
|
@ -69,7 +69,9 @@ class MailActivityMixin(models.AbstractModel):
|
|||||||
if user_id:
|
if user_id:
|
||||||
team = (
|
team = (
|
||||||
self.env["mail.activity"]
|
self.env["mail.activity"]
|
||||||
.with_context(default_res_model=self._name,)
|
.with_context(
|
||||||
|
default_res_model=self._name,
|
||||||
|
)
|
||||||
._get_default_team_id(user_id=user_id)
|
._get_default_team_id(user_id=user_id)
|
||||||
)
|
)
|
||||||
act_values.update({"team_id": team.id})
|
act_values.update({"team_id": team.id})
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
# Copyright 2018-22 ForgeFlow S.L.
|
# Copyright 2018-22 ForgeFlow S.L.
|
||||||
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
|
||||||
from odoo.exceptions import ValidationError
|
from odoo.exceptions import ValidationError
|
||||||
from odoo.tests.common import Form, SavepointCase
|
from odoo.tests.common import Form, TransactionCase
|
||||||
|
|
||||||
|
|
||||||
class TestMailActivityTeam(SavepointCase):
|
class TestMailActivityTeam(TransactionCase):
|
||||||
@classmethod
|
@classmethod
|
||||||
def setUpClass(cls):
|
def setUpClass(cls):
|
||||||
super().setUpClass()
|
super().setUpClass()
|
||||||
@ -251,7 +251,8 @@ class TestMailActivityTeam(SavepointCase):
|
|||||||
partner_record = self.employee.partner_id.with_user(self.employee.id)
|
partner_record = self.employee.partner_id.with_user(self.employee.id)
|
||||||
self.env.ref("mail.mail_activity_data_call").default_team_id = self.team2
|
self.env.ref("mail.mail_activity_data_call").default_team_id = self.team2
|
||||||
activity = partner_record.activity_schedule(
|
activity = partner_record.activity_schedule(
|
||||||
act_type_xmlid="mail.mail_activity_data_call", user_id=self.employee2.id,
|
act_type_xmlid="mail.mail_activity_data_call",
|
||||||
|
user_id=self.employee2.id,
|
||||||
)
|
)
|
||||||
self.assertEqual(activity.team_id, self.team2)
|
self.assertEqual(activity.team_id, self.team2)
|
||||||
self.assertEqual(activity.user_id, self.employee2)
|
self.assertEqual(activity.user_id, self.employee2)
|
||||||
@ -262,7 +263,9 @@ class TestMailActivityTeam(SavepointCase):
|
|||||||
partner_record = self.employee.partner_id.with_user(self.employee.id)
|
partner_record = self.employee.partner_id.with_user(self.employee.id)
|
||||||
self.activity2.default_team_id = self.team2
|
self.activity2.default_team_id = self.team2
|
||||||
self.team2.member_ids = self.employee2
|
self.team2.member_ids = self.employee2
|
||||||
activity = partner_record.activity_schedule(activity_type_id=self.activity2.id,)
|
activity = partner_record.activity_schedule(
|
||||||
|
activity_type_id=self.activity2.id,
|
||||||
|
)
|
||||||
self.assertEqual(activity.team_id, self.team2)
|
self.assertEqual(activity.team_id, self.team2)
|
||||||
self.assertEqual(activity.user_id, self.employee2)
|
self.assertEqual(activity.user_id, self.employee2)
|
||||||
|
|
||||||
@ -270,7 +273,7 @@ class TestMailActivityTeam(SavepointCase):
|
|||||||
res = (
|
res = (
|
||||||
self.env["res.users"]
|
self.env["res.users"]
|
||||||
.with_user(self.employee.id)
|
.with_user(self.employee.id)
|
||||||
.with_context({"team_activities": True})
|
.with_context(**{"team_activities": True})
|
||||||
.systray_get_activities()
|
.systray_get_activities()
|
||||||
)
|
)
|
||||||
self.assertEqual(res[0]["total_count"], 0)
|
self.assertEqual(res[0]["total_count"], 0)
|
||||||
@ -284,7 +287,7 @@ class TestMailActivityTeam(SavepointCase):
|
|||||||
res = (
|
res = (
|
||||||
self.env["res.users"]
|
self.env["res.users"]
|
||||||
.with_user(self.employee.id)
|
.with_user(self.employee.id)
|
||||||
.with_context({"team_activities": True})
|
.with_context(**{"team_activities": True})
|
||||||
.systray_get_activities()
|
.systray_get_activities()
|
||||||
)
|
)
|
||||||
self.assertEqual(res[0]["total_count"], 1)
|
self.assertEqual(res[0]["total_count"], 1)
|
||||||
@ -296,8 +299,7 @@ class TestMailActivityTeam(SavepointCase):
|
|||||||
self.activity1.write(
|
self.activity1.write(
|
||||||
{
|
{
|
||||||
"default_team_id": self.team1.id,
|
"default_team_id": self.team1.id,
|
||||||
"default_next_type_id": self.activity2.id,
|
"triggered_next_type_id": self.activity2.id,
|
||||||
"force_next": True,
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
self.activity2.default_team_id = self.team2
|
self.activity2.default_team_id = self.team2
|
||||||
|
Loading…
Reference in New Issue
Block a user