修改用户登录账号重复验证

pull/252/head
RuoYi 2 years ago
parent 3cf088a0d8
commit ad54d36385

@ -143,7 +143,7 @@ public class SysUserController extends BaseController
{
return R.fail("当前系统没有开启注册功能!");
}
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(username)))
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(sysUser)))
{
return R.fail("保存用户'" + username + "'失败,注册账号已存在");
}
@ -200,7 +200,7 @@ public class SysUserController extends BaseController
@PostMapping
public AjaxResult add(@Validated @RequestBody SysUser user)
{
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName())))
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user)))
{
return AjaxResult.error("新增用户'" + user.getUserName() + "'失败,登录账号已存在");
}
@ -229,7 +229,11 @@ public class SysUserController extends BaseController
{
userService.checkUserAllowed(user);
userService.checkUserDataScope(user.getUserId());
if (StringUtils.isNotEmpty(user.getPhonenumber())
if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user)))
{
return AjaxResult.error("修改用户'" + user.getUserName() + "'失败,登录账号已存在");
}
else if (StringUtils.isNotEmpty(user.getPhonenumber())
&& UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
{
return AjaxResult.error("修改用户'" + user.getUserName() + "'失败,手机号码已存在");

@ -107,7 +107,7 @@ public interface SysUserMapper
* @param userName
* @return
*/
public int checkUserNameUnique(String userName);
public SysUser checkUserNameUnique(String userName);
/**
*

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

@ -161,14 +161,15 @@ public class SysUserServiceImpl implements ISysUserService
/**
*
*
* @param userName
* @param user
* @return
*/
@Override
public String checkUserNameUnique(String userName)
public String checkUserNameUnique(SysUser user)
{
int count = userMapper.checkUserNameUnique(userName);
if (count > 0)
Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
SysUser info = userMapper.checkUserNameUnique(user.getUserName());
if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue())
{
return UserConstants.NOT_UNIQUE;
}

@ -130,8 +130,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where u.user_id = #{userId}
</select>
<select id="checkUserNameUnique" parameterType="String" resultType="int">
select count(1) from sys_user where user_name = #{userName} and del_flag = '0' limit 1
<select id="checkUserNameUnique" parameterType="String" resultMap="SysUserResult">
select user_id, user_name from sys_user where user_name = #{userName} and del_flag = '0' limit 1
</select>
<select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">

Loading…
Cancel
Save