Unverified Commit c7e95d94 authored by 皆非's avatar 皆非 Committed by GitHub
Browse files

[代码修复](v2.6):修复手机号可以重复的bug

parent db6d523a
...@@ -44,6 +44,13 @@ public interface UserRepository extends JpaRepository<User, Long>, JpaSpecificat ...@@ -44,6 +44,13 @@ public interface UserRepository extends JpaRepository<User, Long>, JpaSpecificat
*/ */
User findByEmail(String email); User findByEmail(String email);
/**
* 根据手机号查询
* @param phone 手机号
* @return /
*/
User findByPhone(String phone);
/** /**
* 修改密码 * 修改密码
* @param username 用户名 * @param username 用户名
......
...@@ -91,6 +91,9 @@ public class UserServiceImpl implements UserService { ...@@ -91,6 +91,9 @@ public class UserServiceImpl implements UserService {
if (userRepository.findByEmail(resources.getEmail()) != null) { if (userRepository.findByEmail(resources.getEmail()) != null) {
throw new EntityExistException(User.class, "email", resources.getEmail()); throw new EntityExistException(User.class, "email", resources.getEmail());
} }
if (userRepository.findByPhone(resources.getPhone()) != null) {
throw new EntityExistException(User.class, "phone", resources.getPhone());
}
userRepository.save(resources); userRepository.save(resources);
} }
...@@ -101,14 +104,16 @@ public class UserServiceImpl implements UserService { ...@@ -101,14 +104,16 @@ public class UserServiceImpl implements UserService {
ValidationUtil.isNull(user.getId(), "User", "id", resources.getId()); ValidationUtil.isNull(user.getId(), "User", "id", resources.getId());
User user1 = userRepository.findByUsername(resources.getUsername()); User user1 = userRepository.findByUsername(resources.getUsername());
User user2 = userRepository.findByEmail(resources.getEmail()); User user2 = userRepository.findByEmail(resources.getEmail());
User user3 = userRepository.findByPhone(resources.getPhone());
if (user1 != null && !user.getId().equals(user1.getId())) { if (user1 != null && !user.getId().equals(user1.getId())) {
throw new EntityExistException(User.class, "username", resources.getUsername()); throw new EntityExistException(User.class, "username", resources.getUsername());
} }
if (user2 != null && !user.getId().equals(user2.getId())) { if (user2 != null && !user.getId().equals(user2.getId())) {
throw new EntityExistException(User.class, "email", resources.getEmail()); throw new EntityExistException(User.class, "email", resources.getEmail());
} }
if (user3 != null && !user.getId().equals(user3.getId())) {
throw new EntityExistException(User.class, "phone", resources.getPhone());
}
// 如果用户的角色改变 // 如果用户的角色改变
if (!resources.getRoles().equals(user.getRoles())) { if (!resources.getRoles().equals(user.getRoles())) {
redisUtils.del(CacheKey.DATE_USER + resources.getId()); redisUtils.del(CacheKey.DATE_USER + resources.getId());
...@@ -141,6 +146,10 @@ public class UserServiceImpl implements UserService { ...@@ -141,6 +146,10 @@ public class UserServiceImpl implements UserService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateCenter(User resources) { public void updateCenter(User resources) {
User user = userRepository.findById(resources.getId()).orElseGet(User::new); User user = userRepository.findById(resources.getId()).orElseGet(User::new);
User user1 = userRepository.findByPhone(resources.getPhone());
if (user1 != null && !user.getId().equals(user1.getId())) {
throw new EntityExistException(User.class, "phone", resources.getPhone());
}
user.setNickName(resources.getNickName()); user.setNickName(resources.getNickName());
user.setPhone(resources.getPhone()); user.setPhone(resources.getPhone());
user.setGender(resources.getGender()); user.setGender(resources.getGender());
......
...@@ -654,7 +654,7 @@ CREATE TABLE `sys_user` ( ...@@ -654,7 +654,7 @@ CREATE TABLE `sys_user` (
-- ---------------------------- -- ----------------------------
BEGIN; BEGIN;
INSERT INTO `sys_user` VALUES (1, 2, 'admin', '管理员', '男', '18888888888', '201507802@qq.com', 'avatar-20200806032259161.png', '/Users/jie/Documents/work/me/admin/eladmin/~/avatar/avatar-20200806032259161.png', '$2a$10$Egp1/gvFlt7zhlXVfEFw4OfWQCGPw0ClmMcc6FjTnvXNRVf9zdMRa', b'1', 1, NULL, 'admin', '2020-05-03 16:38:31', '2018-08-23 09:11:56', '2020-09-05 10:43:31'); INSERT INTO `sys_user` VALUES (1, 2, 'admin', '管理员', '男', '18888888888', '201507802@qq.com', 'avatar-20200806032259161.png', '/Users/jie/Documents/work/me/admin/eladmin/~/avatar/avatar-20200806032259161.png', '$2a$10$Egp1/gvFlt7zhlXVfEFw4OfWQCGPw0ClmMcc6FjTnvXNRVf9zdMRa', b'1', 1, NULL, 'admin', '2020-05-03 16:38:31', '2018-08-23 09:11:56', '2020-09-05 10:43:31');
INSERT INTO `sys_user` VALUES (2, 2, 'test', '测试', '男', '18888888888', '231@qq.com', NULL, NULL, '$2a$10$4XcyudOYTSz6fue6KFNMHeUQnCX5jbBQypLEnGk1PmekXt5c95JcK', b'0', 1, 'admin', 'admin', NULL, '2020-05-05 11:15:49', '2020-09-05 10:43:38'); INSERT INTO `sys_user` VALUES (2, 2, 'test', '测试', '男', '19999999999', '231@qq.com', NULL, NULL, '$2a$10$4XcyudOYTSz6fue6KFNMHeUQnCX5jbBQypLEnGk1PmekXt5c95JcK', b'0', 1, 'admin', 'admin', NULL, '2020-05-05 11:15:49', '2020-09-05 10:43:38');
COMMIT; COMMIT;
-- ---------------------------- -- ----------------------------
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment