diff --git a/app/service/AppMiniUserService.php b/app/service/AppMiniUserService.php index b5627c289c4f84ee72d6f084b0418e4f9229be07..75c8ab4a5493458dc0c2d4a0f966d38f412f48ef 100644 --- a/app/service/AppMiniUserService.php +++ b/app/service/AppMiniUserService.php @@ -170,7 +170,16 @@ class AppMiniUserService } if(empty($user)) { - $ret = DataReturn('授权登录成功', 0, ['is_user_exist'=>0, 'openid'=>$ret['data']['openid'], 'unionid'=>$unionid]); + // 微信已无用户端获取用户基础信息、直接添加用户 + $params['openid'] = $ret['data']['openid']; + $params['weixin_unionid'] = $unionid; + $params['nickname'] = '微信用户'; + $ret = UserService::AuthUserProgram($params, 'weixin_openid'); + // 存在用户id则添加用户存在标记 + if(!empty($ret['data']['id'])) + { + $ret['data']['is_user_exist'] = 1; + } } else { $status = false; // 如果用户openid为空则绑定到用户下面 diff --git a/app/service/UserService.php b/app/service/UserService.php index 7b3bb22f52a1f88adfda1fb49084c5f68c2bf36b..64fff0946192c50e53958936bfb8277d4bb3c679 100755 --- a/app/service/UserService.php +++ b/app/service/UserService.php @@ -2100,12 +2100,6 @@ class UserService if(!empty($user)) { - // 会员码生成处理 - if(empty($user['number_code'])) - { - $user['number_code'] = self::UserNumberCodeCreatedHandle($user['id']); - } - // 用户信息处理 $user = self::UserHandle($user); @@ -2113,8 +2107,14 @@ class UserService $user['is_mandatory_bind_mobile'] = intval(MyC('common_user_is_mandatory_bind_mobile')); // 基础处理 - if(isset($user['id'])) + if(!empty($user['id'])) { + // 会员码生成处理 + if(empty($user['number_code'])) + { + $user['number_code'] = self::UserNumberCodeCreatedHandle($user['id']); + } + // 非token数据库校验,则重新生成token更新到数据库 if($where_field != 'token') { @@ -2386,6 +2386,11 @@ class UserService // url处理 case 'url' : $params[$k] = str_replace(['&'], ['&'], $params[$k]); + // 头像如果是默认则置空 + if($k == 'avatar' && !empty($params[$k]) && stripos($params[$k], 'default-user-avatar.jpg') !== false) + { + $params[$k] = ''; + } break; // 整数