正在显示
6 个修改的文件
包含
22 行增加
和
18 行删除
| @@ -125,7 +125,7 @@ public class SysUserController extends BaseController | @@ -125,7 +125,7 @@ public class SysUserController extends BaseController | ||
| 125 | @PostMapping | 125 | @PostMapping |
| 126 | public AjaxResult add(@Validated @RequestBody SysUser user) | 126 | public AjaxResult add(@Validated @RequestBody SysUser user) |
| 127 | { | 127 | { |
| 128 | - if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user.getUserName()))) | 128 | + if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) |
| 129 | { | 129 | { |
| 130 | return AjaxResult.error("新增用户'" + user.getUserName() + "'失败,登录账号已存在"); | 130 | return AjaxResult.error("新增用户'" + user.getUserName() + "'失败,登录账号已存在"); |
| 131 | } | 131 | } |
| @@ -154,7 +154,11 @@ public class SysUserController extends BaseController | @@ -154,7 +154,11 @@ public class SysUserController extends BaseController | ||
| 154 | { | 154 | { |
| 155 | userService.checkUserAllowed(user); | 155 | userService.checkUserAllowed(user); |
| 156 | userService.checkUserDataScope(user.getUserId()); | 156 | userService.checkUserDataScope(user.getUserId()); |
| 157 | - if (StringUtils.isNotEmpty(user.getPhonenumber()) | 157 | + if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(user))) |
| 158 | + { | ||
| 159 | + return AjaxResult.error("修改用户'" + user.getUserName() + "'失败,登录账号已存在"); | ||
| 160 | + } | ||
| 161 | + else if (StringUtils.isNotEmpty(user.getPhonenumber()) | ||
| 158 | && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) | 162 | && UserConstants.NOT_UNIQUE.equals(userService.checkPhoneUnique(user))) |
| 159 | { | 163 | { |
| 160 | return AjaxResult.error("修改用户'" + user.getUserName() + "'失败,手机号码已存在"); | 164 | return AjaxResult.error("修改用户'" + user.getUserName() + "'失败,手机号码已存在"); |
| @@ -41,9 +41,11 @@ public class SysRegisterService | @@ -41,9 +41,11 @@ public class SysRegisterService | ||
| 41 | public String register(RegisterBody registerBody) | 41 | public String register(RegisterBody registerBody) |
| 42 | { | 42 | { |
| 43 | String msg = "", username = registerBody.getUsername(), password = registerBody.getPassword(); | 43 | String msg = "", username = registerBody.getUsername(), password = registerBody.getPassword(); |
| 44 | + SysUser sysUser = new SysUser(); | ||
| 45 | + sysUser.setUserName(username); | ||
| 44 | 46 | ||
| 45 | - boolean captchaEnabled = configService.selectCaptchaEnabled(); | ||
| 46 | // 验证码开关 | 47 | // 验证码开关 |
| 48 | + boolean captchaEnabled = configService.selectCaptchaEnabled(); | ||
| 47 | if (captchaEnabled) | 49 | if (captchaEnabled) |
| 48 | { | 50 | { |
| 49 | validateCaptcha(username, registerBody.getCode(), registerBody.getUuid()); | 51 | validateCaptcha(username, registerBody.getCode(), registerBody.getUuid()); |
| @@ -67,16 +69,14 @@ public class SysRegisterService | @@ -67,16 +69,14 @@ public class SysRegisterService | ||
| 67 | { | 69 | { |
| 68 | msg = "密码长度必须在5到20个字符之间"; | 70 | msg = "密码长度必须在5到20个字符之间"; |
| 69 | } | 71 | } |
| 70 | - else if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(username))) | 72 | + else if (UserConstants.NOT_UNIQUE.equals(userService.checkUserNameUnique(sysUser))) |
| 71 | { | 73 | { |
| 72 | msg = "保存用户'" + username + "'失败,注册账号已存在"; | 74 | msg = "保存用户'" + username + "'失败,注册账号已存在"; |
| 73 | } | 75 | } |
| 74 | else | 76 | else |
| 75 | { | 77 | { |
| 76 | - SysUser sysUser = new SysUser(); | ||
| 77 | - sysUser.setUserName(username); | ||
| 78 | sysUser.setNickName(username); | 78 | sysUser.setNickName(username); |
| 79 | - sysUser.setPassword(SecurityUtils.encryptPassword(registerBody.getPassword())); | 79 | + sysUser.setPassword(SecurityUtils.encryptPassword(password)); |
| 80 | boolean regFlag = userService.registerUser(sysUser); | 80 | boolean regFlag = userService.registerUser(sysUser); |
| 81 | if (!regFlag) | 81 | if (!regFlag) |
| 82 | { | 82 | { |
| @@ -84,8 +84,7 @@ public class SysRegisterService | @@ -84,8 +84,7 @@ public class SysRegisterService | ||
| 84 | } | 84 | } |
| 85 | else | 85 | else |
| 86 | { | 86 | { |
| 87 | - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.REGISTER, | ||
| 88 | - MessageUtils.message("user.register.success"))); | 87 | + AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.REGISTER, MessageUtils.message("user.register.success"))); |
| 89 | } | 88 | } |
| 90 | } | 89 | } |
| 91 | return msg; | 90 | return msg; |
| @@ -107,7 +107,7 @@ public interface SysUserMapper | @@ -107,7 +107,7 @@ public interface SysUserMapper | ||
| 107 | * @param userName 用户名称 | 107 | * @param userName 用户名称 |
| 108 | * @return 结果 | 108 | * @return 结果 |
| 109 | */ | 109 | */ |
| 110 | - public int checkUserNameUnique(String userName); | 110 | + public SysUser checkUserNameUnique(String userName); |
| 111 | 111 | ||
| 112 | /** | 112 | /** |
| 113 | * 校验手机号码是否唯一 | 113 | * 校验手机号码是否唯一 |
| @@ -69,10 +69,10 @@ public interface ISysUserService | @@ -69,10 +69,10 @@ public interface ISysUserService | ||
| 69 | /** | 69 | /** |
| 70 | * 校验用户名称是否唯一 | 70 | * 校验用户名称是否唯一 |
| 71 | * | 71 | * |
| 72 | - * @param userName 用户名称 | 72 | + * @param user 用户信息 |
| 73 | * @return 结果 | 73 | * @return 结果 |
| 74 | */ | 74 | */ |
| 75 | - public String checkUserNameUnique(String userName); | 75 | + public String checkUserNameUnique(SysUser user); |
| 76 | 76 | ||
| 77 | /** | 77 | /** |
| 78 | * 校验手机号码是否唯一 | 78 | * 校验手机号码是否唯一 |
| @@ -161,14 +161,15 @@ public class SysUserServiceImpl implements ISysUserService | @@ -161,14 +161,15 @@ public class SysUserServiceImpl implements ISysUserService | ||
| 161 | /** | 161 | /** |
| 162 | * 校验用户名称是否唯一 | 162 | * 校验用户名称是否唯一 |
| 163 | * | 163 | * |
| 164 | - * @param userName 用户名称 | 164 | + * @param user 用户信息 |
| 165 | * @return 结果 | 165 | * @return 结果 |
| 166 | */ | 166 | */ |
| 167 | @Override | 167 | @Override |
| 168 | - public String checkUserNameUnique(String userName) | 168 | + public String checkUserNameUnique(SysUser user) |
| 169 | { | 169 | { |
| 170 | - int count = userMapper.checkUserNameUnique(userName); | ||
| 171 | - if (count > 0) | 170 | + Long userId = StringUtils.isNull(user.getUserId()) ? -1L : user.getUserId(); |
| 171 | + SysUser info = userMapper.checkUserNameUnique(user.getUserName()); | ||
| 172 | + if (StringUtils.isNotNull(info) && info.getUserId().longValue() != userId.longValue()) | ||
| 172 | { | 173 | { |
| 173 | return UserConstants.NOT_UNIQUE; | 174 | return UserConstants.NOT_UNIQUE; |
| 174 | } | 175 | } |
| @@ -130,8 +130,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | @@ -130,8 +130,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" | ||
| 130 | where u.user_id = #{userId} | 130 | where u.user_id = #{userId} |
| 131 | </select> | 131 | </select> |
| 132 | 132 | ||
| 133 | - <select id="checkUserNameUnique" parameterType="String" resultType="int"> | ||
| 134 | - select count(1) from sys_user where user_name = #{userName} and del_flag = '0' limit 1 | 133 | + <select id="checkUserNameUnique" parameterType="String" resultMap="SysUserResult"> |
| 134 | + select user_id, user_name from sys_user where user_name = #{userName} and del_flag = '0' limit 1 | ||
| 135 | </select> | 135 | </select> |
| 136 | 136 | ||
| 137 | <select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult"> | 137 | <select id="checkPhoneUnique" parameterType="String" resultMap="SysUserResult"> |
-
请 注册 或 登录 后发表评论