Browse Source

刚需购房

linwu 3 năm trước cách đây
mục cha
commit
acc436cfa5
23 tập tin đã thay đổi với 551 bổ sung358 xóa
  1. 16 4
      app/Admin/Controllers/Content/BuyHouseBlacklistController.php
  2. 79 3
      app/Admin/Controllers/Content/BuyHouseController.php
  3. 25 96
      app/Admin/Controllers/Content/BuyHouseJcController.php
  4. 27 98
      app/Admin/Controllers/Content/BuyHouseRsController.php
  5. 28 20
      app/Admin/Controllers/Content/BuyHouseZjController.php
  6. 30 84
      app/Admin/Controllers/Content/BuyHouseZrController.php
  7. 4 1
      app/Admin/Exports/Content/HouseApplyJcExport.php
  8. 15 2
      app/Admin/Exports/Content/HouseApplyRsExport.php
  9. 4 1
      app/Admin/Exports/Content/HouseApplyZjExport.php
  10. 4 1
      app/Admin/Exports/Content/HouseApplyZrExport.php
  11. 2 0
      app/Admin/routes.php
  12. 13 0
      app/Http/Controllers/Api/Crontab/OneHourController.php
  13. 23 16
      app/Http/Controllers/Web/Content/BuyhouseController.php
  14. 5 3
      public/themes/default/views/app/content/buyhouse/list.blade.php
  15. 6 0
      public/themes/default/views/app/content/buyhouse/login.blade.php
  16. 62 26
      resources/views/admin/ajax/buy_house_detail.blade.php
  17. 10 1
      resources/views/admin/content/buy_house.blade.php
  18. 49 0
      resources/views/admin/content/buy_house_blacklist.blade.php
  19. 40 0
      resources/views/admin/content/buy_house_image.blade.php
  20. 0 1
      resources/views/admin/content/buy_house_rs.blade.php
  21. 2 0
      resources/views/admin/content/export_house_apply.blade.php
  22. 107 0
      resources/views/admin/content/export_house_result.blade.php
  23. 0 1
      resources/views/admin/personalTalents/index.blade.php

+ 16 - 4
app/Admin/Controllers/Content/BuyHouseBlacklistController.php

@@ -46,15 +46,16 @@ class BuyHouseBlacklistController extends Controller
         $grid->mobile('联系电话');
         $grid->email('邮箱');
         $grid->id_card('证件号');
+        $grid->end_time('拉黑截止时间');
         $grid->status('状态')->display(function () use ($status_text) {
             return $status_text[$this->status];
         });
 
         $grid->actions(function ($actions) {
             if ($actions->row['status'] == 1) {
-                $actions->append("<a href='".admin_base_path('content/buy_house_blacklist/status')."?id={$actions->row['id']}&status=2' class='btn btn-danger btn-xs status'>拉黑</a>");
+                $actions->append("<a href='javascript:set_black({$actions->row['id']})' class='btn btn-danger btn-xs status'>拉黑</a>");
             } else {
-                $actions->append("<a href='".admin_base_path('content/buy_house_blacklist/status')."?id={$actions->row['id']}&status=1' class='btn btn-primary btn-xs status'>取消拉黑</a>");
+                $actions->append("<a href='" . admin_base_path('content/buy_house_blacklist/status') . "?id={$actions->row['id']}&status=1' class='btn btn-primary btn-xs status'>取消拉黑</a>");
             }
         });
 
@@ -79,6 +80,7 @@ class BuyHouseBlacklistController extends Controller
      */
     public function status(Request $request)
     {
+        //接收参数
         $id     = $request->id;
         $status = $request->status;
         $url    = empty($request->url) ? admin_base_path('content/buy_house_blacklist') : $request->url;
@@ -86,12 +88,22 @@ class BuyHouseBlacklistController extends Controller
             admin_toastr('数据异常', 'error');
             return redirect(admin_base_path('content/buy_house_blacklist'));
         }
+
+        //更新数据
+        $update = ['status' => $status];
+        if ($status == 2) {
+            $end_time           = $request->end_time;
+            $update['end_time'] = $end_time;
+        } else {
+            $update['end_time'] = null;
+        }
         $result = TalentHousePeople::where('id', '=', $id)
-            ->update(['status' => $status]);
+            ->update($update);
+
         if ($result) {
             admin_toastr('审核成功', 'success');
         } else {
-            admin_toastr('该信息不存在或已审核', 'error');
+            admin_toastr('该信息不存在或已操作', 'error');
         }
 
         return redirect($url);

+ 79 - 3
app/Admin/Controllers/Content/BuyHouseController.php

@@ -12,6 +12,7 @@ use Encore\Admin\Form;
 use Encore\Admin\Grid;
 use Encore\Admin\Layout\Content;
 use Illuminate\Http\Request;
+use Illuminate\Support\Facades\DB;
 
 class BuyHouseController extends Controller
 {
@@ -74,7 +75,6 @@ class BuyHouseController extends Controller
 
         $grid->model()->orderBy('updated_at', 'DESC');
 
-        $status_text = $this->house_status;
         $grid->id('ID');
         $grid->name('项目名称');
         $grid->small_img('缩略图')->display(function () {
@@ -120,6 +120,10 @@ class BuyHouseController extends Controller
                 $actions->append("&nbsp;<button class='btn btn-default btn-xs select_house' data-id=" . $actions->row['id'] . ">选房顺序号</button>");
                 $actions->append("&nbsp;<button class='btn btn-warning btn-xs sync' data-id=" . $actions->row['id'] . ">同步到选房系统</button>");
             }
+            if (strtotime($actions->row['supply_time']) <= time()) {
+                $actions->append("&nbsp;<button class='btn btn-primary btn-xs export_pass' data-id=" . $actions->row['id'] . ">导出通过名单</button>");
+                $actions->append("&nbsp;<button class='btn btn-danger btn-xs export_no_pass' data-id=" . $actions->row['id'] . ">导出不通过名单</button>");
+            }
         });
 
         $grid->filter(function ($filter) {
@@ -328,8 +332,8 @@ class BuyHouseController extends Controller
                         $data_item['card2'] = $fa['idcard'] == '无' ? '' : $fa['idcard'];
                     } else {
                         if ($fa['realname'] != '无') {
-                            $child_names[] = $fa['realname'];
-                            $child_cards[] = $fa['idcard'];
+                            $child_names[] = $fa['realname'] == '无' ? '' : $fa['realname'];
+                            $child_cards[] = $fa['idcard'] == '无' ? '' : $fa['idcard'];
                         }
                     }
                 }
@@ -372,4 +376,76 @@ class BuyHouseController extends Controller
             return response()->json(['code' => 0, 'content' => $ret['msg']]);
         }
     }
+
+    /**
+     * 导出
+     */
+    public function export(Request $request)
+    {
+        //数据获取
+        $id     = $request->id;
+        $status = $request->status;
+        $house  = TalentHouse::find($id);
+        $query  = TalentHouseApply::with(['house', 'idcard'])
+            ->where('house_id', $id)
+            ->where('is_back', 2)
+            ->where('is_draft', 2)
+            ->orderByRaw(DB::raw("FIELD(talent_level,'第一层次','第二层次','第三层次','第四层次','第五层次','第六层次','第七层次') asc"));
+        if ($status == 1) {
+            $filename = '审核通过.xls';
+            $query    = $query->whereIn('status', [1, 3]);
+        } else {
+            $filename = '审核不通过.xls';
+            $query    = $query->where('status', 2);
+        }
+        $data = $query->get();
+        if ($data->isEmpty()) {
+            return '暂无数据';
+        }
+
+
+        //数据处理
+        $status = ['', '待审核', '审核通过', '审核驳回', '审核不通过'];
+        $marry  = ['未知', '未婚', '已婚', '离异', '丧偶'];
+        $type   = ['', '优秀人才', '集成电路优秀人才'];
+        $no     = 1;
+        foreach ($data as $row) {
+            $family = empty($row->family) ? '' : json_decode($row->family, true);
+            if (!empty($family)) {
+                $relation = [];
+                $child    = [];
+                $id_card  = [];
+                foreach ($family as $v) {
+                    $relation[] = $v['relation'];
+                    $child[]    = $v['realname'];
+                    $id_card[]  = $v['idcard'];
+                }
+                $row['relation']         = implode('/', $relation);
+                $row['relation_name']    = implode('/', $child);
+                $row['relation_id_card'] = implode('/', $id_card);
+            }
+
+            $row['no'] = $no;
+            $no++;
+            $row['marry_text'] = $marry[$row['marry']];
+            $row['type_text']  = $type[$row['type']];
+        }
+
+        header("Content-type: application/vnd.ms-excel; charset=utf-8");
+        header("Content-Disposition: attachment; filename=$filename");
+        $view = view('admin.content.export_house_result')->with(['data' => $data, 'house' => $house, 'status' => $status]);
+        $str  = response($view)->getContent();
+        echo $str;
+        exit;
+    }
+
+    /**
+     * 图片
+     */
+    public function image(Request $request)
+    {
+        $src = $request->src;
+
+        return view('admin.content.buy_house_image',['src'=>$src]);
+    }
 }

+ 25 - 96
app/Admin/Controllers/Content/BuyHouseJcController.php

@@ -18,7 +18,7 @@ class BuyHouseJcController extends Controller
 {
     use HasResourceActions;
 
-    private $status = ['未知', '待审核', '审核通过', '审核驳回'];
+    private $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
     private $marry = ['未知', '未婚', '已婚', '离异', '丧偶'];
 
     /**
@@ -60,16 +60,14 @@ class BuyHouseJcController extends Controller
         $grid->rs_check_comment('备注')->style('max-width:400px');
 
         $grid->actions(function ($actions) {
-            if ($actions->row['rs_check_status'] == 1) {
-                $actions->append("<button class='btn btn-primary btn-xs applyaudit' data-code=" . $actions->row['id'] . ">审核</button>");
-            }
-            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情</button>");
+            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情审核</button>");
         });
 
         $grid->filter(function ($filter) {
             $filter->disableIdFilter();
+            $filter->like('name', '姓名');
             $filter->equal('house_id', '房源')->select(TalentHouse::all()->pluck('name', 'id'));
-            $status_option = ['全部', '待审核', '审核通过', '审核驳回'];
+            $status_option = ['全部', '待审核', '审核通过', '审核驳回', '审核不通过'];
             $filter->where(function ($query) {
                 if ($this->input > 0) {
                     $query->where('rs_check_status', '=', $this->input);
@@ -96,16 +94,17 @@ class BuyHouseJcController extends Controller
             admin_toastr('数据异常', 'error');
             return redirect(admin_base_path('content/buy_house_jc'));
         }
-        $result = TalentHouseApply::where('id', '=', $id)
-            ->update([
-                'rs_check_status'  => $status,
-                'rs_check_comment' => $reason,
-                'rs_check_time'    => date('Y-m-d H:i:s'),
-                'status'           => $status == 2 ? 1 : 3,
-            ]);
+        $apply                   = TalentHouseApply::find($id);
+        $apply->rs_check_status  = $status;
+        $apply->rs_check_comment = $reason;
+        $apply->rs_check_time    = date('Y-m-d H:i:s');
+        $apply->status           = $status == 2 ? 1 : $status;
+        if ($status == 4) {
+            $apply->is_sock = 2;
+        }
+        $result = $apply->save();
 
         //日志
-        $apply = TalentHouseApply::find($id);
         $house = TalentHouse::find($apply['house_id']);
         $admin = Admin::user();
         $log   = [
@@ -144,90 +143,20 @@ class BuyHouseJcController extends Controller
         $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,
-                ];
+        //json
+        $json = ['certificates', 'marry_prove', 'household_register', 'work_prove'];
+        foreach ($json as $v) {
+            if (!empty(json_decode($info->$v))) {
+                $info->$v = json_decode($info->$v);
+            } else {
+                $info->$v = [];
             }
-            $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, 'status' => $this->status])->render();
+
+        $with                 = ['info' => $info, 'form_url' => route('content.buy_house_jc.audit'), 'status' => $this->status];
+        $with['check_status'] = $info['rs_check_status'];
+
+        $html = view('admin.ajax.buy_house_detail')->with($with)->render();
         return response()->json(['code' => 1, 'data' => $html]);
     }
 }

+ 27 - 98
app/Admin/Controllers/Content/BuyHouseRsController.php

@@ -18,7 +18,7 @@ class BuyHouseRsController extends Controller
 {
     use HasResourceActions;
 
-    private $status = ['未知', '待审核', '审核通过', '审核驳回'];
+    private $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
     private $marry = ['未知', '未婚', '已婚', '离异', '丧偶'];
 
     /**
@@ -44,7 +44,7 @@ class BuyHouseRsController extends Controller
     {
         $grid = new Grid(new TalentHouseApply());
 
-        $grid->model()->with(['house','idcard'])->where('type', 1)->where('is_back', 2)->where('is_draft', 2)->orderBy('rs_check_status', 'ASC');
+        $grid->model()->with(['house', 'idcard'])->where('type', 1)->where('is_back', 2)->where('is_draft', 2)->orderBy('rs_check_status', 'ASC');
 
         $status_text = $this->status;
         $grid->id('ID');
@@ -60,16 +60,14 @@ class BuyHouseRsController extends Controller
         $grid->rs_check_comment('备注')->style('max-width:400px');
 
         $grid->actions(function ($actions) {
-            if ($actions->row['rs_check_status'] == 1) {
-                $actions->append("<button class='btn btn-primary btn-xs applyaudit' data-code=" . $actions->row['id'] . ">审核</button>");
-            }
-            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情</button>");
+            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情审核</button>");
         });
 
         $grid->filter(function ($filter) {
             $filter->disableIdFilter();
+            $filter->like('name', '姓名');
             $filter->equal('house_id', '房源')->select(TalentHouse::all()->pluck('name', 'id'));
-            $status_option = ['全部', '待审核', '审核通过', '审核驳回'];
+            $status_option = ['全部', '待审核', '审核通过', '审核驳回', '审核不通过'];
             $filter->where(function ($query) {
                 if ($this->input > 0) {
                     $query->where('rs_check_status', '=', $this->input);
@@ -96,16 +94,17 @@ class BuyHouseRsController extends Controller
             admin_toastr('数据异常', 'error');
             return redirect(admin_base_path('content/buy_house_rs'));
         }
-        $result = TalentHouseApply::where('id', '=', $id)
-            ->update([
-                'rs_check_status'  => $status,
-                'rs_check_comment' => $reason,
-                'rs_check_time'    => date('Y-m-d H:i:s'),
-                'status'           => $status == 2 ? 1 : 3,
-            ]);
+        $apply                   = TalentHouseApply::find($id);
+        $apply->rs_check_status  = $status;
+        $apply->rs_check_comment = $reason;
+        $apply->rs_check_time    = date('Y-m-d H:i:s');
+        $apply->status           = $status == 2 ? 1 : $status;
+        if ($status == 4) {
+            $apply->is_sock = 2;
+        }
+        $result = $apply->save();
 
         //日志
-        $apply = TalentHouseApply::find($id);
         $house = TalentHouse::find($apply['house_id']);
         $admin = Admin::user();
         $log   = [
@@ -121,7 +120,7 @@ class BuyHouseRsController extends Controller
 
         //审核不通过发送短信
         if ($status == 3) {
-            $time  = strtotime($house['supply_time']);
+            $time = strtotime($house['supply_time']);
             $smsService->sendSms($apply['mobile'], 'sms_buyhouse_supply', ['name' => $apply['name'], 'month' => date('m', $time), 'day' => date('d', $time)]);
         }
 
@@ -144,90 +143,20 @@ class BuyHouseRsController extends Controller
         $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,
-                ];
+        //json
+        $json = ['certificates', 'marry_prove', 'household_register', 'work_prove'];
+        foreach ($json as $v) {
+            if (!empty(json_decode($info->$v))) {
+                $info->$v = json_decode($info->$v);
+            } else {
+                $info->$v = [];
             }
-            $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, 'status' => $this->status])->render();
+
+        $with                 = ['info' => $info, 'form_url' => route('content.buy_house_rs.audit'), 'status' => $this->status];
+        $with['check_status'] = $info['rs_check_status'];
+
+        $html = view('admin.ajax.buy_house_detail')->with($with)->render();
         return response()->json(['code' => 1, 'data' => $html]);
     }
 }

+ 28 - 20
app/Admin/Controllers/Content/BuyHouseZjController.php

@@ -18,7 +18,7 @@ class BuyHouseZjController extends Controller
 {
     use HasResourceActions;
 
-    private $status = ['未知', '待审核', '审核通过', '审核驳回'];
+    private $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
     private $marry = ['未知', '未婚', '已婚', '离异', '丧偶'];
 
     /**
@@ -44,7 +44,7 @@ class BuyHouseZjController extends Controller
     {
         $grid = new Grid(new TalentHouseApply());
 
-        $grid->model()->with(['house','idcard'])->where('is_back',2)->where('rs_check_status',2)->orderBy('zj_check_status', 'ASC');
+        $grid->model()->with(['house', 'idcard'])->where('is_back', 2)->where('rs_check_status', 2)->orderBy('zj_check_status', 'ASC');
 
         $status_text = $this->status;
         $grid->id('ID');
@@ -60,16 +60,14 @@ class BuyHouseZjController extends Controller
         $grid->zj_check_comment('备注')->style('max-width:400px');
 
         $grid->actions(function ($actions) {
-            if ($actions->row['zj_check_status'] == 1) {
-                $actions->append("<button class='btn btn-primary btn-xs applyaudit' data-code=" . $actions->row['id'] . ">审核</button>");
-            }
-            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情</button>");
+            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情审核</button>");
         });
 
         $grid->filter(function ($filter) {
             $filter->disableIdFilter();
+            $filter->like('name', '姓名');
             $filter->equal('house_id', '房源')->select(TalentHouse::all()->pluck('name', 'id'));
-            $status_option = ['全部', '待审核', '审核通过', '审核驳回'];
+            $status_option = ['全部', '待审核', '审核通过', '审核驳回', '审核不通过'];
             $filter->where(function ($query) {
                 if ($this->input > 0) {
                     $query->where('zj_check_status', '=', $this->input);
@@ -96,16 +94,22 @@ class BuyHouseZjController extends Controller
             admin_toastr('数据异常', 'error');
             return redirect(admin_base_path('content/buy_house_zj'));
         }
-        $result = TalentHouseApply::where('id', '=', $id)
-            ->update([
-                'zj_check_status'  => $status,
-                'zj_check_comment' => $reason,
-                'zj_check_time'    => date('Y-m-d H:i:s'),
-                'status'           => $status,
-            ]);
+        $apply                   = TalentHouseApply::find($id);
+        $apply->zj_check_status  = $status;
+        $apply->zj_check_comment = $reason;
+        $apply->zj_check_time    = date('Y-m-d H:i:s');
+        if ($apply->status == 4) {
+            $apply->is_sock = 2;
+        } else {
+            if ($apply->zr_check_status == 2) {
+                $apply->status = $status;
+            } else {
+                $apply->status = $status == 2 ? 1 : $status;
+            }
+        }
+        $result = $apply->save();
 
         //日志
-        $apply = TalentHouseApply::find($id);
         $house = TalentHouse::find($apply['house_id']);
         $admin = Admin::user();
         $log   = [
@@ -121,7 +125,7 @@ class BuyHouseZjController extends Controller
 
         //审核不通过发送短信
         if ($status == 3) {
-            $time  = strtotime($house['supply_time']);
+            $time = strtotime($house['supply_time']);
             $smsService->sendSms($apply['mobile'], 'sms_buyhouse_supply', ['name' => $apply['name'], 'month' => date('m', $time), 'day' => date('d', $time)]);
         }
 
@@ -139,9 +143,9 @@ class BuyHouseZjController extends Controller
      */
     public function detail(Request $request)
     {
-        $id   = $request->id;
-        $info = TalentHouseApply::with('idcard')->where('id',$id)->first();
-        $info->family = json_decode($info->family);
+        $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相册层
@@ -227,7 +231,11 @@ class BuyHouseZjController extends Controller
         } else {
             $info->work_prove = [];
         }
-        $html = view('admin.ajax.buy_house_detail')->with(['info' => $info, 'photos' => $photos, 'status' => $this->status])->render();
+
+        $with                 = ['info' => $info, 'form_url' => route('content.buy_house_zj.audit'), 'status' => $this->status];
+        $with['check_status'] = $info['zj_check_status'];
+
+        $html = view('admin.ajax.buy_house_detail')->with($with)->render();
         return response()->json(['code' => 1, 'data' => $html]);
     }
 }

+ 30 - 84
app/Admin/Controllers/Content/BuyHouseZrController.php

@@ -18,7 +18,7 @@ class BuyHouseZrController extends Controller
 {
     use HasResourceActions;
 
-    private $status = ['未知', '待审核', '审核通过', '审核驳回'];
+    private $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
     private $marry = ['未知', '未婚', '已婚', '离异', '丧偶'];
 
     /**
@@ -44,7 +44,7 @@ class BuyHouseZrController extends Controller
     {
         $grid = new Grid(new TalentHouseApply());
 
-        $grid->model()->with(['house','idcard'])->where('is_back',2)->where('zj_check_status',2)->orderBy('zr_check_status', 'ASC');
+        $grid->model()->with(['house', 'idcard'])->where('is_back', 2)->where('rs_check_status', 2)->orderBy('zr_check_status', 'ASC');
 
         $status_text = $this->status;
         $grid->id('ID');
@@ -57,19 +57,17 @@ class BuyHouseZrController extends Controller
         $grid->zr_check_status('状态')->display(function () use ($status_text) {
             return $status_text[$this->zr_check_status];
         });
-        $grid->zr_check_status('备注')->style('max-width:400px');
+        $grid->zr_check_comment('备注')->style('max-width:400px');
 
         $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("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情</button>");
+            $actions->append("&nbsp;<button class='btn btn-primary btn-xs detail' id=" . $actions->row['id'] . ">详情审核</button>");
         });
 
         $grid->filter(function ($filter) {
             $filter->disableIdFilter();
+            $filter->like('name', '姓名');
             $filter->equal('house_id', '房源')->select(TalentHouse::all()->pluck('name', 'id'));
-            $status_option = ['全部', '待审核', '审核通过', '审核驳回'];
+            $status_option = ['全部', '待审核', '审核通过', '审核驳回', '审核不通过'];
             $filter->where(function ($query) {
                 if ($this->input > 0) {
                     $query->where('zr_check_status', '=', $this->input);
@@ -96,16 +94,22 @@ class BuyHouseZrController extends Controller
             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,
-            ]);
+        $apply                   = TalentHouseApply::find($id);
+        $apply->zr_check_status  = $status;
+        $apply->zr_check_comment = $reason;
+        $apply->zr_check_time    = date('Y-m-d H:i:s');
+        if ($apply->status == 4) {
+            $apply->is_sock = 2;
+        } else {
+            if ($apply->zj_check_status == 2) {
+                $apply->status = $status;
+            } else {
+                $apply->status = $status == 2 ? 1 : $status;
+            }
+        }
+        $result = $apply->save();
 
         //日志
-        $apply = TalentHouseApply::find($id);
         $house = TalentHouse::find($apply['house_id']);
         $admin = Admin::user();
         $log   = [
@@ -121,7 +125,7 @@ class BuyHouseZrController extends Controller
 
         //审核不通过发送短信
         if ($status == 3) {
-            $time  = strtotime($house['supply_time']);
+            $time = strtotime($house['supply_time']);
             $smsService->sendSms($apply['mobile'], 'sms_buyhouse_supply', ['name' => $apply['name'], 'month' => date('m', $time), 'day' => date('d', $time)]);
         }
 
@@ -139,95 +143,37 @@ class BuyHouseZrController extends Controller
      */
     public function detail(Request $request)
     {
-        $id   = $request->id;
-        $info = TalentHouseApply::with('idcard')->where('id',$id)->first();
-        $info->family = json_decode($info->family);
+        $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, 'status' => $this->status])->render();
+
+        $with                 = ['info' => $info, 'form_url' => route('content.buy_house_zr.audit'), 'status' => $this->status];
+        $with['check_status'] = $info['zr_check_status'];
+
+        $html = view('admin.ajax.buy_house_detail')->with($with)->render();
         return response()->json(['code' => 1, 'data' => $html]);
     }
 }

+ 4 - 1
app/Admin/Exports/Content/HouseApplyJcExport.php

@@ -24,8 +24,9 @@ class HouseApplyJcExport extends ViewExport
      */
     public function getView(Collection $data): View
     {
-        $status = ['未知', '待审核', '审核通过', '审核驳回'];
+        $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
         $marry  = ['未知', '未婚', '已婚', '离异', '丧偶'];
+        $no     = 1;
         foreach ($data as $row) {
             $family = empty($row->family) ? '' : json_decode($row->family, true);
             if (!empty($family)) {
@@ -42,6 +43,8 @@ class HouseApplyJcExport extends ViewExport
                 $row['relation_id_card'] = implode('/', $id_card);
             }
 
+            $row['no'] = $no;
+            $no++;
             $row['status_text']   = $status[$row['rs_check_status']];
             $row['check_time']    = $row['rs_check_time'];
             $row['check_comment'] = $row['rs_check_comment'];

+ 15 - 2
app/Admin/Exports/Content/HouseApplyRsExport.php

@@ -24,8 +24,10 @@ class HouseApplyRsExport extends ViewExport
      */
     public function getView(Collection $data): View
     {
-        $status = ['未知', '待审核', '审核通过', '审核驳回'];
-        $marry  = ['未知', '未婚', '已婚', '离异', '丧偶'];
+        $status       = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
+        $marry        = ['未知', '未婚', '已婚', '离异', '丧偶'];
+        $talent_level = ['第一层次' => 1, '第二层次' => 2, '第三层次' => 3, '第四层次' => 4, '第五层次' => 5, '第六层次' => 6, '第七层次' => 7];
+
         foreach ($data as $row) {
             $family = empty($row->family) ? '' : json_decode($row->family, true);
             if (!empty($family)) {
@@ -46,6 +48,17 @@ class HouseApplyRsExport extends ViewExport
             $row['check_time']    = $row['rs_check_time'];
             $row['check_comment'] = $row['rs_check_comment'];
             $row['marry_text']    = $marry[$row['marry']];
+            $row['level_num']     = $talent_level[$row['talent_level']];
+        }
+
+        $data      = $data->toArray();
+        $level_num = array_column($data, 'level_num');
+        array_multisort($level_num, SORT_ASC, $data);
+
+        $no = 1;
+        foreach ($data as $k => $row) {
+            $data[$k]['no'] = $no;
+            $no++;
         }
 
         return view('admin.content.export_house_apply', ['data' => $data]);

+ 4 - 1
app/Admin/Exports/Content/HouseApplyZjExport.php

@@ -24,8 +24,9 @@ class HouseApplyZjExport extends ViewExport
      */
     public function getView(Collection $data): View
     {
-        $status = ['未知', '待审核', '审核通过', '审核驳回'];
+        $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
         $marry  = ['未知', '未婚', '已婚', '离异', '丧偶'];
+        $no     = 1;
         foreach ($data as $row) {
             $family = empty($row->family) ? '' : json_decode($row->family, true);
             if (!empty($family)) {
@@ -42,6 +43,8 @@ class HouseApplyZjExport extends ViewExport
                 $row['relation_id_card'] = implode('/', $id_card);
             }
 
+            $row['no'] = $no;
+            $no++;
             $row['status_text']   = $status[$row['zj_check_status']];
             $row['check_time']    = $row['zj_check_time'];
             $row['check_comment'] = $row['zj_check_comment'];

+ 4 - 1
app/Admin/Exports/Content/HouseApplyZrExport.php

@@ -24,8 +24,9 @@ class HouseApplyZrExport extends ViewExport
      */
     public function getView(Collection $data): View
     {
-        $status = ['未知', '待审核', '审核通过', '审核驳回'];
+        $status = ['未知', '待审核', '审核通过', '审核驳回', '审核不通过'];
         $marry  = ['未知', '未婚', '已婚', '离异', '丧偶'];
+        $no     = 1;
         foreach ($data as $row) {
             $family = empty($row->family) ? '' : json_decode($row->family, true);
             if (!empty($family)) {
@@ -42,6 +43,8 @@ class HouseApplyZrExport extends ViewExport
                 $row['relation_id_card'] = implode('/', $id_card);
             }
 
+            $row['no'] = $no;
+            $no++;
             $row['status_text']   = $status[$row['zr_check_status']];
             $row['check_time']    = $row['zr_check_time'];
             $row['check_comment'] = $row['zr_check_comment'];

+ 2 - 0
app/Admin/routes.php

@@ -321,6 +321,8 @@ Route::group([
         $router->resource('rcstfwlt', RcstfwltController::class);
 
         //人才购房
+        $router->get('buy_house/image', 'BuyHouseController@image')->name('content.buy_house.image');
+        $router->get('buy_house/export', 'BuyHouseController@export')->name('content.buy_house.export');
         $router->resource('buy_house', BuyHouseController::class)->names('content.buy_house');
         $router->any('buy_house/sock', 'BuyHouseController@sock')->name('content.buy_house.sock');
         $router->any('buy_house/sync', 'BuyHouseController@sync')->name('content.buy_house.sync');

+ 13 - 0
app/Http/Controllers/Api/Crontab/OneHourController.php

@@ -12,6 +12,7 @@ class OneHourController extends ApiBaseController
     public function index()
     {
         $this->clearSock();
+        $this->removeBlacklist();
     }
 
     /**
@@ -32,4 +33,16 @@ class OneHourController extends ApiBaseController
 
         return true;
     }
+
+    /**
+     * 人才购房 - 解除黑名单
+     */
+    private function removeBlacklist()
+    {
+        TalentHousePeople::where('end_time', '<', date('Y-m-d H:i:s'))
+            ->where('status', 2)
+            ->update(['status' => 1, 'end_time' => null]);
+
+        return true;
+    }
 }

+ 23 - 16
app/Http/Controllers/Web/Content/BuyhouseController.php

@@ -21,9 +21,9 @@ class BuyhouseController extends WebBaseController
         '青阳街道', '梅岭街道', '西园街道', '罗山街道', '灵源街道', '新塘街道', '陈埭镇', '池店镇', '安海镇', '磁灶镇', '内坑镇', '紫帽镇', '东石镇', '永和镇', '英林镇', '金井镇', '龙湖镇', '深沪镇', '西滨镇',
     ];
     private $house_status = ['未知', '未开始', '申报中', '已结束'];
-    private $tag_status = ['', 'info', 'success', 'danger'];
-    private $apply_status = ['未知', '审核中', '已通过', '已拒绝'];
-    private $check_type = ['', 'warning', 'success', 'error'];
+    private $tag_status = ['', 'info', 'success', 'danger', 'danger'];
+    private $apply_status = ['未知', '审核中', '审核通过', '审核驳回', '审核不通过'];
+    private $check_type = ['', 'warning', 'success', 'error', 'error'];
     private $talent_level = ['不是人才', '第一层次', '第二层次', '第三层次', '第四层次', '第五层次', '第六层次', '第七层次'];
     protected $articleService;
 
@@ -58,7 +58,7 @@ class BuyhouseController extends WebBaseController
         $return_data['house'] = $house;
 
         //新闻
-        $news = Article::where('type_id', 56)->where('is_display', 1)->select(['id', 'title', 'updated_at','created_at'])->orderBy('list_order', 'desc')->limit(6)->get();
+        $news = Article::where('type_id', 56)->where('is_display', 1)->select(['id', 'title', 'updated_at', 'created_at'])->orderBy('list_order', 'desc')->limit(6)->get();
         foreach ($news as $v) {
             $v['created_at_text'] = date('Y-m-d', strtotime($v['created_at']));
             $v['updated_at_text'] = date('Y-m-d', strtotime($v['updated_at']));
@@ -235,17 +235,21 @@ class BuyhouseController extends WebBaseController
                     }
                     $check['comment'] = $apply['rs_check_status'] == 1 ? '' : $apply['rs_check_comment'];
                     $check['type']    = $this->check_type[$apply['rs_check_status']];
-                } elseif ($apply['zj_check_status'] != 2) {
-                    $check['status_text'] = '住建局' . $this->apply_status[$apply['zj_check_status']];
-                    $check['comment']     = $apply['zj_check_status'] == 1 ? '' : $apply['zj_check_comment'];
-                    $check['type']        = $this->check_type[$apply['zj_check_status']];
-                } elseif ($apply['zr_check_status'] != 2) {
-                    $check['status_text'] = '自然资源局' . $this->apply_status[$apply['zr_check_status']];
-                    $check['comment']     = $apply['zr_check_status'] == 1 ? '' : $apply['zr_check_comment'];
-                    $check['type']        = $this->check_type[$apply['zr_check_status']];
+                } elseif ($apply['zj_check_status'] != 2 || $apply['zr_check_status'] != 2) {
+                    $check['status_text'] = '住建局' . $this->apply_status[$apply['zj_check_status']] . '<br/>' . '自然资源局' . $this->apply_status[$apply['zr_check_status']];
+                    $comment              = [];
+                    if ($apply['zj_check_status'] != 1 && !empty($apply['zj_check_comment'])) {
+                        $comment[] = '住建局:' . $apply['zj_check_comment'];
+                    }
+                    if ($apply['zr_check_status'] != 1 && !empty($apply['zr_check_comment'])) {
+                        $comment[] = '自然资源局:' . $apply['zr_check_comment'];
+                    }
+                    $check['comment'] = implode(';', $comment);
+                    $check_status     = $apply['zj_check_status'] > $apply['zr_check_status'] ? $apply['zj_check_status'] : $apply['zr_check_status'];
+                    $check['type']    = $this->check_type[$check_status];
                 } else {
                     $check['title']       = '';
-                    $check['status_text'] = $this->apply_status[$apply['zj_check_status']];
+                    $check['status_text'] = '审核通过';
                     $check['comment']     = '';
                     $check['type']        = 'success';
                 }
@@ -406,9 +410,6 @@ class BuyhouseController extends WebBaseController
         if (empty($info)) {
             return response()->json(['status' => 0, 'msg' => '提交格式有误']);
         }
-        if ($info['status'] == 2) {
-            return response()->json(['status' => 0, 'msg' => '审核通过的信息无法修改']);
-        }
 
         //房源消息
         $house           = TalentHouse::find($info['house_id']);
@@ -466,6 +467,9 @@ class BuyhouseController extends WebBaseController
         if ($info->zj_check_status == 3) {
             $info->zj_check_status = 1;
         }
+        if ($info->zr_check_status == 3) {
+            $info->zr_check_status = 1;
+        }
         if ($info->is_draft == 1) {
             $info->is_draft = 2;
         }
@@ -498,6 +502,9 @@ class BuyhouseController extends WebBaseController
         if ($apply['status'] == 2) {
             return response()->json(['status' => 0, 'msg' => '已通过审核的申报无法撤消']);
         }
+        if ($apply['status'] == 4) {
+            return response()->json(['status' => 0, 'msg' => '审核不通过的申报无法撤消']);
+        }
 
         $house = TalentHouse::find($apply['house_id']);
         if (strtotime($house['supply_time']) < time()) {

+ 5 - 3
public/themes/default/views/app/content/buyhouse/list.blade.php

@@ -205,10 +205,12 @@
         {{--审核状态--}}
         @if($check)
             <el-alert
-                    title="{{$check['status_text']}}"
-                    type="{{$check['type']}}"
-                    description="{{$check['comment']}}"
+                    type="{!! $check['type'] !!}"
+                    description="{!! $check['comment'] !!}"
                     style="margin:20px auto;width:1200px;">
+                <template slot='title'>
+                    {!! $check['status_text'] !!}
+                </template>
             </el-alert>
         @endif
 

+ 6 - 0
public/themes/default/views/app/content/buyhouse/login.blade.php

@@ -299,6 +299,12 @@
                 <el-button type="primary" @click="perfect">确 定</el-button>
             </div>
         </el-dialog>
+        <div style="text-align:center;">
+            <p>市人社局:0595-85633128</p>
+            <p>市住建局房屋交易中心:0595-85621802</p>
+            <p>市自然资源局档案室:0595-68106913</p>
+            <p>福建省集成电路产业园区建设筹备工作组人才科技组:0595-82250007</p>
+        </div>
     </div>
 @endsection
 

+ 62 - 26
resources/views/admin/ajax/buy_house_detail.blade.php

@@ -11,6 +11,7 @@
         width: 100px;
         height: 100px;
     }
+    .layui-layer-btn {background:white;}
 </style>
 <script src="{{ theme_asset('statistics/js/layer/layer.js') }}"></script>
 <table cellspacing="0" width="100%" class="table_form">
@@ -75,7 +76,7 @@
             <div style="padding: 10px 0;display:flex;flex-wrap:wrap;">
                 @foreach($info['certificates'] as $k => $v)
                     <div style="padding:10px;width:25%;">
-                        <img class="attchment" data-key="{{$k}}" data-name="certificates" src="{{ $v->response->path }}" />
+                        <img class="attchment" data-name="{{$v->response->filename}}" src="{{ $v->response->path }}" />
                         <p>{{$v->response->filename}}</p>
                     </div>
                 @endforeach
@@ -290,33 +291,38 @@
         </td>
     </tr>
 </table>
+@if($check_status == 1)
+<form action="{{$form_url}}" id="form" method="post">
+    <table cellspacing="0" width="100%" class="table_form">
+        <input type="hidden" name="_token" value="{{csrf_token()}}">
+        <input type="hidden" name="id" value="{{$info['id']}}">
+        <tr style="height:52px;page-break-inside:avoid">
+            <td colspan='4'>
+                <h1>审核</h1>
+            </td>
+        </tr>
+        <tr style="height:52px;page-break-inside:avoid">
+            <td valign="center">审核状态</td>
+            <td valign="center">
+                <input type="radio" name="status" value="2" />审核通过  
+                <input type="radio" name="status" value="3" />审核驳回  
+                <input type="radio" name="status" value="4" />审核不通过  
+            </td>
+            <td valign="center">审核备注</td>
+            <td valign="center" style="padding-top:5px;">
+                <textarea name="reason" id="" cols="40" rows="5" style="width:100%;"></textarea>
+            </td>
+        </tr>
+        <tr style="height:52px;page-break-inside:avoid">
+            <td colspan='4' style="text-align:center;">
+                <input type="submit" value="提交" style="width:100px;" class="btn-primary"/>
+            </td>
+        </tr>
+    </table>
+</form>
+@endif
 
 <script>
-    let photos = {!!json_encode($photos)!!};
-    $('.attchment').click(function(){
-        let key = $(this).data('key');
-        let name = $(this).data('name');
-        let photo = photos[name];
-        photo.start = key;
-        layer.photos({
-            photos: photo,
-            tab: function () {
-                num = 0;
-                $(".layui-layer-photos").append('<div class="icon" style="position:relative;width:100%;text-align:center;top:-133px;cursor:pointer;">\n' +
-                    '\t\t<img src="{{ theme_asset('statistics/js/layer/skin/default/turn_left.png') }}" style="width:30px;height30px;">\n' +
-                    '\t</div>');
-            }
-        });
-    });
-
-    $(document).on("click", ".icon img", function(e) {
-        num = (num + 90) % 360;
-        $("#layui-layer-photos").css('transform', 'rotate(' + num + 'deg)');
-
-        //$(".layui-layer-phimg img").css('transform','rotate('+num+'deg)');此处只能旋转图片
-    });
-
-
     $(document).on("mousewheel DOMMouseScroll", ".layui-layer-phimg img", function(e) {
         var delta = (e.originalEvent.wheelDelta && (e.originalEvent.wheelDelta > 0 ? 1 : -1)) || // chrome & ie
             (e.originalEvent.detail && (e.originalEvent.detail > 0 ? -1 : 1)); // firefox
@@ -341,7 +347,37 @@
         image.width(w);
         imagep.height(h);
         imagep.width(w);
+    });
 
+    $('.attchment').click(function(){
+        let src = encodeURI($(this).attr('src'));
+        let title = $(this).data('name');
+        layer.open({
+            type: 2 //此处以iframe举例
+            ,title: title
+            ,area: ['600px', '500px']
+            ,shade: 0
+            ,maxmin: true
+            ,content: "{{ admin_url('content/buy_house/image') }}?src="+src
+            ,btn: ['旋转','缩放','关闭'] //只是为了演示
+            ,yes: function(index,layero){
+                var iframeWin = window[layero.find('iframe')[0]['name']];//得到iframe页的窗口对象
+                iframeWin.transform();
+                return false;
+            },
+            btn2: function(index,layero) {
+                var iframeWin = window[layero.find('iframe')[0]['name']];//得到iframe页的窗口对象
+                iframeWin.zoom();
+                return false;
+            },
+            btn3: function() {
+                layer.closeAll();
+            }
+            ,zIndex: layer.zIndex //重点1
+            ,success: function(layero){
+                layer.setTop(layero); //重点2
+            }
+        });
     });
 
 </script>

+ 10 - 1
resources/views/admin/content/buy_house.blade.php

@@ -96,9 +96,18 @@
     $('.close_modal').on('click',function () {
         $('#notice').addClass('out');
         $('#notice').css('display', 'none');
-    })
+    });
     $('.select_house').click(function(){
         let id = $(this).data('id');
         location.href = "{{admin_base_path('/content/buy_house_select/index')}}/"+id;
     });
+    //导出
+    $('.export_pass').on('click',function(){
+        let id = $(this).data('id');
+        window.open("{{route('content.buy_house.export')}}?id="+id+"&status=2");
+    });
+    $('.export_no_pass').on('click',function(){
+        let id = $(this).data('id');
+        window.open("{{route('content.buy_house.export')}}?id="+id+"&status=1");
+    });
 </script>

+ 49 - 0
resources/views/admin/content/buy_house_blacklist.blade.php

@@ -3,6 +3,37 @@
     p#vtip { display: none; position: absolute; padding: 10px; left: 5px; font-size: 0.8em; background-color: white; border: 1px solid #a6c9e2; -moz-border-radius: 5px; -webkit-border-radius: 5px; z-index: 9999 }
     p#vtip #vtipArrow { position: absolute; top: -10px; left: 5px }
 </style>
+<div class="modal fade" id="audit" tabindex="-1" role="dialog" aria-labelledby="ModalLabel">
+    <div class="modal-dialog" role="document">
+        <div class="modal-content">
+            <div class="modal-header">
+                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span>
+                </button>
+                <h4 class="modal-title" id="myModalLabel12">拉黑</h4>
+            </div>
+            <div class="modal-body">
+                <div class="modal-body">
+                    <form method="post" action="{{admin_base_path('content/buy_house_blacklist/status')}}" id="auditForm" class="form-horizontal" accept-charset="UTF-8" pjax-container="1" id="dialog-form-5cc19c85d0a5f">
+                        <div class="box-body fields-group">
+                            <div class="form-group  ">
+                                <label for="audit1" class="col-sm-4  control-label">拉黑截至时间</label>
+                                <div class="col-sm-6">
+                                    <input type="text" name="end_time" required class="form-control" value="" id="datetimepicker" placeholder="请选择时间">
+                                </div>
+                            </div>
+                        </div>
+                        <input type="hidden" name="status" value="2">
+                        <input type="hidden" name="id" id="id" value="" />
+                        <input type="hidden" name="_token" value="{{ csrf_token() }}">
+                    </form>
+                </div>
+                <div class="modal-footer">
+                    <button type="button" id="dialog-submit-5cc19c85d0a5f" class="btn btn-primary" data-loading-text="提交中..."><span class="glyphicon glyphicon-floppy-disk" aria-hidden="true"></span>确认</button>
+                </div>
+            </div>
+        </div>
+    </div>
+</div>
 <script>
     this.vtip = function() {
         this.xOffset = -10; // x distance from mouse
@@ -32,6 +63,7 @@
         );
 
     };
+
     $(document).ready(function() {
         vtip();
         $('select[name="parent_id"]').parent().parent().attr('id','parent_id_div');
@@ -51,6 +83,23 @@
         }else{
             $('#type_id_div').css('display','block');
         }
+
+        $('#datetimepicker').datetimepicker({
+            format: 'YYYY-MM-DD',
+            locale : moment().locale('zh-cn')
+        });
     });
 
+    $(".close").off().on('click', function () {
+        $(this).closest(".modal").removeClass('in');
+        $(this).closest(".modal").hide();
+    });
+    function set_black(id) {
+        $('#id').val(id);
+        $('#audit').addClass('in');
+        $('#audit').css('display', 'block');
+    }
+    $(document).off("click","#audit .btn-primary").on('click',"#audit .btn-primary",function () {
+        $('#auditForm').submit();
+    });
 </script>

+ 40 - 0
resources/views/admin/content/buy_house_image.blade.php

@@ -0,0 +1,40 @@
+<link rel="stylesheet" href="{{theme_asset('statistics/js/layer/skin/default/layer.css')}}?t=1">
+<style>
+    body {background:white;}
+    img {margin:0;padding:0;border:none;display:block;width:100%;}
+</style>
+<script src="{{ theme_asset('jquery/jquery.min.js') }}"></script>
+<script src="{{ theme_asset('statistics/js/layer/layer.js') }}"></script>
+<img src="{{$src}}" class="img">
+<script>
+    //获取图片原始高度
+    var img_url = '{{$src}}';
+    var img = new Image();
+    img.src = img_url;
+    var img_width = 0;
+    img.onload = function(){
+        img_width = img.width;
+    };
+
+    //图片旋转
+    var deg = 0;
+    function transform(){
+        deg += 90;
+        if (deg === 360) {
+            deg = 0;
+        }
+        $('.img').css('transform','rotate('+deg+'deg)');
+    }
+
+    //图片缩放
+    var flag = false;
+    function zoom()
+    {
+        flag = !flag;
+        if (flag) {
+            $('.img').css('width',img_width+'px');
+        } else {
+            $('.img').css('width','100%');
+        }
+    }
+</script>

+ 0 - 1
resources/views/admin/content/buy_house_rs.blade.php

@@ -122,7 +122,6 @@
         $.ajax({
             url: "{{admin_base_path('/content/buy_house_rs/detail')}}",
             data:{'id':id,'_token':'{{csrf_token()}}'},
-            // dataType:'json',
             success:function (res) {
                 $('.contentfade').html(res.data);
             },

+ 2 - 0
resources/views/admin/content/export_house_apply.blade.php

@@ -31,6 +31,7 @@
 <div align=center x:publishsource="Excel">
     <table border=1 cellpadding=0 cellspacing=0 style='border-collapse:collapse;table-layout:fixed;'>
         <tr>
+            <th>序号</th>
             <th>房源名称</th>
             <th>姓名</th>
             <th>联系电话</th>
@@ -56,6 +57,7 @@
         </tr>
         @foreach($data as $v)
             <tr>
+                <td>{{$v['no']}}</td>
                 <td>{{$v['house']['name']}}</td>
                 <td>{{$v['name']}}</td>
                 <td>{{$v['mobile']}}</td>

+ 107 - 0
resources/views/admin/content/export_house_result.blade.php

@@ -0,0 +1,107 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+      xmlns:x="urn:schemas-microsoft-com:office:excel"
+      xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+    <meta http-equiv=Content-Type content="text/html; charset=utf-8">
+    <meta name=ProgId content=Excel.Sheet>
+    <meta name=Generator content="Microsoft Excel 15">
+    <style>
+        table {
+            mso-displayed-decimal-separator: "\.";
+            mso-displayed-thousand-separator: "\,";
+        }
+        .title {
+            font-weight:700;
+            font-size:20px;
+            text-align: center;
+        }
+        th {
+            color:red;
+        }
+        td {
+            text-align: center;
+            vnd.ms-excel.numberformat:@;
+        }
+    </style>
+</head>
+
+<body>
+
+<div align=center x:publishsource="Excel">
+    <table border=1 cellpadding=0 cellspacing=0 style='border-collapse:collapse;table-layout:fixed;'>
+        <tr>
+            <th>序号</th>
+            <th>房源名称</th>
+            <th>类型</th>
+            <th>联系电话</th>
+            <th>证件号</th>
+            <th>籍贯</th>
+            <th>电子邮箱</th>
+            <th>人才层次</th>
+            <th>人才证有效期</th>
+            <th>人才标签</th>
+            <th>人才认定条件</th>
+            <th>婚姻状态</th>
+            <th>未年成子女数量</th>
+            <th>家庭成员(关系)</th>
+            <th>家庭成员(姓名)</th>
+            <th>家庭成员(证件号)</th>
+            <th>工作单位</th>
+            <th>所属街道</th>
+            <th>家庭住房情况</th>
+            <th>住房政策</th>
+            <th>人社局审核状态</th>
+            <th>人社局审核时间</th>
+            <th>人社局审核备注</th>
+            <th>集成电路筹备组审核状态</th>
+            <th>集成电路筹备组审核时间</th>
+            <th>集成电路筹备组审核备注</th>
+            <th>住建局审核状态</th>
+            <th>住建局审核时间</th>
+            <th>住建局审核备注</th>
+            <th>自然资源局审核状态</th>
+            <th>自然资源局审核时间</th>
+            <th>自然资源局审核备注</th>
+        </tr>
+        @foreach($data as $v)
+            <tr>
+                <td>{{$v['no']}}</td>
+                <td>{{$house['name']}}</td>
+                <td>{{$v['type_text']}}</td>
+                <td>{{$v['name']}}</td>
+                <td>{{$v['mobile']}}</td>
+                <td>{{$v['idcard']['id_card']}}</td>
+                <td>{{$v['native']}}</td>
+                <td>{{$v['email']}}</td>
+                <td>{{$v['talent_level']}}</td>
+                <td>{{$v['talent_card_validity']}}</td>
+                <td>{{$v['talent_tags']}}</td>
+                <td>{{$v['talent_condition']}}</td>
+                <td>{{$v['marry_text']}}</td>
+                <td>{{$v['child_num']}}</td>
+                <td>{{$v['relation']}}</td>
+                <td>{{$v['relation_name']}}</td>
+                <td>{{$v['relation_id_card']}}</td>
+                <td>{{$v['company']}}</td>
+                <td>{{$v['street']}}</td>
+                <td>{{$v['house_condition']}}</td>
+                <td>{{$v['house_policy']}}</td>
+                <td>{{$v['type'] == 1 ? $status[$v['rs_check_status']] : ''}}</td>
+                <td>{{$v['type'] == 1 ? $v['rs_check_time'] : ''}}</td>
+                <td>{{$v['type'] == 1 ? $v['rs_check_comment'] : ''}}</td>
+                <td>{{$v['type'] == 2 ? $status[$v['rs_check_status']] : ''}}</td>
+                <td>{{$v['type'] == 2 ? $v['rs_check_time'] : ''}}</td>
+                <td>{{$v['type'] == 2 ? $v['rs_check_comment'] : ''}}</td>
+                <td>{{$status[$v['zj_check_status']]}}</td>
+                <td>{{$v['zj_check_time']}}</td>
+                <td>{{$v['zj_check_comment']}}</td>
+                <td>{{$status[$v['zr_check_status']]}}</td>
+                <td>{{$v['zr_check_time']}}</td>
+                <td>{{$v['zr_check_comment']}}</td>
+            </tr>
+        @endforeach
+    </table>
+</div>
+</body>
+</html>

+ 0 - 1
resources/views/admin/personalTalents/index.blade.php

@@ -55,7 +55,6 @@
         </div>
     </div>
 </div>
-<script type="text/javascript" src="{{ theme_asset('app/js/viewer-jquery.min.js') }}"></script>
 <script>
     $(function () {
         $('table td .show-img').viewer({