fix: [daily-work-log] 파일 저장 정책 준수 (docs 기준)
- 경로: {tenant_id}/daily-work-log/{year}/{month}/{hex}.ext 형식으로 변경
- 파일명: UUID → 64bit 난수 hex (bin2hex(random_bytes(8)))
- 최대 크기: 10MB → 20MB (file-storage-guide.md 기준)
This commit is contained in:
@@ -9,7 +9,6 @@
|
||||
use Illuminate\Http\JsonResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use Illuminate\Support\Str;
|
||||
|
||||
class DailyWorkLogController extends Controller
|
||||
{
|
||||
@@ -201,7 +200,7 @@ public function uploadFile(Request $request): JsonResponse
|
||||
$request->validate([
|
||||
'log_date' => 'required|date',
|
||||
'field_key' => 'required|in:memo,reflection',
|
||||
'file' => 'required|file|max:10240',
|
||||
'file' => 'required|file|max:20480',
|
||||
]);
|
||||
|
||||
$tenantId = session('selected_tenant_id', 1);
|
||||
@@ -212,9 +211,10 @@ public function uploadFile(Request $request): JsonResponse
|
||||
);
|
||||
|
||||
$file = $request->file('file');
|
||||
$storedName = Str::uuid().'.'.$file->getClientOriginalExtension();
|
||||
$basePath = "daily-work-log/{$tenantId}/{$log->id}";
|
||||
$filePath = "{$basePath}/{$storedName}";
|
||||
$storedName = bin2hex(random_bytes(8)).'.'.$file->getClientOriginalExtension();
|
||||
$year = date('Y');
|
||||
$month = date('m');
|
||||
$filePath = "{$tenantId}/daily-work-log/{$year}/{$month}/{$storedName}";
|
||||
|
||||
Storage::disk('tenant')->put($filePath, file_get_contents($file));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user