header('HR列表') ->description(' ') ->body($this->grid()); } /** * Show interface. * * @param mixed $id * @param Content $content * @return Content */ public function show($id, Content $content) { return $content ->header('Detail') ->description('description') ->body($this->detail($id)); } /** * Edit interface. * * @param mixed $id * @param Content $content * @return Content */ public function edit($id, Content $content) { return $content ->header('Edit') ->description('description') ->body($this->form()->edit($id)); } /** * Create interface. * * @param Content $content * @return Content */ public function create(Content $content) { return $content ->header('Create') ->description('description') ->body($this->form()); } /** * Make a grid builder. * * @return Grid */ protected function grid() { $grid = new Grid(new HrBind); $grid->column('memberInfo.username', '用户名')->width(200); $grid->column('companyInfo.companyname', '所在企业')->width(200); $grid->column('memberInfo.mobile', '电话')->width(100); $grid->column('memberInfo.email', '邮箱')->width(150); $grid->status('绑定状态')->display(function () { return $this->status?'绑定':'解绑'; }); $grid->binded_at('操作时间'); if (Admin::user()->can('person_hr_delete')) { $grid->disableActions(); $grid->tools(function (Grid\Tools $tools) { $tools->batch(function ($batch) { $batch->disableDelete(false); }); }); } $grid->filter(function ($filter) { $filter->disableIdFilter(); $filter->column(1/2, function ($filter) { $filter->like('memberInfo.username', '用户名'); $filter->like('companyInfo.companyname', '企业名称'); }); $filter->column(1/2, function ($filter) { $filter->like('memberInfo.mobile', '电话'); $filter->like('memberInfo.email', 'Email'); }); }); return $grid; } /** * Make a show builder. * * @param mixed $id * @return Show */ protected function detail($id) { $show = new Show(HrBind::findOrFail($id)); $show->id('ID'); $show->created_at('Created at'); $show->updated_at('Updated at'); return $show; } /** * Make a form builder. * * @return Form */ protected function form() { $form = new Form(new HrBind); $form->display('ID'); $form->display('Created at'); $form->display('Updated at'); return $form; } }