From f64b6be332be68497594393d9eb6d16551f75223 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 17 Jul 2023 17:08:30 +0800 Subject: [PATCH] 用户登录获取用户的微信昵称和头像 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 33 +++++++++++++++++++++++++++++++++ 1 files changed, 33 insertions(+), 0 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java index 694cdee..a5baa88 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java @@ -5,6 +5,7 @@ import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.AppContants; +import cc.mrbird.febs.common.utils.HttpCurlUtil; import cc.mrbird.febs.common.utils.ShareCodeUtil; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.*; @@ -24,6 +25,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.io.IOException; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.ArrayList; @@ -283,4 +285,35 @@ mallMemberWalletMapper.insert(wallet); return; } + + @Override + public void updateMemberInfo(String str) { + String[] split = StrUtil.split(str, "-"); + String accessToken = split[0]; + String openId = split[1]; + MallMember mallMember = memberMapper.selectMemberByOpenId(openId); + if (ObjectUtil.isNotEmpty(mallMember)) { + return; + } + String requrl = "https://api.weixin.qq.com/sns/userinfo?access_token="+accessToken+"&openid="+openId+"&lang=zh_CN"; + String reslutData = null; + try { + reslutData = HttpCurlUtil.sendGetHttp(requrl, null); + } catch (IOException e) { + e.printStackTrace(); + return; + } + net.sf.json.JSONObject json = net.sf.json.JSONObject.fromObject(reslutData); + log.info("微信获取用户信息={}", json); + + if (json.containsKey("errcode")) { + log.info("微信登录获取到异常信息errcode"); + return; + } + String nickname = json.getString("nickname"); + String headImgUrl = json.getString("headimgurl"); + mallMember.setName(nickname); + mallMember.setAvatar(headImgUrl); + memberMapper.updateById(mallMember); + } } -- Gitblit v1.9.1