修改用户登录账号重复验证
parent
13287e02eb
commit
e337f685bc
|
@ -130,7 +130,7 @@ public class SysUserController extends BaseController
|
|||
@ResponseBody
|
||||
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() + "'失败,登录账号已存在");
|
||||
}
|
||||
|
@ -176,7 +176,11 @@ public class SysUserController extends BaseController
|
|||
{
|
||||
userService.checkUserAllowed(user);
|
||||
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)))
|
||||
{
|
||||
return error("修改用户'" + user.getLoginName() + "'失败,手机号码已存在");
|
||||
|
@ -269,7 +273,7 @@ public class SysUserController extends BaseController
|
|||
@ResponseBody
|
||||
public String checkLoginNameUnique(SysUser user)
|
||||
{
|
||||
return userService.checkLoginNameUnique(user.getLoginName());
|
||||
return userService.checkLoginNameUnique(user);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -58,7 +58,7 @@ public class SysRegisterService
|
|||
{
|
||||
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 + "'失败,注册账号已存在";
|
||||
}
|
||||
|
@ -67,7 +67,7 @@ public class SysRegisterService
|
|||
user.setPwdUpdateDate(DateUtils.getNowDate());
|
||||
user.setUserName(loginName);
|
||||
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);
|
||||
if (!regFlag)
|
||||
{
|
||||
|
|
|
@ -104,7 +104,7 @@ public interface SysUserMapper
|
|||
* @param loginName 登录名称
|
||||
* @return 结果
|
||||
*/
|
||||
public int checkLoginNameUnique(String loginName);
|
||||
public SysUser checkLoginNameUnique(String loginName);
|
||||
|
||||
/**
|
||||
* 校验手机号码是否唯一
|
||||
|
|
|
@ -143,10 +143,10 @@ public interface ISysUserService
|
|||
/**
|
||||
* 校验用户名称是否唯一
|
||||
*
|
||||
* @param loginName 登录名称
|
||||
* @param user 用户信息
|
||||
* @return 结果
|
||||
*/
|
||||
public String checkLoginNameUnique(String loginName);
|
||||
public String checkLoginNameUnique(SysUser user);
|
||||
|
||||
/**
|
||||
* 校验手机号码是否唯一
|
||||
|
|
|
@ -347,16 +347,17 @@ public class SysUserServiceImpl implements ISysUserService
|
|||
}
|
||||
|
||||
/**
|
||||
* 校验登录名称是否唯一
|
||||
* 校验用户名称是否唯一
|
||||
*
|
||||
* @param loginName 用户名
|
||||
* @return
|
||||
* @param user 用户信息
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public String checkLoginNameUnique(String loginName)
|
||||
public String checkLoginNameUnique(SysUser user)
|
||||
{
|
||||
int count = userMapper.checkLoginNameUnique(loginName);
|
||||
if (count > 0)
|
||||
Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId();
|
||||
SysUser info = userMapper.checkLoginNameUnique(user.getLoginName());
|
||||
if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue())
|
||||
{
|
||||
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'
|
||||
</select>
|
||||
|
||||
<select id="checkLoginNameUnique" parameterType="String" resultType="int">
|
||||
select count(1) from sys_user where login_name=#{loginName} and del_flag = '0' limit 1
|
||||
<select id="checkLoginNameUnique" parameterType="String" resultMap="SysUserResult">
|
||||
select user_id, login_name from sys_user where login_name=#{loginName} and del_flag = '0' limit 1
|
||||
</select>
|
||||
|
||||
<select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult">
|
||||
|
|
Loading…
Reference in New Issue