mirror of
https://gitee.com/apiadmin/ApiAdmin.git
synced 2025-04-06 03:58:00 +08:00
modified 完成三方一键登录全部功能
This commit is contained in:
parent
844c698b2c
commit
e59d263ece
@ -153,8 +153,6 @@ class ThirdLogin extends Base {
|
|||||||
$url = 'https://api.weixin.qq.com/sns/oauth2/access_token?' . http_build_query($query);
|
$url = 'https://api.weixin.qq.com/sns/oauth2/access_token?' . http_build_query($query);
|
||||||
$accessToken = json_decode(file_get_contents($url), true);
|
$accessToken = json_decode(file_get_contents($url), true);
|
||||||
|
|
||||||
$userInfo = AdminUser::get(['openid' => $accessToken['openid']]);
|
|
||||||
if (!$userInfo) {
|
|
||||||
$getUserInfoQuery = [
|
$getUserInfoQuery = [
|
||||||
'access_token' => $accessToken['access_token'],
|
'access_token' => $accessToken['access_token'],
|
||||||
'openid' => $accessToken['openid'],
|
'openid' => $accessToken['openid'],
|
||||||
@ -165,38 +163,23 @@ class ThirdLogin extends Base {
|
|||||||
$userInfoArr = file_get_contents($getUserInfoUrl);
|
$userInfoArr = file_get_contents($getUserInfoUrl);
|
||||||
$userInfoArr = json_decode($userInfoArr, true);
|
$userInfoArr = json_decode($userInfoArr, true);
|
||||||
|
|
||||||
$userInfo['nickname'] = $userInfoArr['nickname'];
|
if ($userInfoArr) {
|
||||||
$userInfo['username'] = 'ApiAdmin_wx_' . Strs::randString(8);
|
cache($state, [
|
||||||
$userInfo['openid'] = $accessToken['openid'];
|
'nickname' => $userInfoArr['nickname'],
|
||||||
$userInfo['create_ip'] = request()->ip(1);
|
'head_img' => $userInfoArr['headimgurl'],
|
||||||
$userInfo['status'] = 1;
|
'openid' => $accessToken['openid']
|
||||||
$userInfo['create_time'] = time();
|
], 300);
|
||||||
$userInfo['password'] = Tools::userMd5('ApiAdmin');
|
|
||||||
$res = AdminUser::create($userInfo);
|
|
||||||
$userInfo['head_img'] = $userInfoArr['headimgurl'];
|
|
||||||
$userInfo['id'] = $res->id;
|
|
||||||
if ($res === false) {
|
|
||||||
return view('wiki@index/login_res', [
|
|
||||||
'info' => '操作失败',
|
|
||||||
'code' => ReturnCode::DB_SAVE_ERROR
|
|
||||||
]);
|
|
||||||
} else {
|
|
||||||
AdminAuthGroupAccess::create([
|
|
||||||
'uid' => $res->id,
|
|
||||||
'group_id' => 1
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$userInfo = $userInfo->toArray();
|
|
||||||
}
|
|
||||||
|
|
||||||
cache($state, $userInfo, 300);
|
|
||||||
|
|
||||||
return view('wiki@index/login_res', [
|
return view('wiki@index/login_res', [
|
||||||
'info' => '登录成功',
|
'info' => '登录成功',
|
||||||
'code' => ReturnCode::SUCCESS
|
'code' => ReturnCode::SUCCESS
|
||||||
]);
|
]);
|
||||||
|
} else {
|
||||||
|
return view('wiki@index/login_res', [
|
||||||
|
'info' => '操作失败',
|
||||||
|
'code' => ReturnCode::DB_SAVE_ERROR
|
||||||
|
]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -218,7 +201,10 @@ class ThirdLogin extends Base {
|
|||||||
if (is_array($userInfo)) {
|
if (is_array($userInfo)) {
|
||||||
cache($state, null);
|
cache($state, null);
|
||||||
|
|
||||||
return $this->doLogin($userInfo);
|
return $this->doLogin($userInfo['openid'], [
|
||||||
|
'nickname' => $userInfo['nickname'],
|
||||||
|
'head_img' => $userInfo['headimgurl']
|
||||||
|
]);
|
||||||
} else {
|
} else {
|
||||||
return $this->buildFailed(ReturnCode::INVALID, '登录状态已失效,请重新登录');
|
return $this->buildFailed(ReturnCode::INVALID, '登录状态已失效,请重新登录');
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user