status != DealStatus::UNIQUE) { //throw new \Exception('Notification sending: deal is not unique'); } $this->deal = $deal; } /** * Get the notification's delivery channels. * * @return array */ public function via(object $notifiable): array { return ['database']; } /** * Get the mail representation of the notification. */ public function toMail(object $notifiable): MailMessage { return (new MailMessage) ->from(env('MAIL_FROM_ADDRESS'), config('app.name', 'Партнерский кабинет')) ->line('The introduction to the notification.') ->action('Notification Action', url('/')) ->line('Thank you for using our application!'); } /** * Get the array representation of the notification. * * @return array */ public function toArray(object $notifiable): array { $clientsPhones = $this->deal->clients->pluck('phone')->toArray(); $clientsNames = $this->deal->clients->pluck('name')->toArray(); foreach ($clientsNames as $key=>$name) { $clientsNames[$key] = $name . ' ' . $clientsPhones[$key] .''; } return [ 'deal' => $this->deal->id, 'text' => __('notifications.' . get_class($this), [ 'contact' => implode(', ', $clientsNames), 'complex' => $this->deal->complex->name, ]) ]; } }