diff --git a/app/Http/Controllers/CycleController.php b/app/Http/Controllers/CycleController.php index 5014d996..f44d89c5 100644 --- a/app/Http/Controllers/CycleController.php +++ b/app/Http/Controllers/CycleController.php @@ -40,7 +40,15 @@ class CycleController extends Controller $query->where('medical_center_id', $request->medical_center_id); }); }) - ->with('user')->paginate(10); + ->with(['user' => function($query){ + $query->select('id', 'name'); + }, + 'labels', + 'labels.package' => function($query){ + $query->select('id', 'name'); + }, + ])->paginate(10); + return \MessageResponse::data($Cycles); } public function create() @@ -49,7 +57,14 @@ class CycleController extends Controller } public function show(Cycle $Cycle) { - $Cycle->load('user', 'user.medical_center', 'labels', 'labels.package', 'labels.package.items'); + $Cycle->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'labels', + 'labels.package', 'labels.package.items']); return \MessageResponse::data($Cycle); } public function store(StoreCycleRequest $request) @@ -149,7 +164,13 @@ class CycleController extends Controller public function showCycle(Cycle $Cycle) { - $Cycle->load('user', 'user.medical_center', 'labels', 'labels.package', 'labels.package.items'); + $Cycle->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'labels', 'labels.package', 'labels.package.items']); return \MessageResponse::data($Cycle); } } diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index bf52547f..e575036a 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -15,9 +15,7 @@ class ItemController extends Controller $admin_users = User::role('Admin')->get()->pluck('id')->toArray(); $admin_users[] = $user->id; - $Items = Item::with('user') - - ->when($user->cant('showAll'), function($query) use ($user, $admin_users) { + $Items = Item::when($user->cant('showAll'), function($query) use ($user, $admin_users) { if ($user->hasRole('Supervisor|User')) { $query->whereHas('user', function($query) use ($user, $admin_users) { $query->where('medical_center_id', $user->medical_center_id)->orWhereIn('id', $admin_users); @@ -41,6 +39,12 @@ class ItemController extends Controller $query->where('medical_center_id', $request->medical_center_id); }); }) + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }]) ->paginate(10); return \MessageResponse::data($Items); } @@ -51,7 +55,12 @@ class ItemController extends Controller } public function show(Item $Item) { - $Item->load('user', 'user.medical_center'); + $Item->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }]); return \MessageResponse::data($Item); } public function store(StoreItemRequest $request) @@ -96,22 +105,32 @@ class ItemController extends Controller $admin_users = User::role('Admin')->get()->pluck('id')->toArray(); $admin_users[] = $user->id; - $Items = Item::with('user') - - ->when($user->cant('showAll'), function($query) use ($user, $admin_users) { + $Items = Item::when($user->cant('showAll'), function($query) use ($user, $admin_users) { if ($user->hasRole('Supervisor|User')) { $query->whereHas('user', function($query) use ($user, $admin_users) { $query->where('medical_center_id', $user->medical_center_id)->orWhereIn('id', $admin_users); }); } - })->get(); + }) + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }]) + ->get(); return \MessageResponse::data($Items); } public function showItem(Item $Item) { - $Item->load('user', 'user.medical_center'); + $Item->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }]); return \MessageResponse::data($Item); } } diff --git a/app/Http/Controllers/LabelController.php b/app/Http/Controllers/LabelController.php index 9d26a93a..8d5a6b41 100644 --- a/app/Http/Controllers/LabelController.php +++ b/app/Http/Controllers/LabelController.php @@ -41,7 +41,17 @@ class LabelController extends Controller $query->where('medical_center_id', $request->medical_center_id); }); }) - ->with('user', 'user.medical_center')->paginate(10); + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'package' => function($query){ + $query->select('id', 'name'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + ])->paginate(10); + return \MessageResponse::data($Labels); } public function create() @@ -50,7 +60,13 @@ class LabelController extends Controller } public function show(Label $Label) { - $Label->load('user', 'package', 'package.items', 'user.medical_center'); + $Label->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'package', 'package.items']); return \MessageResponse::data($Label); } @@ -111,7 +127,13 @@ class LabelController extends Controller public function showLabel(Label $Label) { - $Label->load('user', 'package', 'package.items', 'user.medical_center'); + $Label->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'package', 'package.items']); return \MessageResponse::data($Label); } diff --git a/app/Http/Controllers/PackageController.php b/app/Http/Controllers/PackageController.php index c9a0f9a2..6f2e44ca 100644 --- a/app/Http/Controllers/PackageController.php +++ b/app/Http/Controllers/PackageController.php @@ -34,7 +34,13 @@ class PackageController extends Controller $query->where('medical_center_id', $request->medical_center_id); }); }) - ->with('user')->paginate(10); + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }])->paginate(10); + return \MessageResponse::data($Packages); } @@ -44,8 +50,13 @@ class PackageController extends Controller } public function show(Package $Package) { - $Package->load('user', 'items', 'user.medical_center'); - // dd($Package); + $Package->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'items']); return \MessageResponse::data($Package); } public function store(StorePackageRequest $request) @@ -157,14 +168,25 @@ class PackageController extends Controller }); } }) - ->with('user')->get(); + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }])->get(); return \MessageResponse::data($Packages); } public function showPackage(Package $Package) { - $Package->load('user', 'user.medical_center', 'items'); + $Package->load(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'items']); return \MessageResponse::data($Package); } } diff --git a/app/Http/Controllers/TestResultController.php b/app/Http/Controllers/TestResultController.php index 0ac91c58..76225841 100644 --- a/app/Http/Controllers/TestResultController.php +++ b/app/Http/Controllers/TestResultController.php @@ -55,8 +55,7 @@ class TestResultController extends Controller $user_name = null; } - $TestResult = TestResult::with('test_type', 'user', 'user.medical_center') - ->when($request->has('verified'), function ($query) use ($request){ + $TestResult = TestResult::when($request->has('verified'), function ($query) use ($request){ return $query->where('verified', $request->verified); }) ->when(($request->has('fromPicker') && $request->fromPicker) || ($request->has('upToPicker') && $request->upToPicker), function ($query) use ($request){ @@ -92,6 +91,15 @@ class TestResultController extends Controller $query->where('medical_center_id', $medical_center_id); }); }) + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }, + 'test_type' => function($query){ + $query->select('id', 'name'); + }]) ->paginate(10); return \MessageResponse::data($TestResult); diff --git a/app/Http/Controllers/TestTypeController.php b/app/Http/Controllers/TestTypeController.php index 32de6359..f7b0fae1 100644 --- a/app/Http/Controllers/TestTypeController.php +++ b/app/Http/Controllers/TestTypeController.php @@ -41,7 +41,14 @@ class TestTypeController extends Controller $query->where('name', 'LIKE', '%'.$request->user_name.'%'); }); }) - ->withCount('test_results')->with('user','user.medical_center')->paginate(10); + ->withCount('test_results') + ->with(['user' => function($query){ + $query->select('id', 'name', 'medical_center_id'); + }, + 'user.medical_center' => function($query){ + $query->select('id', 'name'); + }])->paginate(10); + return \MessageResponse::data($TestTypes); }