From dfdbcb0fc37e69b83c82e00791c379edd95218a9 Mon Sep 17 00:00:00 2001 From: liapples Date: Tue, 17 Aug 2021 18:12:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Admin/Controllers/UserController.php | 27 +++--- app/AdminAgent/Controllers/UserController.php | 95 +++++++++++++++++++ app/AdminAgent/Repositories/User.php | 16 ++++ app/AdminAgent/routes.php | 1 + 4 files changed, 128 insertions(+), 11 deletions(-) create mode 100644 app/AdminAgent/Controllers/UserController.php create mode 100644 app/AdminAgent/Repositories/User.php diff --git a/app/Admin/Controllers/UserController.php b/app/Admin/Controllers/UserController.php index 2419151..c4b9811 100644 --- a/app/Admin/Controllers/UserController.php +++ b/app/Admin/Controllers/UserController.php @@ -3,6 +3,7 @@ namespace App\Admin\Controllers; use App\Admin\Repositories\User; +use App\Common\UserStatus; use Dcat\Admin\Form; use Dcat\Admin\Grid; use Dcat\Admin\Show; @@ -23,7 +24,7 @@ class UserController extends AdminController $grid->disableActions(); $grid->column('id')->sortable(); - $grid->column('agent.name', '代理商账号'); + $grid->column('agent.name', '所属代理商'); $grid->column('avatar')->image(60, 60); $grid->column('mobile'); $grid->column('nickname'); @@ -50,18 +51,18 @@ class UserController extends AdminController */ protected function detail($id) { - return Show::make($id, new User(), function (Show $show) { - /*$show->field('id'); - $show->field('agent_id'); - $show->field('avatar'); + return Show::make($id, new User(['agent:id,name']), function (Show $show) { + $show->disableDeleteButton(); + + $show->field('id'); + $show->field('agent.name', '代理商'); + $show->field('avatar')->image(80, 80); $show->field('mobile'); $show->field('nickname'); - $show->field('openid'); - $show->field('status'); - $show->field('unionid'); - $show->field('verifier'); + $show->field('status')->bool(); + $show->field('verifier')->bool(); $show->field('created_at'); - $show->field('updated_at');*/ + $show->field('updated_at'); }); } @@ -73,9 +74,13 @@ class UserController extends AdminController protected function form() { return Form::make(new User(), function (Form $form) { + $form->disableDeleteButton(); + /*$form->display('id'); $form->text('status'); $form->text('verifier');*/ - }); + })->deleting(function (Form $form) { + return $form->response()->error('禁止删除'); + }); } } diff --git a/app/AdminAgent/Controllers/UserController.php b/app/AdminAgent/Controllers/UserController.php new file mode 100644 index 0000000..42cc20c --- /dev/null +++ b/app/AdminAgent/Controllers/UserController.php @@ -0,0 +1,95 @@ +disableRowSelector(); + $grid->disableCreateButton(); + $grid->disableBatchDelete(); + $grid->disableDeleteButton(); + + $grid->model()->where('agent_id', Admin::user()->id); + + $grid->column('id')->sortable(); + $grid->column('avatar')->image(60, 60); + $grid->column('mobile'); + $grid->column('nickname'); + $grid->column('status')->switch(); + $grid->column('verifier')->switch(); + $grid->column('created_at'); + + $grid->filter(function (Grid\Filter $filter) { + $filter->panel(); + + $filter->equal('id')->width(2); + $filter->equal('mobile')->width(2); + }); + }); + } + + /** + * Make a show builder. + * + * @param mixed $id + * + * @return Show + */ + protected function detail($id) + { + return Show::make($id, new User(), function (Show $show) { + $show->disableDeleteButton(); + + $show->field('id'); + $show->field('avatar')->image(80, 80); + $show->field('mobile'); + $show->field('nickname'); + $show->field('status')->bool(); + $show->field('verifier')->bool(); + $show->field('created_at'); + }); + } + + /** + * Make a form builder. + * + * @return Form + */ + protected function form() + { + return Form::make(new User(), function (Form $form) { + $form->disableDeleteButton(); + + $form->display('id'); + $form->display('nickname'); + $form->text('mobile'); + $form->switch('status'); + $form->switch('verifier'); + })->saving(function (Form $form) { + //不允许编辑的字段 + $form->ignore(['id', 'nickname', 'deleted_at']); + + $form->agent_id = Admin::user()->id; + $form->status = $form->status ? 1 : 0; + $form->verifier = $form->verifier ? 1 : 0; + })->deleting(function (Form $form) { + return $form->response()->error('禁止删除'); + }); + } +} diff --git a/app/AdminAgent/Repositories/User.php b/app/AdminAgent/Repositories/User.php new file mode 100644 index 0000000..4b33205 --- /dev/null +++ b/app/AdminAgent/Repositories/User.php @@ -0,0 +1,16 @@ +resource('product/list', 'AgentProductController'); $router->resource('category/list', 'CategoryController'); + $router->resource('user/list', 'UserController'); });