全部
常见问题
产品动态
精选推荐
功能建议

分析中 已回复 待规划 {{opt.name}}
分析中 已回复 待规划
建议修改:绑定微信开放平台后UnionID老用户适配

管理 管理 编辑 删除

之前未绑定微信开放平台,没有UnionID,后续又绑定时,存在的问题:

1. 老用户登录后不识别而是新建账户,再次退出重登又成功以老账号登录

小程序绑定微信开放平台后,老用户再次登录会携带UnionID,但老用户在WechatUser表中无UnionID,导致未查询到对应值,$userInfo不会被赋值,此时没有分支来继续处理此种情况了,直接触发新建用户,因此需要将根据openid获取用户信息的备选命令单独出去,作$userInfo仍为空的后续处理。(后续老用户同步更新了UnionId,所以退出重登又能成功登录老账号)

crmeb\app\services\wechat\WechatUserServices.php Line 322 修改

 if (!$userInfo) {
    if (isset($wechatInfo['unionid']) && $wechatInfo['unionid']) {
        $uid = $this->dao->value(['unionid' => $wechatInfo['unionid'], 'is_del' => 0], 'uid');
        file_put_contents('test.log', print_r(json_encode($uid ).'288888', true)."\n", FILE_APPEND); 
        if ($uid) {
            $userInfo = $userServices->getOne(['uid' => $uid, 'is_del' => 0]);
        }
    }
} 
if (!$userInfo){
    //原本在上方代码块的else里,只要有UnionID,即便$userInfo为null也不会再执行,所以单拎出来
    $userInfo = $this->getAuthUserInfo($openid, $userType);
}

2. 用户拥有UnionID后每次重登会初始化WechatUser表中的Nickname

原因为,CacheService没有存Nickname,可能是我升级遗留的问题,每次登录获取不到WechatUser表中的Nickname会重新赋予随机名称wx******

crmeb\app\services\wechat\RoutineServices.php Line 76 新增

$routineInfo['nickname'] = app()->make(WechatUserServices::class)->getWechatUserInfo(['openid' => $openid, 'is_del' => 0])['nickname'];


{{voteData.voteSum}} 人已参与
支持
反对
请登录后查看

翠屏山居士 最后编辑于2026-05-09 17:03:00

快捷回复
回复
回复
回复({{post_count}}) {{!is_user ? '我的回复' :'全部回复'}}
排序 默认正序 回复倒序 点赞倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理员 企业

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推荐': '推荐'}}
{{item.is_suggest == 1? '取消推荐': '推荐'}} 【已收集】
{{item.floor}}# 沙发 板凳 地板 {{item.floor}}# 【已收集】
{{item.user_info.title || '暂无简介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打赏
已打赏¥{{item.reward_price}}
{{item.like_count}}
分享
{{item.showReply ? '取消回复' : '回复'}}
删除
回复
回复

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回复 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打赏
已打赏¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回复' : '回复'}}
删除
回复
回复
收起 展开更多
查看更多
打赏
已打赏¥{{reward_price}}
33
{{like_count}}
{{collect_count}}
添加回复 ({{post_count}})

相关推荐

快速安全登录

使用微信扫码登录
回复
回复
问题:
问题自动获取的帖子内容,不准确时需要手动修改. [获取答案]
答案:
提交
bug 需求 取 消 确 定
打赏金额
当前余额:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
请输入 0.1-{{reward_max_price}} 范围内的数值
打赏成功
¥{{price}}
完成 确认打赏

微信登录/注册

切换手机号登录

{{ bind_phone ? '绑定手机' : '手机登录'}}

{{codeText}}
切换微信登录/注册
暂不绑定
CRMEB客服
CRMEB咨询热线 400-8888-794

扫码领取产品资料

功能清单
思维导图
安装教程
CRMEB开源商城下载 源码下载 CRMEB帮助文档 帮助文档
返回顶部 返回顶部
CRMEB客服