header('Authorization'); if (empty($token)) return response()->json(['code'=>1,'msg'=>'缺少登录凭证','data'=>null]); //校验token $return = TokenService::verifyToken($token); $user_id = $return['user_id'] ?? 0; if ($user_id <= 0) return response()->json(['code'=>1,'msg'=>TokenService::error[$user_id],'data'=>null]); //密码 $psd = $return['psd'] ?? ""; if(empty($psd)) return response()->json(['code'=>1,'msg'=>'账号密码失效,请重新登录','data'=>null]); //校验用户 $checkResult = EmployeeService::checkUser($user_id, $psd); list($state, $data) = $checkResult; if(! $state) return response()->json(['code'=>1,'msg'=>$data,'data'=>null]); //人员角色 $data['role'] = EmployeeService::getPersonRole($user_id); //角色里所有菜单权限 $data['role_authority'] = EmployeeService::getPersonRoleQx($data['role']); //角色里特殊的按钮 // $data['special_button'] = EmployeeService::getSpecialButton($data['role'],$user_id); //我的部门 $data['depart_range'] = EmployeeService::getLoginDepart($user_id); //部门下的人 $data['man_range'] = EmployeeService::getLoginDepartOfMan($data['depart_range']); $is_authority = $menu_id = 0; $query = config('morequery'); $url = $request->path(); $menu = $query['menu_auth'] ?? []; if(isset($menu[$url])) { $is_authority = 1; $menu_id = $menu[$url]; } //该接口是否需要个人部门所有的权限区分 $request->merge(['is_authority' => $is_authority, 'menu_authority_id' => $menu_id]); //操作记录传输菜单ID与指向接口 $menu = $query['menu_option'] ?? []; if(isset($menu[$url])) $request->merge(['menu_id' => $menu[$url]['menu_id'], 'opt_api_url' => $menu[$url]['url']]); //写入user信息 $request->userData = $data; return $next($request); } }