public function getProductos() { $returnData = []; $input = Request::createFromGlobals(); // Get all records $records = Producto::with('consumos', 'clases')->whereHas('clases', function ($query) use($input) { $query->whereIdClase($input->clase); }); $returnData['total'] = $records->count(); // Filter results if ($input->searchString != '') { $records->where(function ($query) use($input) { $query->where('nombre', 'LIKE', '%' . $input->searchString . '%')->orWhere('codigo', 'LIKE', '%' . $input->searchString . '%'); }); } $returnData['filtered'] = $records->count(); // Get the actual data with limits $records->skip($input->displayStart)->take($input->recordsPerPage); // Añade el proveedor favorito a resultados $returnData['records'] = $records->get(); return $returnData; }