afterCommit(); } /** @return list */ public function via(object $notifiable): array { return ['mail', 'database']; } public function toMail(object $notifiable): MailMessage { $template = app(NotificationTemplateService::class)->render($this->event, $this->reservation); return (new MailMessage) ->subject($template['subject']) ->greeting($this->event === 'information_provided' ? 'O requisitante respondeu ao pedido de esclarecimentos' : 'Nova requisição para aprovação') ->line($template['message']) ->action('Analisar requisição', url('/aprovacoes')); } /** @return array */ public function toArray(object $notifiable): array { $template = app(NotificationTemplateService::class)->render($this->event, $this->reservation); return [ 'reservation_uuid' => $this->reservation->uuid, 'reference' => $this->reservation->reference, 'event' => $this->event, 'message' => $template['message'], 'url' => '/aprovacoes', ]; } }