ソースを参照

fix:账户密码登录

ct 1 日 前
コミット
2142e115ac

+ 24 - 1
fs-user-app/src/main/java/com/fs/app/controller/AppLoginController.java

@@ -682,7 +682,30 @@ public class AppLoginController extends AppBaseController{
             //fsUserTalentService.addFsUserTalent(fsUser.getUserId());
             return generateTokenAndReturn(user);
         }else {
-            return R.ok().put("users",usersByPhone);
+            //查询密码符合哪一条记录
+            List<FsUser> userList = new ArrayList<>(usersByPhone);
+            for (FsUser fsUser : usersByPhone) {
+                if (fsUser.getStatus() == 0&&StringUtils.isNotEmpty(param.getSource())&&!param.getSource().equals("iOS")) {
+                    continue;
+                } else if (StringUtils.isEmpty(user.getPassword())) {
+                    continue;
+                }
+                if (!Md5Utils.hash(param.getPassword()).equals(user.getPassword())) {
+                    continue;
+                }
+                userList.add(fsUser);
+            }
+            if (userList.isEmpty()) {
+                return R.error("密码不正确或未设置密码,请短信登录后重新设置密码");
+            } else {
+                if (userList.size() == 1) {
+                    if (StringUtils.isNotEmpty(param.getJpushId())) {
+                        updateExistingUserJpushId(userList.get(0), param.getJpushId());
+                    }
+                    return generateTokenAndReturn(userList.get(0));
+                }
+                return R.ok().put("users",userList);
+            }
         }