From 895ed97195660b0196b61f5da626ac6d18e2068d Mon Sep 17 00:00:00 2001
From: luodangjia <luodangjia>
Date: 星期三, 22 一月 2025 11:54:52 +0800
Subject: [PATCH] 1

---
 ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java |   76 +++++++++++++++++---------------------
 1 files changed, 34 insertions(+), 42 deletions(-)

diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java
index 7570b9a..3450f8b 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java
@@ -205,59 +205,51 @@
 
 
     public void resetPwd(RegisterUser registerUser) {
-        R<User> userR = resetPwdCheck(registerUser);
+        String accountName = registerUser.getAccountName();
+        R<User> userR = remoteCompanyUserService.getUserByPhone(accountName, SecurityConstants.INNER);
+        R<User> userR2 = remoteCompanyUserService.getUserByAccountName(accountName, SecurityConstants.INNER);
+
         User user = userR.getData();
+        Boolean flag = check(user, registerUser.getCompanyName(), registerUser.getIdCardNumber());
+        User user1 = userR2.getData();
+        Boolean flag1 = check(user1, registerUser.getCompanyName(), registerUser.getIdCardNumber());
+
+        if (!flag1 && !flag){
+            throw new ServiceException("账号不存在");
+        }
+        User user2;
+        if (flag){
+            user2 = user;
+        }else {
+            user2 = user1;
+        }
+
         String password = SecurityUtils.encryptPassword(registerUser.getPassword());
-        user.setPassword(password);
-        R<Void> r = remoteCompanyUserService.updateUser(user);
+        user2.setPassword(password);
+        R<Void> r = remoteCompanyUserService.updateUser(user2);
         if (R.isError(r)) {
             throw new ServiceException(userR.getMsg());
         }
     }
 
-    public R<User> resetPwdCheck(RegisterUser registerUser) {
-        String accountName = registerUser.getAccountName();
-        R<User> userByPhoneR = remoteCompanyUserService.getUserByPhone(accountName, SecurityConstants.INNER);
-        if (R.isError(userByPhoneR)) {
-            throw new RuntimeException(userByPhoneR.getMsg());
-        }
-        boolean check = false;
-        R<User> userR = new R<>();
-        if (userByPhoneR.getData() != null) {
-            check = check(userByPhoneR.getData(), registerUser.getCompanyName(), registerUser.getIdCardNumber());
-        }
-        if (!check){
-            userR = remoteCompanyUserService.getUserByAccountName(accountName, SecurityConstants.INNER);
-            if (R.isError(userR)) {
-                throw new RuntimeException(userR.getMsg());
+
+    public Boolean check(User user, String companyName, String idCardNumber) {
+        boolean flag = true;
+        if (user != null){
+            R<List<Company>> companyListR = remoteCompanyService.getCompanyByUserId(user.getUserId(), SecurityConstants.INNER);
+            List<Company> companyList = companyListR.getData();
+            long count = companyList.stream().filter(company -> company.getCompanyName()
+                    .equals(companyName) && company.getIdCardNumber().equals(idCardNumber)).count();
+            if (count == 0) {
+                flag = false;
             }
-            if (userR.getData() == null) {
-                throw new RuntimeException("账号不存在");
-            }
-            check = check(userR.getData(), registerUser.getCompanyName(), registerUser.getIdCardNumber());
+        }else {
+            flag = false;
         }
-        if (!check) {
-            throw new RuntimeException("账号不存在");
-        }
-        return userR;
+        return flag;
     }
 
-    public boolean check(User user, String companyName, String idCardNumber) {
-        Long userId = user.getUserId();
-        R<List<Company>> companyR = remoteCompanyService.getCompanyByUserId(userId, SecurityConstants.INNER);
-        if (R.isError(companyR)) {
-            throw new ServiceException(companyR.getMsg());
-        }
-        List<Company> companyList = companyR.getData();
-        if (companyList != null) {
-            long count = companyList.stream()
-                    .filter(company -> company.getCompanyName().equals(companyName) &&
-                            company.getIdCardNumber().equals(idCardNumber))
-                    .count();
-            return count > 0;
-        }
-        return false;
-    }
+
 
     /**
      * 管理端-修改密码

--
Gitblit v1.7.1