StocksNew/app/Notifications/HrActionNotification.php

65 lines
1.4 KiB
PHP
Raw Normal View History

2024-08-27 12:03:06 +00:00
<?php
namespace App\Notifications;
use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Messages\MailMessage;
use Illuminate\Notifications\Notification;
class HrActionNotification extends Notification
{
use Queueable;
protected $actionType;
protected $model;
protected $message;
/**
* Create a new notification instance.
*/
public function __construct($actionType, $model, $message)
{
$this->actionType = $actionType;
$this->model = $model;
$this->message = $message;
}
/**
* Get the notification's delivery channels.
*
* @return array<int, string>
*/
public function via(object $notifiable): array
{
return ['mail', 'database'];
}
/**
* Get the mail representation of the notification.
*/
public function toMail(object $notifiable): MailMessage
{
return (new MailMessage)
->subject('HR Notification')
->view('emails.email_template', [
'actionType' => $this->actionType,
'model' => $this->model,
]);
}
/**
* Get the array representation of the notification.
*
* @return array<string, mixed>
*/
public function toArray(object $notifiable): array
{
return [
'action_type' => $this->actionType,
'model' => $this->model,
'msg' => $this->message,
];
}
}