fix email send

This commit is contained in:
ivan deng
2023-05-09 18:35:56 +08:00
parent 67ef0b1255
commit b7cee34c4b
4 changed files with 21 additions and 3 deletions

View File

@@ -33,7 +33,7 @@
{
'name': "Sunpop Odooapp Common Func",
'version': '16.23.05.04',
'version': '16.23.05.09',
'author': 'Sunpop.cn',
'category': 'Base',
'website': 'https://www.sunpop.cn',
@@ -63,7 +63,7 @@
5. Odoo 16, 企业版,社区版,多版本支持
''',
'depends': [
'base',
'mail',
'web',
],
'data': [

View File

@@ -27,5 +27,7 @@ from . import ir_ui_view
from . import ir_cron
from . import res_users
from . import ir_mail_server
from . import mail_mail

View File

@@ -18,7 +18,7 @@ class IrMailServer(models.Model):
email_to = message['To']
# 忽略掉无效email避免被ban
if email_to.index('example.com') != -1 or email_to.index('@sunpop.cn') != -1 or email_to.index('@odooapp.cn') != -1:
if email_to.find('example.com') != -1 or email_to.find('@sunpop.cn') != -1 or email_to.find('@odooapp.cn') != -1:
_logger.error(_("=================Email to ignore: %s") % email_to)
raise AssertionError(_("Email to ignore: %s") % email_to)

View File

@@ -0,0 +1,16 @@
# -*- coding: utf-8 -*-
from odoo import api, fields, models, _
import logging
_logger = logging.getLogger(__name__)
class MailMail(models.Model):
_inherit = "mail.mail"
# 猴子补丁模式,改默认发邮件逻辑
def _send(self, auto_commit=False, raise_exception=False, smtp_session=None):
for m in self:
if m.email_to and (m.email_to.find('example.com') != -1 or m.email_to.find('@sunpop.cn') != -1 or m.email_to.find('@odooapp.cn') != -1):
self = self - m
return super(MailMail, self)._send(auto_commit, raise_exception, smtp_session)