header('接收简历') ->description('列表') ->body($this->grid()); } /** * Show interface. * * @param mixed $id * @param Content $content * @return Content */ public function show($id, Content $content) { return $content ->header('收到的简历') ->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 PersonalJobsApply); $grid->model()->whereHas('resumes'); $grid->id('ID'); $grid->column('resumes.fullname', '姓名'); $grid->column('resumes.birthdate', '年龄')->display(function ($birthdate) { return date('Y')-$birthdate; }); $grid->column('resumes.sex_cn', '性别'); $grid->column('resumes.education_cn', '学历'); $grid->column('resumes.experience_cn', '工作经验'); $grid->column('jobs_name', '应聘职位'); $grid->column('created_at', '投递时间'); $grid->filter(function ($filter) { $filter->column(1/2, function ($filter) { $filter->equal('company_id', '企业ID'); $filter->like('company_name', '企业名称'); $filter->between('created_at', '添加时间')->datetime(); }); $filter->column(1/2, function ($filter) { $filter->equal('jobs_id', '职位ID'); $filter->like('jobs_name', '职位名称'); }); }); return $grid; } /** * Make a show builder. * * @param mixed $id * @return Show */ protected function detail($id) { $show = new Show(PersonalJobsApply::findOrFail($id)); $show->resumes()->fullname('姓名')->as(function ($resumes) { return $resumes->fullname; }); $show->resumes()->birthdate('年龄')->as(function ($resumes) { return date('Y')-$resumes->birthdate; }); $show->resumes()->sex_cn('性别')->as(function ($resumes) { return $resumes->sex_cn; }); $show->resumes()->education_cn('学历')->as(function ($resumes) { return $resumes->education_cn; }); $show->resumes()->experience_cn('工作经验')->as(function ($resumes) { return $resumes->experience_cn; }); $show->jobs_name('应聘职位'); $show->created_at('投递时间'); return $show; } /** * Make a form builder. * * @return Form */ protected function form() { $form = new Form(new PersonalJobsApply); $form->display('ID'); $form->display('Created at'); $form->display('Updated at'); return $form; } }