Files
expense/app/Mail/ExpenseApproved.php
2025-03-05 13:44:58 +07:00

64 lines
1.5 KiB
PHP

<?php
namespace App\Mail;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Mail\Mailables\Content;
use Illuminate\Mail\Mailables\Envelope;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\View;
class ExpenseApproved extends Mailable
{
use Queueable, SerializesModels;
public function __construct(
protected string $name,
protected string $expense_number,
protected string $tanggal,
protected int $total,
protected string $url,
) {}
public function envelope(): Envelope
{
return new Envelope(
subject: 'Expense First Approval',
);
}
public function content(): Content
{
return new Content(
view: 'mail.approved',
with: [
'name' => $this->name,
'expense_number' => $this->expense_number,
'tanggal' => $this->tanggal,
'total' => $this->total,
'url' => $this->url,
],
);
}
public function attachments(): array
{
return [];
}
/**
* Render the Blade email template as HTML string (for Brevo API).
*/
public function renderHtml(): string
{
return View::make('mail.approved', [
'name' => $this->name,
'expense_number' => $this->expense_number,
'tanggal' => $this->tanggal,
'total' => $this->total,
'url' => $this->url,
])->render();
}
}