SiteMenu.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. namespace App\Admin\Repositories;
  3. use App\Models\SiteMenu as Model;
  4. use Dcat\Admin\Repositories\EloquentRepository;
  5. class SiteMenu extends EloquentRepository
  6. {
  7. /**
  8. * Model.
  9. *
  10. * @var string
  11. */
  12. protected $eloquentClass = Model::class;
  13. /*
  14. * 只能显示2层
  15. */
  16. public static function selectOptions(\Closure $closure = null)
  17. {
  18. if (!$closure) {
  19. $closure = function ($query) {
  20. $query = $query->where('dist_id', getDistributorId())->orderBy('order', 'asc');
  21. return $query;
  22. };
  23. }
  24. $selectOptions = Model::class::selectOptions($closure);
  25. //只显示2层
  26. foreach ($selectOptions as $key => $value) {
  27. if (substr_count($value,'&nbsp;') > 2) {
  28. unset($selectOptions[$key]);
  29. }
  30. }
  31. return $selectOptions;
  32. }
  33. /*
  34. * 获取一个标签
  35. */
  36. public static function getOneById($id)
  37. {
  38. return Model::where('id', $id)->where('dist_id', getDistributorId())->first();
  39. }
  40. public static function createMenuBatch($data) {
  41. $model = new Model();
  42. return $model->createMenuBatch($data);
  43. }
  44. //生成uri
  45. public static function generateUri($menuType,$menuConfig,$distId,$isId = true) {
  46. $model = new Model();
  47. return $model->generateUri($menuType,$menuConfig,$distId,$isId);
  48. }
  49. }