<?php
namespace App\Mail;
use App\Models\Order;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
class OrderShipped extends Mailable
{
use Queueable, SerializesModels;
/**
* The order instance.
*
* @var \App\Models\Order
*/
protected $order;
/**
* Create a new message instance.
*
* @param \App\Models\Order $order
* @return void
*/
public function __construct(Order $order)
{
$this->order = $order;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
// if only 1 file
return $this->view('emails.orders.shipped')->attach($this->order['invoice']);
// if multiple files then i use this code
return $this->view('emails.orders.shipped');
foreach ($this->order['invoice'] as $file){
$this->attach($file);
}
}
}
// Please do comment if you have a better approach
// We all here to find shorter and faster way to get things done
// Thank you