SendOrderToCustomerMailable.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace App\Mail;
  3. use App\Shop\Addresses\Transformations\AddressTransformable;
  4. use App\Shop\Orders\Order;
  5. use Illuminate\Bus\Queueable;
  6. use Illuminate\Mail\Mailable;
  7. use Illuminate\Queue\SerializesModels;
  8. use Illuminate\Contracts\Queue\ShouldQueue;
  9. class SendOrderToCustomerMailable extends Mailable
  10. {
  11. use Queueable, SerializesModels, AddressTransformable;
  12. public $order;
  13. /**
  14. * Create a new message instance.
  15. *
  16. * @param Order $order
  17. */
  18. public function __construct(Order $order)
  19. {
  20. $this->order = $order;
  21. }
  22. /**
  23. * Build the message.
  24. *
  25. * @return $this
  26. */
  27. public function build()
  28. {
  29. $data = [
  30. 'order' => $this->order,
  31. 'products' => $this->order->products,
  32. 'customer' => $this->order->customer,
  33. 'courier' => $this->order->courier,
  34. 'address' => $this->order->address,
  35. 'status' => $this->order->orderStatus,
  36. 'payment' => $this->order->paymentMethod
  37. ];
  38. return $this->view('emails.customer.sendOrderDetailsToCustomer', $data);
  39. }
  40. }