修改用户登录账号重复验证
parent
13287e02eb
commit
e337f685bc
|
@ -130,7 +130,7 @@ public class SysUserController extends BaseController
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public AjaxResult addSave(@Validated SysUser user)
|
public AjaxResult addSave(@Validated SysUser user)
|
||||||
{
|
{
|
||||||
if (UserConstants.USER_NAME_NOT_UNIQUE.equals(userService.checkLoginNameUnique(user.getLoginName())))
|
if (UserConstants.USER_NAME_NOT_UNIQUE.equals(userService.checkLoginNameUnique(user)))
|
||||||
{
|
{
|
||||||
return error("新增用户'" + user.getLoginName() + "'失败,登录账号已存在");
|
return error("新增用户'" + user.getLoginName() + "'失败,登录账号已存在");
|
||||||
}
|
}
|
||||||
|
@ -176,7 +176,11 @@ public class SysUserController extends BaseController
|
||||||
{
|
{
|
||||||
userService.checkUserAllowed(user);
|
userService.checkUserAllowed(user);
|
||||||
userService.checkUserDataScope(user.getUserId());
|
userService.checkUserDataScope(user.getUserId());
|
||||||
if (StringUtils.isNotEmpty(user.getPhonenumber())
|
if (UserConstants.USER_NAME_NOT_UNIQUE.equals(userService.checkLoginNameUnique(user)))
|
||||||
|
{
|
||||||
|
return error("修改用户'" + user.getLoginName() + "'失败,登录账号已存在");
|
||||||
|
}
|
||||||
|
else if (StringUtils.isNotEmpty(user.getPhonenumber())
|
||||||
&& UserConstants.USER_PHONE_NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
&& UserConstants.USER_PHONE_NOT_UNIQUE.equals(userService.checkPhoneUnique(user)))
|
||||||
{
|
{
|
||||||
return error("修改用户'" + user.getLoginName() + "'失败,手机号码已存在");
|
return error("修改用户'" + user.getLoginName() + "'失败,手机号码已存在");
|
||||||
|
@ -269,7 +273,7 @@ public class SysUserController extends BaseController
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public String checkLoginNameUnique(SysUser user)
|
public String checkLoginNameUnique(SysUser user)
|
||||||
{
|
{
|
||||||
return userService.checkLoginNameUnique(user.getLoginName());
|
return userService.checkLoginNameUnique(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -58,7 +58,7 @@ public class SysRegisterService
|
||||||
{
|
{
|
||||||
msg = "账户长度必须在2到20个字符之间";
|
msg = "账户长度必须在2到20个字符之间";
|
||||||
}
|
}
|
||||||
else if (UserConstants.USER_NAME_NOT_UNIQUE.equals(userService.checkLoginNameUnique(loginName)))
|
else if (UserConstants.USER_NAME_NOT_UNIQUE.equals(userService.checkLoginNameUnique(user)))
|
||||||
{
|
{
|
||||||
msg = "保存用户'" + loginName + "'失败,注册账号已存在";
|
msg = "保存用户'" + loginName + "'失败,注册账号已存在";
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ public class SysRegisterService
|
||||||
user.setPwdUpdateDate(DateUtils.getNowDate());
|
user.setPwdUpdateDate(DateUtils.getNowDate());
|
||||||
user.setUserName(loginName);
|
user.setUserName(loginName);
|
||||||
user.setSalt(ShiroUtils.randomSalt());
|
user.setSalt(ShiroUtils.randomSalt());
|
||||||
user.setPassword(passwordService.encryptPassword(user.getLoginName(), user.getPassword(), user.getSalt()));
|
user.setPassword(passwordService.encryptPassword(loginName, password, user.getSalt()));
|
||||||
boolean regFlag = userService.registerUser(user);
|
boolean regFlag = userService.registerUser(user);
|
||||||
if (!regFlag)
|
if (!regFlag)
|
||||||
{
|
{
|
||||||
|
|
|
@ -104,7 +104,7 @@ public interface SysUserMapper
|
||||||
* @param loginName 登录名称
|
* @param loginName 登录名称
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int checkLoginNameUnique(String loginName);
|
public SysUser checkLoginNameUnique(String loginName);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验手机号码是否唯一
|
* 校验手机号码是否唯一
|
||||||
|
|
|
@ -143,10 +143,10 @@ public interface ISysUserService
|
||||||
/**
|
/**
|
||||||
* 校验用户名称是否唯一
|
* 校验用户名称是否唯一
|
||||||
*
|
*
|
||||||
* @param loginName 登录名称
|
* @param user 用户信息
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public String checkLoginNameUnique(String loginName);
|
public String checkLoginNameUnique(SysUser user);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验手机号码是否唯一
|
* 校验手机号码是否唯一
|
||||||
|
|
|
@ -347,16 +347,17 @@ public class SysUserServiceImpl implements ISysUserService
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 校验登录名称是否唯一
|
* 校验用户名称是否唯一
|
||||||
*
|
*
|
||||||
* @param loginName 用户名
|
* @param user 用户信息
|
||||||
* @return
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String checkLoginNameUnique(String loginName)
|
public String checkLoginNameUnique(SysUser user)
|
||||||
{
|
{
|
||||||
int count = userMapper.checkLoginNameUnique(loginName);
|
Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
|
||||||
if (count > 0)
|
SysUser info = userMapper.checkLoginNameUnique(user.getLoginName());
|
||||||
|
if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue())
|
||||||
{
|
{
|
||||||
return UserConstants.USER_NAME_NOT_UNIQUE;
|
return UserConstants.USER_NAME_NOT_UNIQUE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -138,8 +138,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
where u.email = #{email} and u.del_flag = '0'
|
where u.email = #{email} and u.del_flag = '0'
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="checkLoginNameUnique" parameterType="String" resultType="int">
|
<select id="checkLoginNameUnique" parameterType="String" resultMap="SysUserResult">
|
||||||
select count(1) from sys_user where login_name=#{loginName} and del_flag = '0' limit 1
|
select user_id, login_name from sys_user where login_name=#{loginName} and del_flag = '0' limit 1
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
|
<select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
|
||||||
|
|
Loading…
Reference in New Issue