diff --git a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java index da9e2337d..740ffaf0a 100644 --- a/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java +++ b/ruoyi-admin/src/main/java/org/dromara/web/service/SysLoginService.java @@ -80,14 +80,7 @@ public class SysLoginService { throw new UserException("user.blocked", account); } - SysUserVo sysUserVo = null; - switch (loginType) { - case SMS: sysUserVo = userMapper.selectUserByPhonenumber(account); break; - case EMAIL: sysUserVo = userMapper.selectUserByEmail(account); break; - case PASSWORD: sysUserVo = userMapper.selectUserByUserName(account); break; - case SOCIAL: sysUserVo = userMapper.selectUserById(Long.parseLong(account)); break; - } - return sysUserVo; + return userMapper.selectUser(loginType, account); }); } diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java index 43222253c..789d47b92 100644 --- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java +++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysUserMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; +import org.dromara.common.core.enums.LoginType; import org.dromara.common.mybatis.annotation.DataColumn; import org.dromara.common.mybatis.annotation.DataPermission; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; @@ -61,6 +62,14 @@ public interface SysUserMapper extends BaseMapperPlus { }) Page selectUnallocatedList(@Param("page") Page page, @Param(Constants.WRAPPER) Wrapper queryWrapper); + /** + * 通过用户名查询用户 + * + * @param account 账号:手机/邮箱/密码/UserId + * @return 用户对象信息 + */ + SysUserVo selectUser(LoginType loginType, String account); + /** * 通过用户名查询用户 * diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml index 7af7dd0cc..03a94de42 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -123,5 +123,20 @@ where u.del_flag = '0' and u.user_id = #{userId} - +