header('报名列表') ->description(' ') ->body(view('admin.content.recuperate_apply')->with(['grid' => $this->grid()])); } /** * Make a grid builder. * * @return Grid */ protected function grid() { $grid = new Grid(new RecuperateApply()); $grid->model()->orderBy('created_at', 'DESC'); $grid->recuperate_id('套餐id'); $grid->column('套餐标题')->display(function () { //套餐被删除 if (empty($this->recuperate)) { return '已被删除'; } $style = "color:" . $this->recuperate->tit_color . ';'; if ($this->recuperate->tit_b == '1') { $style .= 'font-weight:bold;'; } return '' . $this->recuperate->title . ''; })->width(200); $grid->small_img('缩略图')->display(function () { //套餐被删除 if (empty($this->recuperate)) { return ''; } if ($this->recuperate->small_img) { return ' '; } else { return ''; } }); $grid->price('套餐金额'); $grid->user_name('姓名'); $grid->user_idcard('身份证'); $grid->mobile('联系电话'); $grid->wechat('微信号'); $grid->company_name('工作单位'); $grid->column('人才层次')->display(function () { $level_arr = [ '', '第一层次', '第二层次', '第三层次', '第四层次', '第五层次', '第六层次', '第七层次', ]; return $level_arr[$this->level]; }); /*$grid->condition("适用对象类型"); $grid->column('个税社保')->display(function () { $level_arr = [ '', '是', '否', ]; return $level_arr[$this->tax]; }); $grid->column('年薪')->display(function () { $level_arr = [ '', '是', '否', ]; return $level_arr[$this->salary]; });*/ $grid->validate_time('人才有效期'); $grid->created_at('报名时间'); $grid->column('审核状态')->display(function () { $status_arr = [ '待审核', '审核通过', '审核不通过', '取消活动', ]; $reason = $this->reason ? '' : ''; return '' . $status_arr[$this->status] . $reason . ''; }); //审核功能 $grid->actions(function ($actions) { if ($actions->row['status'] == 0) { $actions->append(""); } /*取消活动*/ if ($actions->row['status'] != 2 && $actions->row['status'] != 3) { $actions->append(""); } }); $grid->filter(function ($filter) { $filter->disableIdFilter(); $filter->equal('recuperate_id', '套餐id'); /*$filter->where(function($query){ $recuperate = Recuperate::where('title','like',"%{$this->input}%")->get(); $ids = $recuperate->pluck('id')->all(); if (empty($ids)) { $query->where('id','=',0); } else { $query->whereIn('recuperate_id',$ids); } }, '');*/ $date3 = date('Y-m-d', strtotime("-3 day")); $date7 = date('Y-m-d', strtotime("-7 day")); $date30 = date("Y-m-d", strtotime("-1 month")); $date180 = date("Y-m-d", strtotime("-6 month")); $date360 = date("Y-m-d", strtotime("-1 year")); $date_option = [ '' => '不限', $date3 => '三天内', $date7 => '一周内', $date30 => '一月内', $date180 => '半年内', $date360 => '一年内', ]; $filter->where(function ($query) { $query->where('created_at', '>=', "{$this->input}"); }, '添加时间', 'created_at')->radio($date_option); $status_option = [ '' => '不限', 0 => '待审核', 1 => '审核通过', 2 => '审核不通过', ]; $filter->where(function ($query) { if (isset($this->input)) { $query->where('status', '=', "{$this->input}"); } }, '审核状态', 'status')->radio($status_option); }); return $grid; } public function audit(Request $request) { $id = $request->id; $status = $request->status; $reason = $request->reason; $url = empty($request->url) ? '/ST3IXxKlOa4eGEv0eTw0CfORI9444Mgj/content/recuperate/apply' : $request->url; if (empty($id)) { admin_toastr('数据异常', 'error'); return redirect('/ST3IXxKlOa4eGEv0eTw0CfORI9444Mgj/content/recuperate/apply'); } $result = RecuperateApply::where('id', '=', $id)->update(['status' => $status, 'reason' => $reason]); if ($result) { admin_toastr('审核成功', 'success'); } else { admin_toastr('该信息不存在或已审核', 'error'); } return redirect($url); } public function audit_qx(Request $request) { $id = $request->id; // $status = $request->status; // $reason = $request->reason; $url = empty($request->url) ? '/ST3IXxKlOa4eGEv0eTw0CfORI9444Mgj/content/recuperate/apply' : $request->url; if (empty($id)) { admin_toastr('数据异常1', 'error'); return redirect('/ST3IXxKlOa4eGEv0eTw0CfORI9444Mgj/content/recuperate/apply'); } $result = RecuperateApply::where('id', '=', $id)->update(['status' => 3]); $recuperate_apply = RecuperateApply::where('id', '=', $id)->select('uid')->first(); $auditData = [ 'type' => 2, 'admin_id' => \Encore\Admin\Facades\Admin::user()->id, 'sid' => $recuperate_apply->uid, 'content' => "取消活动", ]; RecuperateLog::create($auditData); if ($result) { admin_toastr('取消成功', 'success'); } else { admin_toastr('该信息不存在或已审核', 'error'); } return redirect($url); } /*个人列表*/ public function appointinfo(Content $content, Request $request) { $uid = $request->uid; $recuperateApply = RecuperateApply::where('uid', $uid); $recuperateTime = RecuperateTime::where('uid', $uid)->select('id', 'year')->orderBy('id', 'desc')->get(); if (empty($recuperateApply)) { return back(); } $search_data = $request->all(); $search_data['uid'] = isset($search_data['uid']) ? $search_data['uid'] : $uid; $search_data['status'] = isset($search_data['status']) ? $search_data['status'] : 1; $search_data['recuperate_time_id'] = isset($search_data['recuperate_time_id']) ? $search_data['recuperate_time_id'] : $recuperateTime[0]->id; $where = []; if (isset($search_data['perpage'])) { $perpage = $search_data['perpage']; } else { $session_data = session('search_data'); if (isset($session_data['perpage'])) { $perpage = $session_data['perpage']; } else { $perpage = 20; } } if (isset($search_data['uid']) || session('manage_search_data')['uid']) { if (isset($search_data['page'])) { if (session('search_data')) { $where = session('managewhere'); unset($search_data['page']); $search_data = session('manage_search_data'); } } foreach ($search_data as $k => $v) { if ($k == 'status') { $where[] = ['recuperate_apply.status', 'like', "%$v%"]; } elseif ($k == 'recuperate_time_id') { $where[] = ['recuperate_apply.recuperate_time_id', '=', $v]; } elseif ($k == 'uid') { $where[] = ['recuperate_apply.uid', '=', $v]; } elseif ($k != '_pjax' and $k != 'page' && $k != 'perpage') { $where[] = [$k, '=', $v]; } } session(['managewhere' => $where]); session(['manage_search_data' => $search_data]); session()->save(); } $list = RecuperateApply::where($where) ->join('recuperate', 'recuperate_apply.recuperate_id', '=', 'recuperate.id', 'left') ->join('recuperate_time', 'recuperate_apply.recuperate_time_id', '=', 'recuperate_time.id', 'left') ->select('recuperate_apply.*', 'recuperate.title', 'recuperate_time.year') ->orderBy('recuperate_apply.id', 'desc') ->paginate($perpage); return $content ->header('招考管理') ->description('招考人员信息列表') ->body(view('admin.content.recuperate_apply_personal')->with([ 'list' => $list, 'search_data' => $search_data, 'recuperateTime' => $recuperateTime, ])); } }