MusicListController.php 954 B

1234567891011121314151617181920212223242526272829
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: durong
  5. * Date: 2019/7/4
  6. * Time: 上午9:47
  7. */
  8. namespace App\Http\Controllers\V1;
  9. use App\Repositories\MusicRepository;
  10. use App\Transformers\MusicTranformer;
  11. use Illuminate\Http\Request;
  12. use League\Fractal\Pagination\IlluminatePaginatorAdapter;
  13. use League\Fractal\Resource\Collection;
  14. use League\Fractal\Manager;
  15. class MusicListController extends Controller
  16. {
  17. public function __construct(MusicRepository $musicRepository) {
  18. $this->musicRepository = $musicRepository;
  19. }
  20. //热门音乐列表
  21. public function index(Request $request) {
  22. $musicList = $this->musicRepository->lists($request->all());
  23. $fractal = new Manager();
  24. $resource = new Collection($musicList, new MusicTranformer());
  25. $resource->setPaginator(new IlluminatePaginatorAdapter($musicList));
  26. $data = $fractal->createData($resource)->toArray();
  27. return jsonSuccess($data);
  28. }
  29. }