CategoryController.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace App\Http\Controllers\Api\Course;
  3. use App\Http\Controllers\Controller;
  4. use App\Services\Course\CategoryService;
  5. use Illuminate\Http\Request;
  6. /**
  7. * 分类管理
  8. *
  9. * @package namespace App\Http\Controllers;
  10. */
  11. class CategoryController extends Controller
  12. {
  13. public function __construct(CategoryService $categoryService)
  14. {
  15. parent::__construct();
  16. $this->service = $categoryService;
  17. }
  18. /**
  19. * 列表
  20. * @param Request $request
  21. * @return \Illuminate\Http\JsonResponse|\Illuminate\Http\Resources\Json\Resource
  22. * @throws \Prettus\Repository\Exceptions\RepositoryException
  23. */
  24. public function tree(Request $request)
  25. {
  26. $data = $this->service->handleAll($request, ['id', 'name', 'parent_id', 'sort']);
  27. $data['list'] = toTree($data['list']);
  28. return $this->response->success($data);
  29. }
  30. /**
  31. * 选项
  32. * @must
  33. * @param Request $request
  34. * @return \Illuminate\Http\JsonResponse|\Illuminate\Http\Resources\Json\JsonResource
  35. * @throws \Prettus\Repository\Exceptions\RepositoryException
  36. */
  37. public function selectOptions(Request $request)
  38. {
  39. $lists = $this->service->handleSelectOptions($request);
  40. return $this->response->success($lists);
  41. }
  42. }