|
@@ -15,6 +15,7 @@ import com.backendsys.utils.response.PageEntity;
|
|
|
import com.backendsys.utils.response.PageInfoResult;
|
|
|
import com.backendsys.utils.v2.PageUtils;
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
@@ -134,12 +135,19 @@ public class SysUserV2ServiceImpl extends ServiceImpl<SysUserDao, SysUser> imple
|
|
|
RLock lock = redissonClient.getLock("insertUser");
|
|
|
try { lock.tryLock(3, TimeUnit.SECONDS);
|
|
|
|
|
|
+ // 判断手机号码是否存在
|
|
|
+ if (sysUserDTO.getPhone() != null) {
|
|
|
+ SysUser sysUser = sysUserDao.selectOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getPhone, sysUserDTO.getPhone()));
|
|
|
+ if (sysUser != null) throw new CustException("手机号码已存在");
|
|
|
+ }
|
|
|
+
|
|
|
// 密码二次加密
|
|
|
String password = sysUserDTO.getPassword();
|
|
|
BCryptPasswordEncoder encoder = new BCryptPasswordEncoder();
|
|
|
String encodedPassword = encoder.encode(password);
|
|
|
sysUserDTO.setPassword(encodedPassword);
|
|
|
|
|
|
+ // 创建用户
|
|
|
sysUserDao.insertUser(sysUserDTO);
|
|
|
|
|
|
return Map.of("user_id", sysUserDTO.getId());
|
|
@@ -160,6 +168,12 @@ public class SysUserV2ServiceImpl extends ServiceImpl<SysUserDao, SysUser> imple
|
|
|
// 判断记录是否存在
|
|
|
MybatisUtil.checkExists(sysUserDao, "id", sysUserDTO.getUser_id(), "用户不存在");
|
|
|
|
|
|
+ // 判断手机号码是否存在
|
|
|
+ if (sysUserDTO.getPhone() != null) {
|
|
|
+ SysUser sysUser = sysUserDao.selectOne(new LambdaQueryWrapper<SysUser>().eq(SysUser::getPhone, sysUserDTO.getPhone()));
|
|
|
+ if (sysUser != null) throw new CustException("手机号码已存在");
|
|
|
+ }
|
|
|
+
|
|
|
// 当 status 状态为 -1(禁用) 时,同时清除登录状态
|
|
|
Integer status = sysUserDTO.getStatus();
|
|
|
if (status != null && status == -1) {
|