diff --git a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java index 5fce460..58649c2 100644 --- a/src/main/java/com/gxwebsoft/common/system/controller/MainController.java +++ b/src/main/java/com/gxwebsoft/common/system/controller/MainController.java @@ -160,7 +160,7 @@ public class MainController extends BaseController { } } // 当前租户登录(登录账号|手机号码|邮箱登录) - user = userService.getByUsername(username, tenantId); + user = userService.getByUsernamePhone(username, tenantId); } if (user == null) { diff --git a/src/main/java/com/gxwebsoft/common/system/service/UserService.java b/src/main/java/com/gxwebsoft/common/system/service/UserService.java index 3b765f5..58a3c31 100644 --- a/src/main/java/com/gxwebsoft/common/system/service/UserService.java +++ b/src/main/java/com/gxwebsoft/common/system/service/UserService.java @@ -58,6 +58,8 @@ public interface UserService extends IService, UserDetailsService { */ User getByUsername(String username, Integer tenantId); + User getByUsernamePhone(String username, Integer tenantId); + /** * 添加用户 * diff --git a/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java b/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java index 58077b2..ec73e60 100644 --- a/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java +++ b/src/main/java/com/gxwebsoft/common/system/service/impl/UserServiceImpl.java @@ -110,6 +110,28 @@ public class UserServiceImpl extends ServiceImpl implements Us return user; } + @Override + public User getByUsernamePhone(String username, Integer tenantId) { + if (StrUtil.isBlank(username)) { + return null; + } + User user = getOne(new LambdaQueryWrapper() + .and(wrapper -> wrapper + .eq(User::getUsername, username) + .or() + .eq(User::getPhone, username)) + .eq(tenantId != null, User::getTenantId, tenantId) + .eq(User::getDeleted, 0) + .orderByDesc(User::getUserId) + .last("limit 1") + ); + if (user != null) { + user.setRoles(userRoleService.listByUserId(user.getUserId())); + user.setAuthorities(roleMenuService.listMenuByUserId(user.getUserId(), null)); + } + return user; + } + @Override public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { return getByUsername(username);