UserController.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Admin\Repositories\User;
  4. use Dcat\Admin\Form;
  5. use Dcat\Admin\Grid;
  6. use Dcat\Admin\Show;
  7. use Dcat\Admin\Http\Controllers\AdminController;
  8. class UserController extends AdminController
  9. {
  10. /**
  11. * Make a grid builder.
  12. *
  13. * @return Grid
  14. */
  15. protected function grid()
  16. {
  17. return Grid::make(new User(), function (Grid $grid) {
  18. $grid->model()
  19. ->orderBy('id','desc');
  20. $grid->column('id')->sortable()->width('80px');
  21. $grid->column('nickname');
  22. $grid->column('head_img')->image('',80,80);
  23. $grid->column('phone_num');
  24. $grid->column('is_vip')->using([0 => '否', 1 => '是']);
  25. $grid->column('created_at','注册时间');
  26. $grid->showQuickEditButton();
  27. // 禁用删除按钮
  28. $grid->disableDeleteButton();
  29. $grid->disableCreateButton();
  30. // 禁用
  31. $grid->disableBatchActions();
  32. // 禁用
  33. $grid->disableRowSelector();
  34. $grid->filter(function (Grid\Filter $filter) {
  35. $filter->like('nickname','用户姓名');
  36. $filter->equal('phone_num','手机号');
  37. });
  38. /*$grid->filter(function (Grid\Filter $filter) {
  39. $filter->equal('id');
  40. });*/
  41. $grid->export();
  42. });
  43. }
  44. /**
  45. * Make a show builder.
  46. *
  47. * @param mixed $id
  48. *
  49. * @return Show
  50. */
  51. protected function detail($id)
  52. {
  53. return Show::make($id, new User(), function (Show $show) {
  54. $show->model()->with('parent');
  55. $show->field('id');
  56. $show->field('nickname');
  57. $show->field('head_img','头像')->image();
  58. $show->parent_id()->as(function ($parent_id) {
  59. return $this->parent?$this->parent->nickname:'无';
  60. });
  61. $show->field('phone_num');
  62. $show->field('income');
  63. $show->field('is_vip')->using([0=>'否',1=>'是']);
  64. $show->field('share_qrcode','推广码')->image();
  65. $show->field('become_vip_at');
  66. $show->field('become_child_at');
  67. $show->field('created_at');
  68. $show->field('updated_at');
  69. });
  70. }
  71. /**
  72. * Make a form builder.
  73. *
  74. * @return Form
  75. */
  76. protected function form()
  77. {
  78. return Form::make(new User(), function (Form $form) {
  79. $form->display('id');
  80. $form->display('nickname','昵称');
  81. $form->image('head_img')->disable();
  82. $form->display('phone_num');
  83. $form->display('income');
  84. $form->switch('is_vip', '是否会员?')->default(1);
  85. $form->image('share_qrcode')->disable();
  86. $form->display('become_vip_at');
  87. $form->display('become_child_at');
  88. $form->display('created_at');
  89. $form->display('updated_at');
  90. });
  91. }
  92. }