From 239df6b32472882b4bd74fe97d9cc589c4f39baf Mon Sep 17 00:00:00 2001
From: 罗元桥 <2376770955@qq.com>
Date: 星期日, 15 八月 2021 12:25:47 +0800
Subject: [PATCH] Merge branch 'test' into 'master'
---
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java | 49 ++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 48 insertions(+), 1 deletions(-)
diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java
index ec5d5af..516e634 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/LoginApi.java
@@ -59,7 +59,7 @@
WxMaService maService = wxMaConfiguration.getMaService();
WxMaJscode2SessionResult sessionInfo=null;
try {
- sessionInfo = maService.getUserService().getSessionInfo(code);
+ sessionInfo = maService.getUserService().getSessionInfo(code);
} catch (Exception e) {
log.error("微信登录失败【{}】", e.getMessage());
if (code.equals("22")) {
@@ -85,6 +85,9 @@
@PostMapping("updateUserWeiXinInfo")
public R updateUserWeiXinInfo(@RequestBody LoginRequest loginRequest){
Long userId = this.getUserId();
+ if(userId == null){
+ return R.fail(401,"请先登录");
+ }
boolean empty2 = ObjectUtils.isEmpty(userId);
if (empty2) {
throw new UnAuthenticationException();
@@ -122,6 +125,50 @@
return userService.updateUserWeiXinPhone(userId,purePhoneNumber);
}
+ @ApiOperation(value = "维护微信用户手机号")
+ @PostMapping("updateUserWeiXinPhone2")
+ public R updateUserWeiXinPhone2(@RequestBody LoginRequest loginRequest){
+ String code = loginRequest.getCode();
+ if (ObjectUtils.isEmpty(code)) {
+ return R.fail("缺少登录参数");
+ }
+ log.info(code);
+ WxMaService maService = wxMaConfiguration.getMaService();
+ WxMaJscode2SessionResult sessionInfo=null;
+ try {
+ sessionInfo = maService.getUserService().getSessionInfo(code);
+ } catch (Exception e) {
+ log.error("微信登录失败【{}】", e.getMessage());
+ if (code.equals("22")) {
+ sessionInfo=new WxMaJscode2SessionResult();
+ sessionInfo.setOpenid("88888888");
+ sessionInfo.setSessionKey("9999999");
+ }else{
+ return R.fail("微信登录失败");
+ }
+ }
+ log.info("微信登录成功【{}】", JSONObject.toJSONString(sessionInfo));
+
+ String encryptedData = loginRequest.getEncryptedData();
+ String iv = loginRequest.getIv();
+ boolean empty = ObjectUtils.isEmpty(iv);
+ boolean empty1 = ObjectUtils.isEmpty(encryptedData);
+ if (empty||empty1) {
+ return R.fail("微信用户参数不全");
+ }
+// WxMaService maService = wxMaConfiguration.getMaService();
+ Long userId = this.getUserId();
+// R<LoginUserInfoVO> r = userService.getUserInfoByUserId(userId + "");
+// LoginUserInfoVO loginUserInfoVO = r.getData();
+ WxMaPhoneNumberInfo wxMaPhoneNumberInfo = maService.getUserService().getPhoneNoInfo(sessionInfo.getSessionKey(),
+ encryptedData, iv);
+ if (ObjectUtils.isEmpty(wxMaPhoneNumberInfo) || ObjectUtils.isEmpty(wxMaPhoneNumberInfo.getPhoneNumber())) {
+ return R.fail("微信解析手机号失败");
+ }
+ String purePhoneNumber = wxMaPhoneNumberInfo.getPurePhoneNumber();
+ return userService.updateUserWeiXinPhone(userId,purePhoneNumber);
+ }
+
@ApiOperation(value = "用户登出")
@PostMapping("logout")
public R updateUserWeiXinPhone(){
--
Gitblit v1.7.1