链街Dcat后台
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

92 lines
2.6 KiB

  1. <?php
  2. namespace App\Admin\Controllers\v3;
  3. use App\Admin\Repositories\v3\LanzuEmployees;
  4. use Dcat\Admin\Form;
  5. use Dcat\Admin\Grid;
  6. use Dcat\Admin\Show;
  7. use Dcat\Admin\Controllers\AdminController;
  8. use App\Models\v3\LanzuEmployees as EmployeesModel;
  9. use App\Models\v3\User as UserModel;
  10. use App\Models\v3\Store as StoreModel;
  11. class LanzuEmployeesController extends AdminController
  12. {
  13. /**
  14. * Make a grid builder.
  15. *
  16. * @return Grid
  17. */
  18. protected function grid()
  19. {
  20. return Grid::make(new LanzuEmployees(), function (Grid $grid) {
  21. $grid->column('id')->sortable();
  22. $grid->column('market_id');
  23. $grid->column('user_id')->display(function($userId){
  24. $item = UserModel::getUserInfo($userId,'real_name');
  25. return empty($item) ? '' : $$item['real_name'];
  26. });
  27. $grid->column('store_id')->display(function($storeId){
  28. $item = StoreModel::getStoreInfo($storeId,'real_name');
  29. return empty($item) ? '' : $$item['real_name'];
  30. });
  31. $grid->column('role')->display(function($role){
  32. return $role;
  33. });
  34. $grid->column('status')->select(EmployeesModel::$_STATUS);
  35. $grid->filter(function (Grid\Filter $filter) {
  36. $filter->equal('id');
  37. });
  38. $grid->model()->orderBy('id','desc');
  39. // 每页10条
  40. $grid->paginate(10);
  41. });
  42. }
  43. /**
  44. * Make a show builder.
  45. *
  46. * @param mixed $id
  47. *
  48. * @return Show
  49. */
  50. protected function detail($id)
  51. {
  52. return Show::make($id, new LanzuEmployees(), function (Show $show) {
  53. $show->field('id');
  54. $show->field('user_id');
  55. $show->field('store_id');
  56. $show->field('market_id');
  57. $show->field('role');
  58. $show->field('status');
  59. $show->field('note');
  60. $show->field('created_at');
  61. $show->field('updated_at');
  62. });
  63. }
  64. /**
  65. * Make a form builder.
  66. *
  67. * @return Form
  68. */
  69. protected function form()
  70. {
  71. return Form::make(new LanzuEmployees(), function (Form $form) {
  72. $form->display('id');
  73. $form->text('user_id');
  74. $form->text('store_id');
  75. $form->text('market_id');
  76. $form->text('role');
  77. $form->text('status');
  78. $form->text('note');
  79. $form->display('created_at');
  80. $form->display('updated_at');
  81. });
  82. }
  83. }