用户授权优

feat/task1-c-wallet
gongfuxiang 2024-04-15 17:15:15 +08:00
parent 6ff4303312
commit b0cd662968
1 changed files with 15 additions and 14 deletions

View File

@ -70,28 +70,29 @@ class AppMiniUserService
// 通过unionid获取 // 通过unionid获取
if(!empty($unionid_field) && !empty($unionid_value)) if(!empty($unionid_field) && !empty($unionid_value))
{ {
$temp_user_id = 0;
$user = UserService::AppUserInfoHandle(['where_field'=>$unionid_field, 'where_value'=>$unionid_value]); $user = UserService::AppUserInfoHandle(['where_field'=>$unionid_field, 'where_value'=>$unionid_value]);
} // 不存在则查询其他平台的unionid用户
if(empty($user)) if(empty($user))
{
$where = [$openid_field=>$openid_value];
if(!empty($unionid_field) && !empty($unionid_value))
{ {
$where[$unionid_field] = $unionid_value; $temp = Db::name('UserPlatform')->whereOr([$unionid_field=>$unionid_value])->find();
if(!empty($temp))
{
$temp_user_id = $temp['user_id'];
}
} else {
$temp_user_id = $user['id'];
} }
// 是否存在其他平台的用户openid或unionid、存在则添加 // 存在平台用户则增加对应用户信息
$temp = Db::name('UserPlatform')->whereOr($where)->find(); if(!empty($temp_user_id))
if(!empty($temp))
{ {
// 存在unionid用户则增加对应用户
$insert_data = [ $insert_data = [
'user_id' => $temp['user_id'], 'user_id' => $temp_user_id,
$openid_field => $openid_value, $openid_field => $openid_value,
$unionid_field => $unionid_value,
'add_time' => time(), 'add_time' => time(),
]; ];
if(!empty($unionid_field) && !empty($unionid_value))
{
$insert_data[$unionid_field] = $unionid_value;
}
if(UserService::UserPlatformInsert($insert_data) > 0) if(UserService::UserPlatformInsert($insert_data) > 0)
{ {
$user = UserService::AppUserInfoHandle(['where_field'=>$openid_field, 'where_value'=>$openid_value]); $user = UserService::AppUserInfoHandle(['where_field'=>$openid_field, 'where_value'=>$openid_value]);