/
marklis
/
transport
Обзор
Документация
Войти
/
marklis
/
transport
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
app/Http/Controllers/QrCodeController.php
73 строки
2 KB
Мамонов Алексей Анатольевич
Рефакторинг
11 июл 2024, 16:28
11 июл 2024, 16:28
a7e2780
Код
Авторство
О чём код?
<?php namespace App\Http\Controllers; use App\Contracts\Services\QrCodeServiceContract; use Illuminate\Http\Request; use Inertia\{Inertia, Response as InertiaResponse}; class QrCodeController extends BaseController { protected QrCodeServiceContract $service; public function __construct(QrCodeServiceContract $qrCodeService) { $this->service = $qrCodeService; } public function show(Request $request): InertiaResponse { return Inertia::render('QrCode/Show', [ 'qrCodeImage' => $this->service->generateQrCodeWithBase64($request->input('data')), 'token' => csrf_token(), 'rights' => $this->getRights(), 'routes' => [ 'generateQrCode' => route('qrCode.generate'), ] ]); } public function scan(Request $request): InertiaResponse { return Inertia::render('QrCode/Scan', [ 'id' => $request->input('id'), 'phase' => $request->input('phase'), 'appUrl' => config('app.url') ]); } public function create(): InertiaResponse { return Inertia::render('QrCode/Create', [ 'token' => csrf_token(), 'rights' => $this->getRights(), 'routes' => [ 'downloadQrCode' => route('qrCode.download'), ] ]); } public function createAndShow(): InertiaResponse { return Inertia::render('QrCode/CreateAndShow', [ 'token' => csrf_token(), 'rights' => $this->getRights(), 'routes' => [ 'generateQrCode' => route('qrCode.generate'), ] ]); } public function generate(Request $request) { return $this->service->generateQrCodeWithBase64($request->input('auto_number')); } public function download(Request $request) { return $this->service->generateAndDownloadQrCode( config('app.url') . '/trips/enterPin?auto_number=' . $request->input('auto_number') ); } }