1234567891011121314151617181920212223242526272829303132333435363738 |
- <?php
-
- namespace App\Http\Middleware;
-
- use Closure;
- use App\Common\Api;
-
- class CheckLogin
- {
- /**
- * Handle an incoming request.
- *
- * @param \Illuminate\Http\Request $request
- * @param \Closure $next
- * @return mixed
- */
- public function handle($request, Closure $next)
- {
- //登录鉴权 session内用户是否存在,存在则通过,不存在则回调到登录界面
- $userInfo = $request->session()->get('userInfo');
-
- if(empty($userInfo)){
- echo Api::json(config('code.login_timeout'), trans('msg.login_timeout'));
- exit;
- }
-
- //超管则按照入参传入corp_id,普通管理员则篡改为管理员所属的企业ID
- $params = $request->all();
- if($userInfo['is_admin'] == 1){
- $request->merge(['corp_id'=>$params['corp_id']]);
- } else {
- $request->merge(['corp_id'=>$userInfo['corp_id']]);
- }
-
- return $next($request);
- }
- }
|