|
|
|
@ -37,14 +37,22 @@ class LoginController extends Controller |
|
|
|
$url = sprintf($base_url, $agent['appid'], $agent['appsecret']); |
|
|
|
|
|
|
|
$res = Http::get($url)->json(); |
|
|
|
if (array_key_exists('errcode', $res) || $res['errcode'] != 0 || empty($res['openid'])) { |
|
|
|
$res['openid'] = session_create_id(); |
|
|
|
// return $this->error($res['errmsg'] ?? 'login fail!'); TODO 测试时注释掉
|
|
|
|
if (!array_key_exists('errcode', $res) || $res['errcode'] != 0 || empty($res['openid'])) { |
|
|
|
$msg = $res['errcode'] ? $res['errcode'] . ': ' : ''; |
|
|
|
$msg .= $res['errmsg'] ?? '登录失败'; |
|
|
|
return $this->error($msg); //TODO 测试时注释掉
|
|
|
|
} |
|
|
|
|
|
|
|
// TODO 登录部分待优化
|
|
|
|
$userModel = new User(); |
|
|
|
$userModel->firstOrCreate(['openid' => $res['openid'], 'agent_id' => $agent_id], ['nickname' => '未设置昵称', 'avatar' => '/static/images/avatar.png']); |
|
|
|
$userModel->firstOrCreate([ |
|
|
|
'openid' => $res['openid'], |
|
|
|
'unionid' => $res['unionid'], |
|
|
|
'agent_id' => $agent_id |
|
|
|
], [ |
|
|
|
'nickname' => '未设置昵称', |
|
|
|
'avatar' => '/static/images/avatar.png' |
|
|
|
]); |
|
|
|
|
|
|
|
// TODO 用于测试
|
|
|
|
$token_key = md5($userModel->id); |
|
|
|
|