mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 16:23:42 +08:00 
			
		
		
		
	fix 修改用户信息校验方法。
1. 校验用户名称是否唯一采用baseMapper.exists()方法判断是否存在。 2. 校验手机号码和校验email是否唯一,当存在userId时,sql查询条件才加上不等于当前userId。
This commit is contained in:
		@@ -1,6 +1,7 @@
 | 
			
		||||
package com.ruoyi.system.service.impl;
 | 
			
		||||
 | 
			
		||||
import cn.hutool.core.collection.CollUtil;
 | 
			
		||||
import cn.hutool.core.util.ObjectUtil;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 | 
			
		||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 | 
			
		||||
@@ -146,8 +147,8 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public String checkUserNameUnique(String userName) {
 | 
			
		||||
        long count = baseMapper.selectCount(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName, userName));
 | 
			
		||||
        if (count > 0) {
 | 
			
		||||
        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName, userName));
 | 
			
		||||
        if (exist) {
 | 
			
		||||
            return UserConstants.NOT_UNIQUE;
 | 
			
		||||
        }
 | 
			
		||||
        return UserConstants.UNIQUE;
 | 
			
		||||
@@ -161,11 +162,10 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public String checkPhoneUnique(SysUser user) {
 | 
			
		||||
        Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
 | 
			
		||||
        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysUser>()
 | 
			
		||||
        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysUser>()
 | 
			
		||||
            .eq(SysUser::getPhonenumber, user.getPhonenumber())
 | 
			
		||||
            .ne(SysUser::getUserId, userId));
 | 
			
		||||
        if (count) {
 | 
			
		||||
            .ne(ObjectUtil.isNotNull(user.getUserId()), SysUser::getUserId, user.getUserId()));
 | 
			
		||||
        if (exist) {
 | 
			
		||||
            return UserConstants.NOT_UNIQUE;
 | 
			
		||||
        }
 | 
			
		||||
        return UserConstants.UNIQUE;
 | 
			
		||||
@@ -179,11 +179,10 @@ public class SysUserServiceImpl implements ISysUserService, UserService {
 | 
			
		||||
     */
 | 
			
		||||
    @Override
 | 
			
		||||
    public String checkEmailUnique(SysUser user) {
 | 
			
		||||
        Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
 | 
			
		||||
        boolean count = baseMapper.exists(new LambdaQueryWrapper<SysUser>()
 | 
			
		||||
        boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysUser>()
 | 
			
		||||
            .eq(SysUser::getEmail, user.getEmail())
 | 
			
		||||
            .ne(SysUser::getUserId, userId));
 | 
			
		||||
        if (count) {
 | 
			
		||||
            .ne(ObjectUtil.isNotNull(user.getUserId()), SysUser::getUserId, user.getUserId()));
 | 
			
		||||
        if (exist) {
 | 
			
		||||
            return UserConstants.NOT_UNIQUE;
 | 
			
		||||
        }
 | 
			
		||||
        return UserConstants.UNIQUE;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user