diff --git a/app/Http/Controllers/AutoController.php b/app/Http/Controllers/AutoController.php index b7e7c0f..87eca38 100644 --- a/app/Http/Controllers/AutoController.php +++ b/app/Http/Controllers/AutoController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; +use App\Http\Controllers\QrController; class AutoController extends Controller { @@ -110,6 +111,7 @@ class AutoController extends Controller 'created_at' => $request->created_at ?? now(), 'updated_at' => now(), ]); + QrController::generateQr($id, 'auto_'); return redirect()->route('auto.show', $id); } diff --git a/app/Http/Controllers/EstateController.php b/app/Http/Controllers/EstateController.php index e9fe76a..a241c2c 100644 --- a/app/Http/Controllers/EstateController.php +++ b/app/Http/Controllers/EstateController.php @@ -4,6 +4,7 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; +use App\Http\Controllers\QrController; class EstateController extends Controller { @@ -93,6 +94,7 @@ class EstateController extends Controller 'created_at' => $request->created_at ?? now(), 'updated_at' => now(), ]); + QrController::generateQr($id, 'estate_'); return redirect()->route('estate.show', $id); } diff --git a/app/Http/Controllers/QrController.php b/app/Http/Controllers/QrController.php index bd70144..b3b0426 100644 --- a/app/Http/Controllers/QrController.php +++ b/app/Http/Controllers/QrController.php @@ -3,6 +3,8 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; +use Illuminate\Support\Facades\Storage; +use SimpleSoftwareIO\QrCode\Facades\QrCode; class QrController extends Controller { @@ -13,6 +15,17 @@ class QrController extends Controller public function reGenerate($id, $type) { + self::generateQr($id, $type); return redirect()->back(); } + + public static function generateQr($id, $type) + { + // type is 'auto_' or 'estate_' + $url = url(($type === 'auto_' ? 'auto' : 'estate') . '/show/' . $id); + $dir = 'public/attachments/' . $type . $id; + Storage::makeDirectory($dir); + $qr = QrCode::format('png')->size(200)->generate($url); + Storage::put($dir . '/qr.png', $qr); + } }