Another attempt at single ticket per email.

This commit is contained in:
Marc Durepos 2023-11-08 10:12:39 -05:00
parent c7a11c8a08
commit e2c7293bd0
2 changed files with 11 additions and 11 deletions

View file

@ -24,7 +24,7 @@
'author': 'Bemade Inc.',
'website': 'http://www.bemade.org',
'license': 'OPL-1',
'depends': ['helpdesk'],
'depends': ['mail'],
'data': [],
'installable': True,
'auto_install': False

View file

@ -1,17 +1,17 @@
from odoo import models, fields, api, _
import logging
_logger = logging.getLogger(__name__)
class MailThread(models.AbstractModel):
_inherit = 'mail.thread'
@api.model
def message_route(self, message, message_dict, model=None, thread_id=None, custom_values=None):
res = super().message_route(message, message_dict, model, thread_id, custom_values)
main_route = None
for tuple in res:
if tuple[0] in ('helpdesk.team', 'helpdesk.ticket'):
if not main_route:
main_route = tuple
else:
res.remove(tuple)
return res
def _message_route_process(self, message, message_dict, routes):
helpdesk_routes = [r for r in routes if r[0] in ('helpdesk.ticket', 'helpdesk.team')]
if len(helpdesk_routes) > 1:
_logger.info("Messages contained multiple helpdesk routes. Only the first one will be used.")
helpdesk_routes.remove(0)
routes.remove(helpdesk_routes)
return super()._message_route_process(message, message_dict, routes)