| | |
| | | |
| | | |
| | | 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; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 管理端-修改密码 |