소스 검색

登录添加来源和设备信息,绑定手机改为服务号授权

wangxy 1 개월 전
부모
커밋
9aa2f51b7a

+ 18 - 1
fs-user-app/src/main/java/com/fs/app/controller/AppLoginController2.java

@@ -431,6 +431,12 @@ public class AppLoginController2 extends AppBaseController{
         if (StringUtils.isNotEmpty(user.getAppOpenId())) {
             userMap.setAppOpenId(user.getAppOpenId());
         }
+        if(StringUtils.isNotEmpty(user.getLoginDevice())){
+            userMap.setLoginDevice(user.getLoginDevice());
+        }
+        if (StringUtils.isNotEmpty(user.getSource())){
+            userMap.setSource(user.getSource());
+        }
         String ipAddr = IpUtils.getIpAddr(ServletUtils.getRequest());
         userMap.setLastIp(ipAddr);
         userMapper.updateFsUser(userMap);
@@ -458,6 +464,12 @@ public class AppLoginController2 extends AppBaseController{
         } else if (user.getStatus() == 0) {
             return R.error("账号已停用");
         }
+        if(StringUtils.isNotEmpty(param.getLoginDevice())){
+            user.setLoginDevice(param.getLoginDevice());
+        }
+        if (StringUtils.isNotEmpty(param.getSource())) {
+            user.setSource(param.getSource());
+        }
         if (StringUtils.isNotEmpty(param.getJpushId())) {
             updateExistingUserJpushId(user, param.getJpushId());
         }
@@ -685,7 +697,12 @@ public class AppLoginController2 extends AppBaseController{
         if (!redisCode.equals(code)) {
             return R.error("验证码错误");
         }
-
+       if (StringUtils.isNotEmpty(map.get("source"))){
+           user.setSource(map.get("source"));
+       }
+       if (StringUtils.isNotEmpty(map.get("loginDevice"))){
+           user.setLoginDevice(map.get("loginDevice"));
+       }
         updateExistingUserJpushId(user, map.get("jpushId"));
 
         // 检查是否写入过appCreateTime,没写入则写入

+ 7 - 2
fs-user-app/src/main/java/com/fs/app/controller/WxH5MpController.java

@@ -181,7 +181,13 @@ public class WxH5MpController {
         FsUser user = userService.selectFsUserByUnionId(wxMpUser.getUnionId());
 
         if (user != null) {
-            // 更新现有用户信息
+            String phone = user.getPhone();
+            if (StringUtils.isNotEmpty(phone)) {
+                FsUser existUser = userService.selectFsUserByPhone(phone);
+                if (existUser != null && !existUser.getUserId().equals(user.getUserId())) {
+                    user = existUser;
+                }
+            }
             FsUser userUpdate = new FsUser();
             userUpdate.setUserId(user.getUserId());
             userUpdate.setMpOpenId(wxMpUser.getOpenid());
@@ -192,7 +198,6 @@ public class WxH5MpController {
             userService.updateFsUser(userUpdate);
             return userUpdate;
         } else {
-            // 创建新用户
             FsUser newUser = new FsUser();
             newUser.setNickName(wxMpUser.getNickname());
             newUser.setAvatar(wxMpUser.getHeadImgUrl());