DictController.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. namespace App\Http\Controllers\Api\Base;
  3. use App\Http\Controllers\Controller;
  4. use App\Services\Base\DictService;
  5. use Illuminate\Http\Request;
  6. use Illuminate\Support\Arr;
  7. /**
  8. * 字典管理
  9. */
  10. class DictController extends Controller
  11. {
  12. /**
  13. * @var DictService
  14. */
  15. private $dictService;
  16. /**
  17. * DictController constructor.
  18. *
  19. * @param DictService $dictService
  20. */
  21. public function __construct(DictService $dictService)
  22. {
  23. parent::__construct();
  24. $this->dictService = $dictService;
  25. }
  26. /**
  27. * 获取系统配置参数
  28. * @must
  29. * @param Request $request
  30. * @return \Illuminate\Http\JsonResponse|\Illuminate\Http\Resources\Json\JsonResource
  31. * @throws \Illuminate\Validation\ValidationException
  32. */
  33. public function configs(Request $request)
  34. {
  35. $this->validate($request, ['keys' => 'required|array']);
  36. $dicts = $this->dictService->handleConfigs($request->get('keys'));
  37. return $this->response->success(compact('dicts'));
  38. }
  39. /**
  40. * 获取单个配置
  41. * @must
  42. * @param Request $request
  43. * @return \Illuminate\Http\JsonResponse|\Illuminate\Http\Resources\Json\JsonResource
  44. * @throws \Illuminate\Validation\ValidationException
  45. */
  46. public function config(Request $request)
  47. {
  48. $this->validate($request, ['key' => 'required']);
  49. $dict = $this->dictService->handleConfig($request->get('key'));
  50. $options = Arr::get($dict, 'detail');
  51. return $this->response->success($options);
  52. }
  53. }