fix 修复 修改用户信息 校验用户名未排除当前用户问题

2.X
疯狂的狮子li 2 years ago
parent a97bd2b73d
commit 8d46866237

@ -149,7 +149,7 @@ public class SysUserController extends BaseController {
@Log(title = "用户管理", businessType = BusinessType.INSERT)
@PostMapping
public R<Void> add(@Validated @RequestBody SysUser user) {
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName()))) {
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) {
return R.fail("新增用户'" + user.getUserName() + "'失败,登录账号已存在");
} else if (StringUtils.isNotEmpty(user.getPhonenumber())
&& UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {
@ -171,7 +171,7 @@ public class SysUserController extends BaseController {
public R<Void> edit(@Validated @RequestBody SysUser user) {
userService.checkUserAllowed(user);
userService.checkUserDataScope(user.getUserId());
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName()))) {
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) {
return R.fail("修改用户'" + user.getUserName() + "'失败,登录账号已存在");
} else if (StringUtils.isNotEmpty(user.getPhonenumber())
&& UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) {

@ -94,7 +94,7 @@ public class RemoteUserServiceImpl implements RemoteUserService {
if (!("true".equals(configService.selectConfigByKey("sys.account.registerUser")))) {
throw new ServiceException("当前系统没有开启注册功能");
}
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(username))) {
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(sysUser))) {
throw new UserException("user.register.save.error", username);
}
return userService.registerUser(sysUser);

@ -81,10 +81,10 @@ public interface ISysUserService {
/**
*
*
* @param userName
* @param user
* @return
*/
String checkUserNameUnique(String userName);
String checkUserNameUnique(SysUser user);
/**
*

@ -193,12 +193,14 @@ public class SysUserServiceImpl implements ISysUserService {
/**
*
*
* @param userName
* @param user
* @return
*/
@Override
public String checkUserNameUnique(String userName) {
boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysUser>().eq(SysUser::getUserName, userName));
public String checkUserNameUnique(SysUser user) {
boolean exist = baseMapper.exists(new LambdaQueryWrapper<SysUser>()
.eq(SysUser::getUserName, user.getUserName())
.ne(ObjectUtil.isNotNull(user.getUserId()), SysUser::getUserId, user.getUserId()));
if (exist) {
return UserConstants.NOT_UNIQUE;
}

Loading…
Cancel
Save