fenil/eatcard-mail-companion

此包为eatcard子系统创建邮件服务。

1.0.0 2022-08-31 11:00 UTC

This package is auto-updated.

Last update: 2024-09-05 09:57:23 UTC


README

Eatcard Mail Companion


Packagist PHP Version Support Latest Version on Packagist

GitHub Workflow Status (branch) GitHub Tests Action Status GitHub Workflow Status

GitHub last commit GitHub Release Date

Total Downloads GitHub contributors GitHub

此辅助包将帮助我们的团队在统一位置管理通用功能和特性。

安装

您可以通过composer安装此包

composer require weboccult/eatcard-mail-companion

使用

use Weboccult\EatcardMailCompanion\Helpers\eatcardMailSend;

可用服务

  • 创建邮件:根据要求生成邮件模板
  • 发送邮件:通过Laravel Queue/Jobs发送邮件

辅助配置

以下是如何使用发布辅助配置文件来管理众多设置

php artisan eatcardMailcompanion:publish --type=config

它将eatcardMailCompanion.php发布到您的父项目中

基本使用

创建邮件

  • 有效载荷:用户要求
  • 主题:设置邮件主题
  • 收件人:用户电子邮件地址
  • 邮件类型:邮件类型(针对开发者)
  • 发件人姓名:邮件发送者姓名
  • 实体类型:邮件类型(获取数据的位置)
  • 实体ID:根据实体ID获取数据
  • 调度:在队列中调度邮件数据
  • 模板:直接将邮件模板发送给用户,不包含细节
  • 密送:额外的电子邮件地址
  • 抄送:额外的电子邮件地址
use Weboccult\EatcardMailCompanion\Helpers\eatcardMailSend;

eatcardMailSend()
    ->payload(['store_id' => $order['store_id'], 'recipient_type' => 'order.done'])
    ->subject(__('messages.takeaway_order_done_mail_sub') . ' ' . getDutchDate($order['order_date']))
    ->recipients($order['email'])
    ->bcc([])
    ->cc([])
    ->mailType('Order done mail from admin')
    ->fromName(env('MAIL_FROM_NAME'))
    ->template('Reservation create')
    ->entityType('order')
    ->entityId($order['id'])
    ->dispatch();

OR
use Weboccult\EatcardMailCompanion\EatcardMailCompanion;

EatcardMailCompanion::
    payload(['store_id' => $order['store_id'], 'recipient_type' => 'order.done'])
    ->subject(__('messages.takeaway_order_done_mail_sub') . ' ' . getDutchDate($order['order_date']))
    ->recipients($order['email'])
    ->bcc([])
    ->cc([])
    ->mailType('Order done mail from admin')
    ->fromName(env('MAIL_FROM_NAME'))
    ->template('Reservation create')
    ->entityType('order')
    ->entityId($order['id'])
    ->dispatch();
    

发送邮件

  • 从作业(SendMailJobs)发送邮件
  • 在成功发送邮件给用户后,在mongoDb数据库中创建邮件条目
  • 如果在邮件发送部分出现问题,则数据将移动到失败作业表