47 lines
1.9 KiB
PHP
47 lines
1.9 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Middleware;
|
|
|
|
use Closure;
|
|
use Route;
|
|
class LimitVisitor
|
|
{
|
|
/**
|
|
* Handle an incoming request.
|
|
*
|
|
* @param \Illuminate\Http\Request $request
|
|
* @param \Closure $next
|
|
* @return mixed
|
|
*/
|
|
public function handle($request, Closure $next)
|
|
{
|
|
$user = auth()->user();
|
|
if (empty($user)) return $next($request);
|
|
//当前路由
|
|
$route_name = Route::currentRouteName();
|
|
//如果路由是用户列表并且没有搜索参数
|
|
if ($route_name == 'user_list' && empty($request->keyword) && $request->sex == '不限' && $request->min_age == '不限' && $request->max_age == '不限' && $request->province == '不限' && $request->city == "不限" && $request->is_approved == '不限' && $request->is_rank == '不限' && $request->belief == '不限') return $next($request);
|
|
//如果路由是用户编辑资料并且没有对另一半的要求
|
|
if ($route_name == 'update_profile_v2' && empty($request->has('ideal_mate')) && empty($request->has('mate_conditon'))) return $next($request);
|
|
//如果路由是活动列表或者服务列表并且没有关键词搜索
|
|
if ($route_name == 'saas_activities' && empty($request->keyword)) return $next($request);
|
|
//是否是游客的标准时(无手机号或者无头像)
|
|
if (empty($user->photo)) return $this->failure("操作失败,请先完善头像");
|
|
if (empty($user->mobile)) return $this->failure("操作失败,请先完善手机号");
|
|
return $next($request);
|
|
}
|
|
//接口返回失败
|
|
public function failure($msg, $data=[], $jsonp=false){
|
|
$result = [
|
|
'code'=> 1,
|
|
'message'=> $msg,
|
|
'data'=> $data,
|
|
];
|
|
if($jsonp){
|
|
return Response()->jsonp('callback', $result);
|
|
}else{
|
|
return Response()->json($result);
|
|
}
|
|
}
|
|
}
|