$ids = $currentUser->restaurants()->select('
restaurants.id')->get()->pluck('id')->toArray();
foreach ($ids as $id) {
// если в какой либо ресторан - центральный оффис, то возращаем все
if (Restaurant::find($id)->main_office) {
return \Fractal::collection($users->get(), new StructureUserTransformer(), false);
}
}
// берем только тех пользователей, которые работают в этом ресторане
$users->join('user_restaurant', function($query) use ($ids) {
$query->on('user_restaurant.user_id','=','
users.id');
$query->whereIn('user_restaurant.restaurant_id', $ids);
});
// возращаем
return \Fractal::collection($users->get(), new StructureUserTransformer(), false);