refactor(user): 优化用户创建和更新逻辑
- 修改 UserCreateDto 和 UserUpdateDto 中的 roleIds 类型从 Set 改为 List - 更新 UserCreateDto 和 UserUpdateDto 中的 roleId 字段注释 - 调整 UserServiceImpl 中的 create 和 addUserRole 方法,以适应新的 List 类型 - 为 UserCreateDto 和 UserUpdateDto 中的 roleIds 添加 NotEmpty 注解
This commit is contained in:
parent
b4da8c3bf0
commit
ee8d7d16d0
@ -6,6 +6,7 @@ import lombok.NoArgsConstructor;
|
|||||||
|
|
||||||
import jakarta.validation.constraints.*;
|
import jakarta.validation.constraints.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -57,7 +58,6 @@ public class UserCreateDto {
|
|||||||
/**
|
/**
|
||||||
* 用户当前身份
|
* 用户当前身份
|
||||||
*/
|
*/
|
||||||
@NotEmpty(message = "角色不能为空")
|
|
||||||
public Long roleId;
|
public Long roleId;
|
||||||
/**
|
/**
|
||||||
* 昵称
|
* 昵称
|
||||||
@ -84,5 +84,6 @@ public class UserCreateDto {
|
|||||||
/**
|
/**
|
||||||
* 用户角色id集合
|
* 用户角色id集合
|
||||||
*/
|
*/
|
||||||
public Set<Long> roleIds;
|
@NotEmpty(message = "角色集合不能为空")
|
||||||
|
public List<Long> roleIds;
|
||||||
}
|
}
|
||||||
|
@ -64,11 +64,11 @@ public class UserUpdateDto {
|
|||||||
/**
|
/**
|
||||||
* 用户身份
|
* 用户身份
|
||||||
*/
|
*/
|
||||||
@NotEmpty(message = "角色不能为空")
|
|
||||||
public Long roleId;
|
public Long roleId;
|
||||||
|
|
||||||
public String remark;
|
public String remark;
|
||||||
|
|
||||||
public Set<Long> roleIds;
|
@NotEmpty(message = "角色集合不能为空")
|
||||||
|
public List<Long> roleIds;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -52,6 +52,7 @@ public class UserServiceImpl extends ServiceImpl<UserRepository, User> implement
|
|||||||
@Override
|
@Override
|
||||||
public Boolean create(UserCreateDto dto) {
|
public Boolean create(UserCreateDto dto) {
|
||||||
User user = new User();
|
User user = new User();
|
||||||
|
dto.setRoleId(dto.getRoleIds().get(0));
|
||||||
userMapper.convert(dto, user);
|
userMapper.convert(dto, user);
|
||||||
boolean saveSuccess = save(user);
|
boolean saveSuccess = save(user);
|
||||||
if (!saveSuccess) {
|
if (!saveSuccess) {
|
||||||
@ -76,6 +77,7 @@ public class UserServiceImpl extends ServiceImpl<UserRepository, User> implement
|
|||||||
}
|
}
|
||||||
if (dto.getRoleIds() != null && !dto.getRoleIds().isEmpty()) {
|
if (dto.getRoleIds() != null && !dto.getRoleIds().isEmpty()) {
|
||||||
userRolesRepository.delete(new LambdaQueryWrapper<UserRole>().eq(UserRole::getUserId, id));
|
userRolesRepository.delete(new LambdaQueryWrapper<UserRole>().eq(UserRole::getUserId, id));
|
||||||
|
dto.setRoleId(dto.getRoleIds().get(0));
|
||||||
addUserRole(dto.getRoleIds(), user.getId());
|
addUserRole(dto.getRoleIds(), user.getId());
|
||||||
}
|
}
|
||||||
BeanUtils.copyProperties(dto, user);
|
BeanUtils.copyProperties(dto, user);
|
||||||
@ -155,7 +157,7 @@ public class UserServiceImpl extends ServiceImpl<UserRepository, User> implement
|
|||||||
return userDetails;
|
return userDetails;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Boolean addUserRole(Set<Long> roleIds, Long userId) {
|
public Boolean addUserRole(List<Long> roleIds, Long userId) {
|
||||||
List<UserRole> userRoles = roleIds.stream()
|
List<UserRole> userRoles = roleIds.stream()
|
||||||
.map(roleId -> {
|
.map(roleId -> {
|
||||||
UserRole userRole = new UserRole();
|
UserRole userRole = new UserRole();
|
||||||
|
Loading…
Reference in New Issue
Block a user