From f807a635bb7f08393f1be52f27680fe12eacbd73 Mon Sep 17 00:00:00 2001 From: Joseph Date: Thu, 27 Mar 2025 17:18:53 +0700 Subject: [PATCH] update logic upload file --- .../Http/Controllers/ProfileController.php | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/BACKEND/Modules/Admin/app/Http/Controllers/ProfileController.php b/BACKEND/Modules/Admin/app/Http/Controllers/ProfileController.php index e1c812e..a69bdcb 100644 --- a/BACKEND/Modules/Admin/app/Http/Controllers/ProfileController.php +++ b/BACKEND/Modules/Admin/app/Http/Controllers/ProfileController.php @@ -374,6 +374,10 @@ class ProfileController extends Controller public function getFiles() { try { + // Lấy tất cả users + $users = Admin::all(); + + // Lấy files và map theo cấu trúc $files = Files::with('user')->get() ->map(function($file) { return [ @@ -388,10 +392,10 @@ class ProfileController extends Controller ]; }); - // Gom nhóm files theo tên user - $groupedFiles = $files->groupBy('user_name') - ->map(function($files) { - return $files->map(function(array $file) { + // Tạo mảng kết quả với tất cả users, không có file thì mảng rỗng + $result = $users->pluck('name')->mapWithKeys(function($userName) use ($files) { + $userFiles = $files->where('user_name', $userName) + ->map(function($file) { return (object)[ 'id' => $file['id'], 'name' => $file['name'], @@ -401,12 +405,14 @@ class ProfileController extends Controller 'created_at' => $file['created_at'], 'user_id' => $file['user_id'] ]; - }); - }); + })->values(); + + return [$userName => $userFiles]; + }); return response()->json([ 'status' => true, - 'data' => $groupedFiles + 'data' => $result ]); } catch (\Exception $e) {