2018-07-18 19:15:45 -07:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace App\Notifications;
|
|
|
|
|
|
|
|
use Illuminate\Bus\Queueable;
|
2018-09-26 14:07:41 -07:00
|
|
|
use Illuminate\Notifications\Messages\MailMessage;
|
2019-03-13 20:12:03 -07:00
|
|
|
use Illuminate\Notifications\Notification;
|
2018-07-18 19:15:45 -07:00
|
|
|
|
|
|
|
class InventoryAlert extends Notification
|
|
|
|
{
|
|
|
|
use Queueable;
|
|
|
|
/**
|
|
|
|
* @var
|
|
|
|
*/
|
|
|
|
private $params;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Create a new notification instance.
|
|
|
|
*
|
|
|
|
* @param $params
|
|
|
|
*/
|
|
|
|
public function __construct($params, $threshold)
|
|
|
|
{
|
|
|
|
$this->items = $params;
|
|
|
|
$this->threshold = $threshold;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the notification's delivery channels.
|
|
|
|
*
|
|
|
|
* @return array
|
|
|
|
*/
|
2020-05-23 11:56:56 -07:00
|
|
|
public function via()
|
2018-07-18 19:15:45 -07:00
|
|
|
{
|
2023-02-06 12:41:54 -08:00
|
|
|
$notifyBy = ['mail'];
|
2018-09-26 14:07:41 -07:00
|
|
|
|
2018-07-18 19:15:45 -07:00
|
|
|
return $notifyBy;
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Get the mail representation of the notification.
|
|
|
|
*
|
|
|
|
* @return \Illuminate\Notifications\Messages\MailMessage
|
|
|
|
*/
|
2020-05-23 11:56:56 -07:00
|
|
|
public function toMail()
|
2018-07-18 19:15:45 -07:00
|
|
|
{
|
2018-09-26 14:07:41 -07:00
|
|
|
$message = (new MailMessage)->markdown(
|
|
|
|
'notifications.markdown.report-low-inventory',
|
2018-07-18 19:15:45 -07:00
|
|
|
[
|
|
|
|
'items' => $this->items,
|
|
|
|
'threshold' => $this->threshold,
|
2018-09-26 14:07:41 -07:00
|
|
|
]
|
|
|
|
)
|
2018-07-18 19:15:45 -07:00
|
|
|
->subject(trans('mail.Low_Inventory_Report'));
|
|
|
|
|
|
|
|
return $message;
|
|
|
|
}
|
|
|
|
}
|