|
@@ -0,0 +1,203 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace App\Admin\Controllers\Content;
|
|
|
+
|
|
|
+use App\Http\Controllers\Controller;
|
|
|
+use App\Models\TalentHouse;
|
|
|
+use App\Models\TalentHouseApply;
|
|
|
+use Encore\Admin\Controllers\HasResourceActions;
|
|
|
+use Encore\Admin\Grid;
|
|
|
+use Encore\Admin\Layout\Content;
|
|
|
+use Illuminate\Http\Request;
|
|
|
+
|
|
|
+class BuyHouseZrController extends Controller
|
|
|
+{
|
|
|
+ use HasResourceActions;
|
|
|
+
|
|
|
+ private $status = ['未知', '待审核', '审核通过', '审核不通过'];
|
|
|
+ private $marry = ['未知', '未婚', '已婚', '离异', '丧偶'];
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Index interface.
|
|
|
+ *
|
|
|
+ * @param Content $content
|
|
|
+ * @return Content
|
|
|
+ */
|
|
|
+ public function index(Content $content)
|
|
|
+ {
|
|
|
+ return $content
|
|
|
+ ->header('申报列表')
|
|
|
+ ->description(' ')
|
|
|
+ ->body(view('admin.content.buy_house_zr')->with(['grid' => $this->grid()]));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Make a grid builder.
|
|
|
+ *
|
|
|
+ * @return Grid
|
|
|
+ */
|
|
|
+ protected function grid()
|
|
|
+ {
|
|
|
+ $grid = new Grid(new TalentHouseApply());
|
|
|
+
|
|
|
+ $grid->model()->with('house')->where('is_back',2)->where('zj_check_status',2)->orderBy('zr_check_status', 'ASC');
|
|
|
+
|
|
|
+ $status_text = $this->status;
|
|
|
+ $grid->id('ID');
|
|
|
+ $grid->name('姓名');
|
|
|
+ $grid->mobile('联系电话');
|
|
|
+ $grid->talent_level('人才层次');
|
|
|
+ $grid->column('房源')->display(function () {
|
|
|
+ return $this->house->name;
|
|
|
+ });
|
|
|
+ $grid->zr_check_status('状态')->display(function () use ($status_text) {
|
|
|
+ return $status_text[$this->zr_check_status];
|
|
|
+ });
|
|
|
+ $grid->zr_check_status('备注');
|
|
|
+
|
|
|
+ $grid->actions(function ($actions) {
|
|
|
+ if ($actions->row['zr_check_status'] == 1) {
|
|
|
+ $actions->append("<button class='btn btn-primary btn-xs applyaudit' data-code=" . $actions->row['id'] . ">审核</button>");
|
|
|
+ }
|
|
|
+ $actions->append(" <button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情</button>");
|
|
|
+ });
|
|
|
+
|
|
|
+ $grid->filter(function ($filter) {
|
|
|
+ $filter->disableIdFilter();
|
|
|
+ $filter->equal('house_id', '房源')->select(TalentHouse::all()->pluck('name', 'id'));
|
|
|
+ $status_option = ['全部', '待审核', '审核通过', '审核不通过'];
|
|
|
+ $filter->where(function ($query) {
|
|
|
+ if ($this->input > 0) {
|
|
|
+ $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) ? admin_base_path('content/buy_house_zj') : $request->url;
|
|
|
+ if (empty($id)) {
|
|
|
+ admin_toastr('数据异常', 'error');
|
|
|
+ return redirect(admin_base_path('content/buy_house_zj'));
|
|
|
+ }
|
|
|
+ $result = TalentHouseApply::where('id', '=', $id)
|
|
|
+ ->update([
|
|
|
+ 'zr_check_status' => $status,
|
|
|
+ 'zr_check_comment' => $reason,
|
|
|
+ 'zr_check_time' => date('Y-m-d H:i:s'),
|
|
|
+ 'status' => $status,
|
|
|
+ ]);
|
|
|
+ if ($result) {
|
|
|
+ admin_toastr('审核成功', 'success');
|
|
|
+ } else {
|
|
|
+ admin_toastr('该信息不存在或已审核', 'error');
|
|
|
+ }
|
|
|
+
|
|
|
+ return redirect($url);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 详情
|
|
|
+ */
|
|
|
+ public function detail(Request $request)
|
|
|
+ {
|
|
|
+ $id = $request->id;
|
|
|
+ $info = TalentHouseApply::with('idcard')->where('id',$id)->first();
|
|
|
+ $info->family = json_decode($info->family);
|
|
|
+ $info->marry_text = $this->marry[$info->marry];
|
|
|
+
|
|
|
+ //layer相册层
|
|
|
+ $photos = [
|
|
|
+ 'certificates' => [],
|
|
|
+ 'marry_prove' => [],
|
|
|
+ 'household_register' => [],
|
|
|
+ 'work_prove' => [],
|
|
|
+ ];
|
|
|
+ if (!empty(json_decode($info->certificates))) {
|
|
|
+ $info->certificates = json_decode($info->certificates);
|
|
|
+ $photo_data = [];
|
|
|
+ foreach ($info->certificates as $k => $v) {
|
|
|
+ $photo_data[] = [
|
|
|
+ 'alt' => $v->name,
|
|
|
+ 'pid' => $v->uid,
|
|
|
+ 'src' => $v->response->path,
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $photos['certificates'] = [
|
|
|
+ 'title' => '证件信息',
|
|
|
+ 'id' => 1,
|
|
|
+ 'start' => 0,
|
|
|
+ 'data' => $photo_data,
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ $info->certificates = [];
|
|
|
+ }
|
|
|
+ if (!empty(json_decode($info->marry_prove))) {
|
|
|
+ $info->marry_prove = json_decode($info->marry_prove);
|
|
|
+ $photo_data = [];
|
|
|
+ foreach ($info->marry_prove as $k => $v) {
|
|
|
+ $photo_data[] = [
|
|
|
+ 'alt' => $v->name,
|
|
|
+ 'pid' => $v->uid,
|
|
|
+ 'src' => $v->response->path,
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $photos['marry_prove'] = [
|
|
|
+ 'title' => '婚姻证明',
|
|
|
+ 'id' => 1,
|
|
|
+ 'start' => 0,
|
|
|
+ 'data' => $photo_data,
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ $info->marry_prove = [];
|
|
|
+ }
|
|
|
+ if (!empty(json_decode($info->household_register))) {
|
|
|
+ $info->household_register = json_decode($info->household_register);
|
|
|
+ $photo_data = [];
|
|
|
+ foreach ($info->household_register as $k => $v) {
|
|
|
+ $photo_data[] = [
|
|
|
+ 'alt' => $v->name,
|
|
|
+ 'pid' => $v->uid,
|
|
|
+ 'src' => $v->response->path,
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $photos['household_register'] = [
|
|
|
+ 'title' => '户口本',
|
|
|
+ 'id' => 1,
|
|
|
+ 'start' => 0,
|
|
|
+ 'data' => $photo_data,
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ $info->household_register = [];
|
|
|
+ }
|
|
|
+ if (!empty(json_decode($info->work_prove))) {
|
|
|
+ $info->work_prove = json_decode($info->work_prove);
|
|
|
+ $photo_data = [];
|
|
|
+ foreach ($info->work_prove as $k => $v) {
|
|
|
+ $photo_data[] = [
|
|
|
+ 'alt' => $v->name,
|
|
|
+ 'pid' => $v->uid,
|
|
|
+ 'src' => $v->response->path,
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ $photos['work_prove'] = [
|
|
|
+ 'title' => '在职证明',
|
|
|
+ 'id' => 1,
|
|
|
+ 'start' => 0,
|
|
|
+ 'data' => $photo_data,
|
|
|
+ ];
|
|
|
+ } else {
|
|
|
+ $info->work_prove = [];
|
|
|
+ }
|
|
|
+ $html = view('admin.ajax.buy_house_detail')->with(['info' => $info, 'photos' => $photos])->render();
|
|
|
+ return response()->json(['code' => 1, 'data' => $html]);
|
|
|
+ }
|
|
|
+}
|