40 lines
1.3 KiB
PHP
40 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace Modules\Taxi\App\Mail;
|
|
|
|
use Modules\Taxi\App\DTO\TaxiOrderDTO;
|
|
use App\Mail\BaseMailerObj;
|
|
|
|
/**
|
|
* Класс формирования объекта с данными для передачи в джобу отправки письма. Наследует базовый класс отправки письма по такси, где объвляется обязательный метод
|
|
*/
|
|
class NewOrderMail extends BaseTaxiMail
|
|
{
|
|
public function __construct(
|
|
public TaxiOrderDTO $orderData,
|
|
public ?int $orderId)
|
|
{
|
|
}
|
|
|
|
/**
|
|
* Метод подготавливает данные письма для передачи в джобу
|
|
*
|
|
* @return BaseMailerObj
|
|
*/
|
|
public function prepareDataForMail(): BaseMailerObj
|
|
{
|
|
return new BaseMailerObj(
|
|
[$this->orderData->emp_login],
|
|
"Создана заявка на такси",
|
|
"Для вас создана заявка на такси № {$this->orderId}:
|
|
<ul>
|
|
<li><b>Дата:</b> {$this->orderData->taxi_date}</li>
|
|
<li><b>Время:</b> {$this->orderData->taxi_time}</li>
|
|
<li><b>Откуда:</b> {$this->orderData->taxi_address_from}</li>
|
|
<li><b>Куда:</b> {$this->orderData->taxi_address_to}</li>
|
|
</ul>",
|
|
config('taxi.name_ru'),
|
|
);
|
|
}
|
|
}
|