ldc-supportweb/app/Events/TicketStatusChanged.php
2023-08-14 09:23:39 +00:00

62 lines
1.6 KiB
PHP

<?php
namespace App\Events;
use App\Enums\Tickets\TicketStatusEnum;
use App\Models\Ticket;
use App\Models\User;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;
class TicketStatusChanged
{
use Dispatchable;
use InteractsWithSockets;
use SerializesModels;
/** @var \App\Models\Site */
public $ticket;
/** @var \App\Models\User */
public $user;
/** @var \App\Enums\Tickets\TicketStatusEnum */
public $status;
/** @var string */
public $message;
/** @var boolean */
public $is_private;
/** @var boolean */
public $status_changed;
/**
* Create a new event instance.
*
* @param \App\Models\Ticket $ticket
* @param \App\Enums\Tickets\TicketStatusEnum $status
* @param \App\Models\User|null $user
* @param string|null $message
* @param boolean $is_private
* @param boolean $status_changed
* @return void
*/
public function __construct(
Ticket $ticket,
TicketStatusEnum $status,
User $user = null,
string $message = null,
bool $is_private = false,
bool $status_changed = true
) {
$this->ticket = $ticket;
$this->status = $status;
$this->user = $user;
$this->message = $message;
$this->is_private = $is_private;
$this->status_changed = $status_changed;
}
}