Odoo 10 - 创建销售订单或发票时的电子邮件通知

Odoo 10 - Email notifications when Sales Order or Invoices are created

当用户 A 以用户 B 作为客户经理创建销售订单时,将发送以下电子邮件:

Dear User B,
You have been assigned to the sales order SO-0058.
<View sales order>
Powered by Odoo.

创建发票时会发送类似的电子邮件。

这个模板在哪里可以修改? 有什么方法可以全局禁用此内部通知吗?

您可以在模块 mail、文件夹 views、文件 mail_templates.xml.

中找到该通知

您要查找的模板的 XML ID 是 message_user_assigned

在同一模块、文件夹 models、文件 mail_thread.py 中,有发送该通知的操作:

@api.multi
def _message_auto_subscribe_notify(self, partner_ids):
    """ Notify newly subscribed followers of the last posted message.
        :param partner_ids : the list of partner to add as needaction partner of the last message
                                (This excludes the current partner)
    """
    if not partner_ids:
        return

    if self.env.context.get('mail_auto_subscribe_no_notify'):
        return

    # send the email only to the current record and not all the ids matching active_domain !
    # by default, send_mail for mass_mail use the active_domain instead of active_ids.
    if 'active_domain' in self.env.context:
        ctx = dict(self.env.context)
        ctx.pop('active_domain')
        self = self.with_context(ctx)

    for record in self:
        record.message_post_with_view(
            'mail.message_user_assigned',
            composition_mode='mass_mail',
            partner_ids=[(4, pid) for pid in partner_ids],
            auto_delete=True,
            auto_delete_message=True,
            parent_id=False, # override accidental context defaults
            subtype_id=self.env.ref('mail.mt_note').id)

在您的案例中执行此操作是因为 sale.orderaccount.invoice 模型继承自 mail.thread:

class AccountInvoice(models.Model):
    _name = "account.invoice"
    _inherit = ['mail.thread']
    _description = "Invoice"
    _order = "date_invoice desc, number desc, id desc"

我不建议您删除 _inherit。我认为最好覆盖 _message_auto_subscribe_notify 方法来检查活动模型,如果这是 sale.orderaccount.invoice.

则什么都不做

您不需要开发任何东西。这是 Odoo 内部的用户配置。

Settings -> Technical -> Subtypes

此致