complete Complete User Request Submission section RAD-1

This commit is contained in:
2026-01-03 19:14:30 +03:30
commit 7137ec5792
393 changed files with 152602 additions and 0 deletions
@@ -0,0 +1,63 @@
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Models\Medium;
use App\Services\FileStorageService;
use Illuminate\Http\Request;
use Inertia\Inertia;
class MediumController extends Controller
{
protected FileStorageService $fileStorageService;
public function __construct(FileStorageService $fileStorageService)
{
$this->fileStorageService = $fileStorageService;
}
public function index()
{
$medium = Medium::latest()->paginate(15);
return Inertia::admin('Medium', [
'medium' => $medium
]);
}
public function store(Request $request)
{
$request->validate([
'file' => 'required|max:20240',
]);
$file = $request->file('file');
$fileRecord = $this->fileStorageService->storeFile($file, 'public', 'media');
return response()->json($fileRecord);
}
public function destroy(Medium $media)
{
$this->fileStorageService->deleteMedium($media);
$media->delete();
return redirect()->back()->with('success', 'فایل مورد نظر با موفقیت حذف شد.');
}
public function getMedium()
{
$medium = Medium::latest()->paginate(15);
return response()->json($medium);
}
public function download(Medium $media)
{
return $this->fileStorageService->downloadFile($media);
}
public function serve(Medium $media)
{
return $this->fileStorageService->serveFile($media);
}
}