diff --git a/app/Http/Controllers/Video/Veo3Controller.php b/app/Http/Controllers/Video/Veo3Controller.php index 2679ad94..ec398278 100644 --- a/app/Http/Controllers/Video/Veo3Controller.php +++ b/app/Http/Controllers/Video/Veo3Controller.php @@ -231,9 +231,27 @@ public function destroy(Request $request): JsonResponse 'ids.*' => 'integer', ]); - $deleted = VideoGeneration::where('user_id', auth()->id()) + $videos = VideoGeneration::where('user_id', auth()->id()) ->whereIn('id', $request->input('ids')) - ->delete(); + ->get(); + + $deleted = 0; + foreach ($videos as $video) { + // 로컬 작업 디렉토리 삭제 (클립, 나레이션, 최종 영상 등) + $workDir = storage_path("app/video_gen/{$video->id}"); + if (is_dir($workDir)) { + $files = glob("{$workDir}/*"); + foreach ($files as $file) { + if (is_file($file)) { + @unlink($file); + } + } + @rmdir($workDir); + } + + $video->delete(); + $deleted++; + } return response()->json([ 'success' => true,