BaseProductParameterController.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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(admin_trans( 'admin.product_parameter'))
  16. ->description('')
  17. ->breadcrumb(['text'=>'list','url'=>''])
  18. ->body($this->grid());
  19. }
  20. /**
  21. * Make a grid builder.
  22. *
  23. * @return Grid
  24. */
  25. protected function grid()
  26. {
  27. return Grid::make(new BaseProductParameter(), function (Grid $grid) {
  28. //默认分页条数
  29. $grid->paginate(config('admin.per_page'));
  30. $grid->column('id','ID')->sortable();
  31. $grid->column('name');
  32. $grid->column('order');
  33. $grid->column('enabled')->switch();
  34. $grid->column('created_at');
  35. $grid->column('updated_at')->sortable();
  36. // 允许筛选
  37. $grid->filter(function (Grid\Filter $filter) {
  38. $filter->panel();
  39. $filter->expand();
  40. $filter->equal('name')->width(2);
  41. $filter->equal('enabled', )->select(admin_trans_array(config('dictionary.enabled')))->width(2);
  42. });
  43. //按钮
  44. $grid->disableViewButton();
  45. $grid->showQuickEditButton();
  46. $grid->enableDialogCreate();
  47. $grid->disableEditButton();
  48. //$grid->quickSearch('name');
  49. //排序
  50. $grid->model()->orderBy("order",'desc')->orderBy('id', 'desc');
  51. });
  52. }
  53. /**
  54. * Make a form builder.
  55. *
  56. * @return Form
  57. */
  58. protected function form()
  59. {
  60. return Form::make(new BaseProductParameter(), function (Form $form) {
  61. $form->text('name')->required();
  62. $form->table('content',admin_trans_label('attribute'), function (NestedForm $table) {
  63. $table->text('key')->required();
  64. $table->text('value')->required();
  65. })->setLabelClass('control-label')->default([
  66. ['key' => '', 'value' => ''],
  67. ]);
  68. $form->number('order')
  69. ->default(0)
  70. ->rules('numeric');
  71. $form->switch('enabled')->default(1);
  72. });
  73. }
  74. }