userIds = $userIds; $this->contextId = $contextId; $this->subject = $subject; $this->body = $body; $this->fromEmail = $fromEmail; $this->fromName = $fromName; } public function handle() { $users = Repo::user() ->getCollector() ->filterByContextIds([$this->contextId]) ->filterByUserIds($this->userIds) ->getMany(); foreach ($users as $user) { $mailable = new Mailable(); $mailable ->from($this->fromEmail, $this->fromName) ->to($user->getEmail(), $user->getFullName()) ->subject($this->subject) ->body($this->body); Mail::send($mailable); } } }