邮箱登录

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

View File

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

View File

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

View File

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

View File

@ -155,6 +155,13 @@
where u.user_name = #{userName} and u.del_flag = '0' where u.user_name = #{userName} and u.del_flag = '0'
</select> </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"> <select id="selectUserById" parameterType="Long" resultMap="SysUserResult">
<include refid="selectUserVo"/> <include refid="selectUserVo"/>
where u.user_id = #{userId} where u.user_id = #{userId}