Files
ProxyPanel/app/Mail/replyTicket.php
2020-11-16 16:44:45 +08:00

41 lines
1011 B
PHP

<?php
namespace App\Mail;
use App\Models\NotificationLog;
use Exception;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
class replyTicket extends Mailable implements ShouldQueue
{
use Queueable, SerializesModels;
protected $id; // 邮件记录ID
protected $title; // 工单标题
protected $content; // 工单内容
public function __construct($id, $title, $content)
{
$this->id = $id;
$this->title = $title;
$this->content = $content;
}
public function build(): replyTicket
{
return $this->view('emails.replyTicket')->subject('工单回复提醒')->with([
'title' => $this->title,
'content' => $this->content,
]);
}
// 发件失败处理
public function failed(Exception $e): void
{
NotificationLog::whereId($this->id)->update(['status' => -1, 'error' => $e->getMessage()]);
}
}