BaseVideoCategoryController.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Admin\Repositories\BaseProductCategory;
  4. use App\Admin\Repositories\BaseVideoCategory;
  5. use Dcat\Admin\Form;
  6. use Dcat\Admin\Grid;
  7. use Dcat\Admin\Show;
  8. use Dcat\Admin\Http\Controllers\AdminController;
  9. use Dcat\Admin\Layout\Content;
  10. use Dcat\Admin\Admin;
  11. class BaseVideoCategoryController extends AdminController
  12. {
  13. /**
  14. * page index
  15. */
  16. public function index(Content $content)
  17. {
  18. return $content
  19. ->header(admin_trans( 'admin.video_category'))
  20. ->description('')
  21. ->breadcrumb(['text'=>'list','url'=>''])
  22. ->body($this->grid());
  23. }
  24. /**
  25. * Make a grid builder.
  26. *
  27. * @return Grid
  28. */
  29. protected function grid()
  30. {
  31. return Grid::make(new BaseVideoCategory(), function (Grid $grid) {
  32. $grid->column('id')->sortable();
  33. $grid->column('name');
  34. //$grid->column('parent_id');
  35. $grid->column('order')->orderable();
  36. $grid->column('enabled')->switch();
  37. $grid->column('created_at');
  38. $grid->column('updated_at')->sortable();
  39. //$grid->quickSearch('name');
  40. // 允许筛选
  41. $grid->filter(function (Grid\Filter $filter) {
  42. $filter->panel();
  43. $filter->expand();
  44. $filter->equal('name')->width(2);
  45. $filter->equal('enabled', admin_trans_label('enabled'))->select(admin_trans_array(config('dictionary.enabled')))->width(2);
  46. });
  47. //按钮
  48. $grid->disableViewButton();
  49. $grid->showQuickEditButton();
  50. $grid->enableDialogCreate();
  51. $grid->disableEditButton();
  52. //排序
  53. $grid->model()->orderBy('order', 'asc');
  54. });
  55. }
  56. /**
  57. * Make a form builder.
  58. *
  59. * @return Form
  60. */
  61. protected function form()
  62. {
  63. return Form::make(new BaseVideoCategory(), function (Form $form) {
  64. $form->display('id');
  65. $form->text('name');
  66. /*
  67. $form->select('parent_id', admin_trans_field('parent'))
  68. ->options(BaseVideoCategory::selectOptions())
  69. ->saving(function ($v) {
  70. return (int) $v;
  71. });
  72. */
  73. $form->switch('enabled')->default(1);
  74. });
  75. }
  76. }