public function all(array $columns = ['*'], array $with = [], $orders = [], $limit = 50, $page = 1)
{
$all = $this->model;
if (!empty($with)) {
$all = $all->with($with);
}
foreach ($orders as $order) {
$order['order'] = isset($order['order']) ? $order['order'] : 'ASC';
$all = $all->orderBy($order['column'], $order['order']);
}
$all = $all->paginate($limit, $columns, 'page', $page);
return $all;
}