邮箱登录

master
Saisai Liu 2024-04-12 12:12:31 +08:00
parent 599ba80804
commit d8974355f6
5 changed files with 67 additions and 80 deletions

View File

@ -43,8 +43,8 @@ public class SysLoginService {
public LoginUser login (String username, String password) {
// 用户名或密码为空 错误
if (StringUtils.isAnyBlank(username, password)) {
recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "用户/密码必须填写");
throw new ServiceException("用户/密码必须填写");
recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "用户或邮箱/密码必须填写");
throw new ServiceException("用户或邮箱/密码必须填写");
}
// 密码如果不在指定范围内 错误
if (password.length() < UserConstants.PASSWORD_MIN_LENGTH
@ -69,6 +69,7 @@ public class SysLoginService {
if (StringUtils.isNull(userResult) || StringUtils.isNull(userResult.getData())) {
recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "登录用户不存在");
throw new ServiceException("登录用户:" + username + " 不存在");
}

View File

@ -101,7 +101,7 @@ public class SysUserController extends BaseController {
public Result<LoginUser> info (@PathVariable("username") String username) {
SysUser sysUser = userService.selectUserByUserName(username);
if (StringUtils.isNull(sysUser)) {
return Result.error("用户名或密码错误");
return Result.error("用户名/邮箱或密码错误");
}
// 角色集合
Set<String> roles = permissionService.getRolePermission(sysUser);

View File

@ -16,127 +16,121 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
*
*
* @param sysUser
*
* @return
*/
public List<SysUser> selectUserList (SysUser sysUser);
public List<SysUser> selectUserList(SysUser sysUser);
/**
*
*
* @param user
*
* @return
*/
public List<SysUser> selectAllocatedList (SysUser user);
public List<SysUser> selectAllocatedList(SysUser user);
/**
*
*
* @param user
*
* @return
*/
public List<SysUser> selectUnallocatedList (SysUser user);
public List<SysUser> selectUnallocatedList(SysUser user);
/**
*
*
* @param userName
*
* @return
*/
public SysUser selectUserByUserName (String userName);
public SysUser selectUserByUserName(String userName);
/**
*
*
* @param userName
* @return
*/
public SysUser selectUserByUserNameAndEmail(String userName);
/**
* ID
*
* @param userId ID
*
* @return
*/
public SysUser selectUserById (Long userId);
public SysUser selectUserById(Long userId);
/**
*
*
* @param user
*
* @return
*/
public int insertUser (SysUser user);
public int insertUser(SysUser user);
/**
*
*
* @param user
*
* @return
*/
public int updateUser (SysUser user);
public int updateUser(SysUser user);
/**
*
*
* @param userName
* @param avatar
*
* @return
*/
public int updateUserAvatar (@Param("userName") String userName, @Param("avatar") String avatar);
public int updateUserAvatar(@Param("userName") String userName, @Param("avatar") String avatar);
/**
*
*
* @param userName
* @param password
*
* @return
*/
public int resetUserPwd (@Param("userName") String userName, @Param("password") String password);
public int resetUserPwd(@Param("userName") String userName, @Param("password") String password);
/**
* ID
*
* @param userId ID
*
* @return
*/
public int deleteUserById (Long userId);
public int deleteUserById(Long userId);
/**
*
*
* @param userIds ID
*
* @return
*/
public int deleteUserByIds (Long[] userIds);
public int deleteUserByIds(Long[] userIds);
/**
*
*
* @param userName
*
* @return
*/
public SysUser checkUserNameUnique (String userName);
public SysUser checkUserNameUnique(String userName);
/**
*
*
* @param phonenumber
*
* @return
*/
public SysUser checkPhoneUnique (String phonenumber);
public SysUser checkPhoneUnique(String phonenumber);
/**
* email
*
* @param email
*
* @return
*/
public SysUser checkEmailUnique (String email);
public SysUser checkEmailUnique(String email);
}

View File

@ -1,5 +1,6 @@
package com.muyu.system.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.muyu.common.core.constant.UserConstants;
import com.muyu.common.core.exception.ServiceException;
@ -55,12 +56,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
@DataScope(deptAlias = "d", userAlias = "u")
public List<SysUser> selectUserList (SysUser user) {
public List<SysUser> selectUserList(SysUser user) {
return userMapper.selectUserList(user);
}
@ -68,12 +68,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
@DataScope(deptAlias = "d", userAlias = "u")
public List<SysUser> selectAllocatedList (SysUser user) {
public List<SysUser> selectAllocatedList(SysUser user) {
return userMapper.selectAllocatedList(user);
}
@ -81,12 +80,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
@DataScope(deptAlias = "d", userAlias = "u")
public List<SysUser> selectUnallocatedList (SysUser user) {
public List<SysUser> selectUnallocatedList(SysUser user) {
return userMapper.selectUnallocatedList(user);
}
@ -94,23 +92,26 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param userName
*
* @return
*/
@Override
public SysUser selectUserByUserName (String userName) {
return userMapper.selectUserByUserName(userName);
public SysUser selectUserByUserName(String userName) {
return userMapper.selectUserByUserNameAndEmail(userName);
// LambdaQueryWrapper<SysUser> queryWrapper = new LambdaQueryWrapper<>() {{
// eq(SysUser::getUserName, userName);
// or().eq(SysUser::getEmail, userName);
// }};
// return this.getOne(queryWrapper);
}
/**
* ID
*
* @param userId ID
*
* @return
*/
@Override
public SysUser selectUserById (Long userId) {
public SysUser selectUserById(Long userId) {
return userMapper.selectUserById(userId);
}
@ -118,11 +119,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param userName
*
* @return
*/
@Override
public String selectUserRoleGroup (String userName) {
public String selectUserRoleGroup(String userName) {
List<SysRole> list = roleMapper.selectRolesByUserName(userName);
if (CollectionUtils.isEmpty(list)) {
return StringUtils.EMPTY;
@ -134,11 +134,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param userName
*
* @return
*/
@Override
public String selectUserPostGroup (String userName) {
public String selectUserPostGroup(String userName) {
List<SysPost> list = postMapper.selectPostsByUserName(userName);
if (CollectionUtils.isEmpty(list)) {
return StringUtils.EMPTY;
@ -150,11 +149,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
public boolean checkUserNameUnique (SysUser user) {
public boolean checkUserNameUnique(SysUser user) {
Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
SysUser info = userMapper.checkUserNameUnique(user.getUserName());
if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) {
@ -167,11 +165,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
public boolean checkPhoneUnique (SysUser user) {
public boolean checkPhoneUnique(SysUser user) {
Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
SysUser info = userMapper.checkPhoneUnique(user.getPhonenumber());
if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) {
@ -184,11 +181,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
* email
*
* @param user
*
* @return
*/
@Override
public boolean checkEmailUnique (SysUser user) {
public boolean checkEmailUnique(SysUser user) {
Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
SysUser info = userMapper.checkEmailUnique(user.getEmail());
if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) {
@ -203,7 +199,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
* @param user
*/
@Override
public void checkUserAllowed (SysUser user) {
public void checkUserAllowed(SysUser user) {
if (StringUtils.isNotNull(user.getUserId()) && user.isAdmin()) {
throw new ServiceException("不允许操作超级管理员用户");
}
@ -215,7 +211,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
* @param userId id
*/
@Override
public void checkUserDataScope (Long userId) {
public void checkUserDataScope(Long userId) {
if (!SysUser.isAdmin(SecurityUtils.getUserId())) {
SysUser user = new SysUser();
user.setUserId(userId);
@ -230,12 +226,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int insertUser (SysUser user) {
public int insertUser(SysUser user) {
// 新增用户信息
int rows = userMapper.insertUser(user);
// 新增用户岗位关联
@ -249,11 +244,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
public boolean registerUser (SysUser user) {
public boolean registerUser(SysUser user) {
return userMapper.insertUser(user) > 0;
}
@ -261,12 +255,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int updateUser (SysUser user) {
public int updateUser(SysUser user) {
Long userId = user.getUserId();
// 删除用户与角色关联
userRoleMapper.deleteUserRoleByUserId(userId);
@ -287,7 +280,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void insertUserAuth (Long userId, Long[] roleIds) {
public void insertUserAuth(Long userId, Long[] roleIds) {
userRoleMapper.deleteUserRoleByUserId(userId);
insertUserRole(userId, roleIds);
}
@ -296,11 +289,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
public int updateUserStatus (SysUser user) {
public int updateUserStatus(SysUser user) {
return userMapper.updateUser(user);
}
@ -308,11 +300,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
public int updateUserProfile (SysUser user) {
public int updateUserProfile(SysUser user) {
return userMapper.updateUser(user);
}
@ -321,11 +312,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
* @param userName
* @param avatar
*
* @return
*/
@Override
public boolean updateUserAvatar (String userName, String avatar) {
public boolean updateUserAvatar(String userName, String avatar) {
return userMapper.updateUserAvatar(userName, avatar) > 0;
}
@ -333,11 +323,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param user
*
* @return
*/
@Override
public int resetPwd (SysUser user) {
public int resetPwd(SysUser user) {
return userMapper.updateUser(user);
}
@ -346,11 +335,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
* @param userName
* @param password
*
* @return
*/
@Override
public int resetUserPwd (String userName, String password) {
public int resetUserPwd(String userName, String password) {
return userMapper.resetUserPwd(userName, password);
}
@ -359,7 +347,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
* @param user
*/
public void insertUserRole (SysUser user) {
public void insertUserRole(SysUser user) {
this.insertUserRole(user.getUserId(), user.getRoleIds());
}
@ -368,7 +356,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
* @param user
*/
public void insertUserPost (SysUser user) {
public void insertUserPost(SysUser user) {
Long[] posts = user.getPostIds();
if (StringUtils.isNotEmpty(posts)) {
// 新增用户与岗位管理
@ -389,7 +377,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
* @param userId ID
* @param roleIds
*/
public void insertUserRole (Long userId, Long[] roleIds) {
public void insertUserRole(Long userId, Long[] roleIds) {
if (StringUtils.isNotEmpty(roleIds)) {
// 新增用户与角色管理
List<SysUserRole> list = new ArrayList<SysUserRole>();
@ -407,12 +395,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
* ID
*
* @param userId ID
*
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int deleteUserById (Long userId) {
public int deleteUserById(Long userId) {
// 删除用户与角色关联
userRoleMapper.deleteUserRoleByUserId(userId);
// 删除用户与岗位表
@ -424,12 +411,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
*
*
* @param userIds ID
*
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public int deleteUserByIds (Long[] userIds) {
public int deleteUserByIds(Long[] userIds) {
for (Long userId : userIds) {
checkUserAllowed(new SysUser(userId));
checkUserDataScope(userId);
@ -447,11 +433,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
* @param userList
* @param isUpdateSupport
* @param operName
*
* @return
*/
@Override
public String importUser (List<SysUser> userList, Boolean isUpdateSupport, String operName) {
public String importUser(List<SysUser> userList, Boolean isUpdateSupport, String operName) {
if (StringUtils.isNull(userList) || userList.size() == 0) {
throw new ServiceException("导入用户数据不能为空!");
}

View File

@ -155,6 +155,13 @@
where u.user_name = #{userName} and u.del_flag = '0'
</select>
<select id="selectUserByUserNameAndEmail" parameterType="String" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where (u.user_name = #{userName} and u.del_flag = '0') or u.email = #{userName}
</select>
<select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
<include refid="selectUserVo"/>
where u.user_id = #{userId}