modify backend

This commit is contained in:
Fateme
2020-04-26 13:12:51 +04:30
parent a76f0ce068
commit ff3dd87778
6 changed files with 122 additions and 23 deletions
+28 -9
View File
@@ -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);
}
}