SiteUserController.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Admin\Repositories\SiteUser;
  4. use App\Models\SiteAlbumFolder as SiteAlbumFolderModel;
  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 SiteUserController extends AdminController
  12. {
  13. /**
  14. * page index
  15. */
  16. public function index(Content $content)
  17. {
  18. return $content
  19. ->header('列表')
  20. ->description('全部')
  21. ->breadcrumb(['text'=>'列表','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 SiteUser(), function (Grid $grid) {
  32. $grid->column('id')->sortable();
  33. $grid->column('username');
  34. $grid->column('nick_name');
  35. $grid->column('created_at');
  36. $grid->column('updated_at')->sortable();
  37. $grid->filter(function (Grid\Filter $filter) {
  38. $filter->equal('id');
  39. });
  40. $grid->model()->orderBy('id', 'desc');
  41. $grid->disableViewButton();
  42. });
  43. }
  44. /**
  45. * Make a form builder.
  46. *
  47. * @return Form
  48. */
  49. protected function form()
  50. {
  51. return Form::make(new SiteUser(), function (Form $form) {
  52. //$form->model()->password = '';
  53. $form->text('username')->required();
  54. $form->text('nick_name')->required();
  55. $form->text('password')->value('');
  56. $folderModel = new SiteAlbumFolderModel();
  57. $folderTree = $folderModel->allNodes();
  58. $form->tree('permission', 'permission')
  59. ->setTitleColumn('title')
  60. ->exceptParentNode(false)
  61. ->nodes($folderTree)
  62. ->saving(function ($value) {
  63. return json_encode($value);
  64. });
  65. $form->saving(function (Form $form) {
  66. if ($form->password) {
  67. $form->password = bcrypt($form->password);
  68. } else {
  69. $form->password = $form->model()->password;
  70. }
  71. });
  72. $form->disableViewButton();
  73. $form->disableViewCheck();
  74. });
  75. }
  76. }