/**
  * @param Request $request
  * @param int $itemsPage
  *
  * @return mixed
  */
 public function findAllPaginate(Request $request, $itemsPage = 30)
 {
     $key = md5($itemsPage . $request->getRequestUri());
     $queryParser = new ParserRequest($request, $this->getModel());
     $queryBuilder = $queryParser->parser();
     return $this->cacheQueryBuilder($key, $queryBuilder, 'paginate', $itemsPage);
 }
 /**
  * @param Request $request
  * @param $idCarrier
  * @param int $itemsPage
  *
  * @return mixed
  */
 public function findAllPaginate(Request $request, $idCarrier, $itemsPage = 30)
 {
     $key = md5($itemsPage . $request->getRequestUri());
     $query = $this->getModel()->newQuery()->select($this->tableCarriersServices . '.*')->join($this->tableCarriers, $this->tableCarriers . '.id', '=', $this->tableCarriersServices . '.carrier_id')->where($this->tableCarriers . '.id', $idCarrier);
     $queryParser = new ParserRequest($request, $this->getModel(), $query);
     $queryBuilder = $queryParser->parser();
     return $this->cacheQueryBuilder($key, $queryBuilder, 'paginate', $itemsPage);
 }
 /**
  * @param Request $request
  * @param int     $itemsPage
  *
  * @return mixed
  */
 public function findAllPaginate(Request $request, $itemsPage = 30)
 {
     $key = md5($itemsPage . $request->getRequestUri());
     $queryParser = new ParserRequest($request, $this->getModel());
     $queryBuilder = $queryParser->parser();
     $paginator = $this->cacheQueryBuilder($key, $queryBuilder, 'paginate', $itemsPage);
     $key = 0;
     foreach ($paginator->items() as &$item) {
         $item = (object) $item;
         $paginator->offsetSet($key, $item);
         $key++;
     }
     return $paginator;
 }