65 lines
1.5 KiB
PHP
65 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace App\Mail;
|
|
|
|
use Illuminate\Bus\Queueable;
|
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
|
use Illuminate\Mail\Mailable;
|
|
use Illuminate\Mail\Mailables\Content;
|
|
use Illuminate\Mail\Mailables\Envelope;
|
|
use Illuminate\Queue\SerializesModels;
|
|
|
|
class OrderReceipt extends Mailable
|
|
{
|
|
use Queueable, SerializesModels;
|
|
|
|
public $cartItems;
|
|
public $cartTotal;
|
|
public ?array $mejaDetail = null; // Ini akan menerima array dari Firebase
|
|
|
|
/**
|
|
* Create a new message instance.
|
|
*/
|
|
public function __construct($cartItems, $cartTotal, ?array $mejaDetail = null)
|
|
{
|
|
$this->cartItems = $cartItems;
|
|
$this->cartTotal = $cartTotal;
|
|
$this->mejaDetail = $mejaDetail;
|
|
}
|
|
|
|
/**
|
|
* Get the message envelope.
|
|
*/
|
|
public function envelope(): Envelope
|
|
{
|
|
return new Envelope(
|
|
subject: 'Detail Pesanan Anda di DFOOD',
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Get the message content definition.
|
|
*/
|
|
public function content(): Content
|
|
{
|
|
return new Content(
|
|
markdown: 'emails.orders.receipt', // Ini menunjuk ke view Markdown
|
|
with: [
|
|
'cartItems' => $this->cartItems,
|
|
'cartTotal' => $this->cartTotal,
|
|
'meja' => $this->mejaDetail, // Kirim array detail meja ke view email
|
|
],
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Get the attachments for the message.
|
|
*
|
|
* @return array<int, \Illuminate\Mail\Mailables\Attachment>
|
|
*/
|
|
public function attachments(): array
|
|
{
|
|
return [];
|
|
}
|
|
}
|