59 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
namespace App\Notifications;
 | 
						|
 | 
						|
use Illuminate\Bus\Queueable;
 | 
						|
use Illuminate\Notifications\Messages\MailMessage;
 | 
						|
use Illuminate\Notifications\Notification;
 | 
						|
 | 
						|
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
 | 
						|
     */
 | 
						|
    public function via()
 | 
						|
    {
 | 
						|
        $notifyBy = ['mail'];
 | 
						|
 | 
						|
        return $notifyBy;
 | 
						|
    }
 | 
						|
 | 
						|
    /**
 | 
						|
     * Get the mail representation of the notification.
 | 
						|
     *
 | 
						|
     * @return \Illuminate\Notifications\Messages\MailMessage
 | 
						|
     */
 | 
						|
    public function toMail()
 | 
						|
    {
 | 
						|
        $message = (new MailMessage)->markdown(
 | 
						|
            'notifications.markdown.report-low-inventory',
 | 
						|
            [
 | 
						|
                'items'  => $this->items,
 | 
						|
                'threshold'  => $this->threshold,
 | 
						|
            ]
 | 
						|
        )
 | 
						|
            ->subject(trans('mail.Low_Inventory_Report'));
 | 
						|
 | 
						|
        return $message;
 | 
						|
    }
 | 
						|
}
 |