BaseProductParameterController.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Admin\Repositories\BaseProductParameter;
  4. use Dcat\Admin\Form;
  5. use Dcat\Admin\Grid;
  6. use Dcat\Admin\Layout\Content;
  7. use Dcat\Admin\Show;
  8. use Dcat\Admin\Http\Controllers\AdminController;
  9. use Dcat\Admin\Form\NestedForm;
  10. class BaseProductParameterController extends AdminController
  11. {
  12. public function index(Content $content)
  13. {
  14. return $content
  15. ->header('Product Parameter')
  16. ->description('')
  17. ->body($this->grid());
  18. }
  19. /**
  20. * Make a grid builder.
  21. *
  22. * @return Grid
  23. */
  24. protected function grid()
  25. {
  26. return Grid::make(new BaseProductParameter(), function (Grid $grid) {
  27. $grid->column('id','ID')->sortable();
  28. $grid->column('name');
  29. $grid->column('order')->orderable();
  30. $grid->column('enabled')->switch();
  31. $grid->column('created_at');
  32. $grid->column('updated_at')->sortable();
  33. // 允许筛选
  34. $grid->filter(function (Grid\Filter $filter) {
  35. $filter->panel();
  36. $filter->expand();
  37. $filter->equal('name')->width(2);
  38. $filter->equal('enabled', 'Enabled')->select(config('dictionary.enabled'))->width(2);
  39. });
  40. //按钮
  41. $grid->disableViewButton();
  42. $grid->showQuickEditButton();
  43. $grid->enableDialogCreate();
  44. $grid->disableEditButton();
  45. //$grid->quickSearch('name');
  46. //排序
  47. $grid->model()->orderBy("order",'asc')->orderBy('id', 'asc');
  48. });
  49. }
  50. /**
  51. * Make a form builder.
  52. *
  53. * @return Form
  54. */
  55. protected function form()
  56. {
  57. return Form::make(new BaseProductParameter(), function (Form $form) {
  58. $form->display('id');
  59. $form->text('name')->required();
  60. $form->table('content','Parameters', function (NestedForm $table) {
  61. $table->text('key')->required();
  62. $table->text('value')->required();
  63. })->default([
  64. ['key' => 'color', 'value' => 'white'],
  65. ]);
  66. $form->switch('enabled')->default(1);
  67. });
  68. }
  69. }