Как проверить права пользователя в Laravel?
Я для подобной задачи поступал следующим образом:
создавал scope (можно даже глобальный) который можно подключить в методе boot класса модели. Например://...
class Order extends Model
{
    protected static function boot()
    {
        parent::boot();
        static::addGlobalScope('owner', function (Builder $builder) {
                  $user = Auth::user();
                  if (! $user->isAdmin()) {
                        $builder->where('user_id', $user->id);
                  }
        });
    }
}
Теперь при каждом обращении к order-ам, будет проверятся условие является ли юзер админом, если нет то добавится к запросу условие $builder->where('user_id', $user->id) . 
Не совсем хорошо использовать такую логику в моделях, но мне было удобно, и задачу решало,+ работает при обновлении, удалении, просмотре одного, просмотре списка и нечего дополнительно писать не надо.
Вам нужно гуглить схему роли-пермишены. Админ-не админ можно определить как $user = Auth::user();

if ($user->isAdmin) {
    // code...
}else{
    // code...
}
// не админ
if (!$user->isAdmin) {
    // code...
}
В роуте '/{user}/orders'
Вероятно нужен user_id вместо user
А значит искать юзера, как $user=User::find($user_id);
Заказы привязываются к юзеру через hasMany отношение и запрашиваются $orders = $user->orders;