header('会员管理') ->body($this->grid()); } /** * Make a grid builder. * * @return Grid */ protected function grid() { $grid = new Grid(new User); $grid->disableCreateButton(); $grid->disableRowSelector(); $grid->actions(function ($actions) { $actions->disableDelete(); $actions->disableEdit(); $actions->disableView(); $actions->add(new UserUpgrade); if (!$this->row->parent) { $actions->add(new SetParent); } }); $grid->model()->orderBy('id', 'desc')->with(['info', 'account', 'orders']); $grid->id('序号')->sortable(); $grid->filter(function ($filter) { $filter->disableIdFilter(); $filter->column(1 / 2, function ($filter) { $filter->like('id', '序号'); $filter->like('info.nickname', '会员昵称'); }); $filter->column(1 / 2, function ($filter) { $filter->like('username', '会员手机号'); $filter->equal('identity.identity_id', '级别')->select([ ' ' => '全部', '1' => '会员', '2' => '金牌', '3' => '城市', '4' => '股东', ]); }); }); $grid->column('头像 昵称')->display(function () { $avatar = ''; return $avatar . ' ' . $this->info->nickname; }); $grid->column('手机号')->display(function () { return $this->username; }); $states = [ 'on' => ['value' => 1, 'text' => '是', 'color' => 'primary'], 'off' => ['value' => 0, 'text' => '否', 'color' => 'default'], ]; $grid->column('is_contract', '签订合同')->switch($states); $grid->column('activationd_at', '升级代理时间'); $grid->column('推荐人')->display(function () { return $this->parent ? $this->parent->info->nickname . '(' . $this->parent->id . ')' : ''; }); $grid->column('账户')->display(function () { $ret = '余额:' . $this->account->cash; return $ret; }); $grid->column('等级')->display(function () { return $this->identity_text; }); $grid->created_at('注册时间'); return $grid; } /** * Make a form builder. * * @return Form */ protected function form() { $form = new Form(new User); $form->switch('is_contract', '签订合同')->default(1); $form->saving(function (Form $form) { if (request()->has('is_contract') && $form->model()->identity_id < 2) { return response()->json([ 'status' => false, 'message' => '当前账号不可设置合同状态。', ]); } }); return $form; } }