SendEmail.php 1018 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace App\Jobs;
  3. use Illuminate\Bus\Queueable;
  4. use Illuminate\Contracts\Queue\ShouldQueue;
  5. use Illuminate\Foundation\Bus\Dispatchable;
  6. use Illuminate\Queue\InteractsWithQueue;
  7. use Illuminate\Queue\SerializesModels;
  8. use Illuminate\Support\Facades\Mail;
  9. class SendEmail implements ShouldQueue
  10. {
  11. use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
  12. protected $params;
  13. /**
  14. * Create a new job instance.
  15. *
  16. * @return void
  17. */
  18. public function __construct($params)
  19. {
  20. $this->params = $params;
  21. }
  22. /**
  23. * Execute the job.
  24. *
  25. * @return void
  26. */
  27. public function handle()
  28. {
  29. $params = $this->params;
  30. $email = $params['email'];
  31. $subject = $params['subject'];
  32. Mail::send(
  33. $params['template_name'],
  34. $params['template_value'],
  35. function ($message) use($email, $subject) {
  36. $message->to($email)->subject($subject);
  37. }
  38. );
  39. }
  40. }