mirror of
https://github.com/continew-org/continew-admin.git
synced 2025-09-11 16:57:12 +08:00
优化:优化校验工具类的使用及部分模板文本写法
1.优化校验工具类,支持传入 {} 模板文本 2.校验工具类增加 throwIf 重载方法,适合于 boolean 类型参数的情况 3.优化一些模板文本的写法 4.优化一些其他细节
This commit is contained in:
@@ -67,7 +67,7 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, DeptDO, DeptVO,
|
||||
public Long add(DeptRequest request) {
|
||||
String name = request.getName();
|
||||
boolean isExists = this.checkNameExists(name, request.getParentId(), null);
|
||||
CheckUtils.throwIf(() -> isExists, String.format("新增失败,'%s' 已存在", name));
|
||||
CheckUtils.throwIf(isExists, "新增失败,[{}] 已存在", name);
|
||||
|
||||
request.setAncestors(this.getAncestors(request.getParentId()));
|
||||
request.setStatus(DisEnableStatusEnum.ENABLE);
|
||||
@@ -79,20 +79,21 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, DeptDO, DeptVO,
|
||||
public void update(DeptRequest request, Long id) {
|
||||
String name = request.getName();
|
||||
boolean isExists = this.checkNameExists(name, request.getParentId(), id);
|
||||
CheckUtils.throwIf(() -> isExists, String.format("修改失败,'%s' 已存在", name));
|
||||
DeptDO oldDept = this.getById(id);
|
||||
CheckUtils.throwIf(
|
||||
() -> DisEnableStatusEnum.DISABLE.equals(request.getStatus())
|
||||
&& DataTypeEnum.SYSTEM.equals(oldDept.getType()),
|
||||
String.format("'%s' 是系统内置部门,不允许禁用", oldDept.getName()));
|
||||
CheckUtils.throwIf(isExists, "修改失败,[{}] 已存在", name);
|
||||
DeptDO oldDept = super.getById(id);
|
||||
if (DataTypeEnum.SYSTEM.equals(oldDept.getType())) {
|
||||
CheckUtils.throwIf(DisEnableStatusEnum.DISABLE.equals(request.getStatus()), "[{}] 是系统内置部门,不允许禁用",
|
||||
oldDept.getName());
|
||||
CheckUtils.throwIf(ObjectUtil.notEqual(oldDept.getParentId(), request.getParentId()),
|
||||
"[{}] 是系统内置部门,不允许变更上级部门", oldDept.getName());
|
||||
}
|
||||
|
||||
// 变更上级部门
|
||||
if (ObjectUtil.notEqual(oldDept.getParentId(), request.getParentId())) {
|
||||
CheckUtils.throwIf(() -> DataTypeEnum.SYSTEM.equals(oldDept.getType()),
|
||||
String.format("'%s' 是系统内置部门,不允许变更上级部门", oldDept.getName()));
|
||||
// 更新祖级列表
|
||||
String newAncestors = this.getAncestors(request.getParentId());
|
||||
request.setAncestors(newAncestors);
|
||||
// 更新子级的祖级列表
|
||||
this.updateChildrenAncestors(newAncestors, oldDept.getAncestors(), id);
|
||||
}
|
||||
super.update(request, id);
|
||||
@@ -104,9 +105,9 @@ public class DeptServiceImpl extends BaseServiceImpl<DeptMapper, DeptDO, DeptVO,
|
||||
List<DeptDO> list =
|
||||
baseMapper.lambdaQuery().select(DeptDO::getName, DeptDO::getType).in(DeptDO::getId, ids).list();
|
||||
Optional<DeptDO> isSystemData = list.stream().filter(d -> DataTypeEnum.SYSTEM.equals(d.getType())).findFirst();
|
||||
CheckUtils.throwIf(isSystemData::isPresent,
|
||||
String.format("所选部门 '%s' 是系统内置部门,不允许删除", isSystemData.orElseGet(DeptDO::new).getName()));
|
||||
CheckUtils.throwIf(() -> userService.countByDeptIds(ids) > 0, "所选部门存在用户关联,请解除关联后重试");
|
||||
CheckUtils.throwIf(isSystemData::isPresent, "所选部门 [{}] 是系统内置部门,不允许删除",
|
||||
isSystemData.orElseGet(DeptDO::new).getName());
|
||||
CheckUtils.throwIf(userService.countByDeptIds(ids) > 0, "所选部门存在用户关联,请解除关联后重试");
|
||||
|
||||
// 删除部门
|
||||
super.delete(ids);
|
||||
|
@@ -51,7 +51,7 @@ public class MenuServiceImpl extends BaseServiceImpl<MenuMapper, MenuDO, MenuVO,
|
||||
public Long add(MenuRequest request) {
|
||||
String title = request.getTitle();
|
||||
boolean isExists = this.checkNameExists(title, request.getParentId(), null);
|
||||
CheckUtils.throwIf(() -> isExists, String.format("新增失败,'%s'已存在", title));
|
||||
CheckUtils.throwIf(isExists, "新增失败,[{}] 已存在", title);
|
||||
|
||||
request.setStatus(DisEnableStatusEnum.ENABLE);
|
||||
return super.add(request);
|
||||
@@ -62,7 +62,7 @@ public class MenuServiceImpl extends BaseServiceImpl<MenuMapper, MenuDO, MenuVO,
|
||||
public void update(MenuRequest request, Long id) {
|
||||
String title = request.getTitle();
|
||||
boolean isExists = this.checkNameExists(title, request.getParentId(), id);
|
||||
CheckUtils.throwIf(() -> isExists, String.format("修改失败,'%s'已存在", title));
|
||||
CheckUtils.throwIf(isExists, "修改失败,[{}] 已存在", title);
|
||||
|
||||
super.update(request, id);
|
||||
}
|
||||
|
@@ -63,9 +63,9 @@ public class RoleServiceImpl extends BaseServiceImpl<RoleMapper, RoleDO, RoleVO,
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Long add(RoleRequest request) {
|
||||
String name = request.getName();
|
||||
CheckUtils.throwIf(() -> this.checkNameExists(name, null), String.format("新增失败,'%s'已存在", name));
|
||||
CheckUtils.throwIf(this.checkNameExists(name, null), "新增失败,[{}] 已存在", name);
|
||||
String code = request.getCode();
|
||||
CheckUtils.throwIf(() -> this.checkCodeExists(code, null), String.format("新增失败,'%s'已存在", code));
|
||||
CheckUtils.throwIf(this.checkCodeExists(code, null), "新增失败,[{}] 已存在", code);
|
||||
|
||||
// 新增信息
|
||||
request.setStatus(DisEnableStatusEnum.ENABLE);
|
||||
@@ -81,17 +81,17 @@ public class RoleServiceImpl extends BaseServiceImpl<RoleMapper, RoleDO, RoleVO,
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void update(RoleRequest request, Long id) {
|
||||
String name = request.getName();
|
||||
CheckUtils.throwIf(() -> this.checkNameExists(name, id), String.format("修改失败,'%s'已存在", name));
|
||||
CheckUtils.throwIf(this.checkNameExists(name, id), "修改失败,[{}] 已存在", name);
|
||||
String code = request.getCode();
|
||||
CheckUtils.throwIf(() -> this.checkCodeExists(code, id), String.format("修改失败,'%s'已存在", code));
|
||||
RoleDO oldRole = this.getById(id);
|
||||
CheckUtils.throwIf(this.checkCodeExists(code, id), "修改失败,[{}] 已存在", code);
|
||||
RoleDO oldRole = super.getById(id);
|
||||
if (DataTypeEnum.SYSTEM.equals(oldRole.getType())) {
|
||||
CheckUtils.throwIf(() -> DisEnableStatusEnum.DISABLE.equals(request.getStatus()),
|
||||
String.format("'%s' 是系统内置角色,不允许禁用", oldRole.getName()));
|
||||
CheckUtils.throwIfNotEqual(request.getCode(), oldRole.getCode(),
|
||||
String.format("'%s' 是系统内置角色,不允许修改角色编码", oldRole.getName()));
|
||||
CheckUtils.throwIfNotEqual(request.getDataScope(), oldRole.getDataScope(),
|
||||
String.format("'%s' 是系统内置角色,不允许修改角色数据权限", oldRole.getName()));
|
||||
CheckUtils.throwIf(DisEnableStatusEnum.DISABLE.equals(request.getStatus()), "[{}] 是系统内置角色,不允许禁用",
|
||||
oldRole.getName());
|
||||
CheckUtils.throwIfNotEqual(request.getCode(), oldRole.getCode(), "[{}] 是系统内置角色,不允许修改角色编码",
|
||||
oldRole.getName());
|
||||
CheckUtils.throwIfNotEqual(request.getDataScope(), oldRole.getDataScope(), "[{}] 是系统内置角色,不允许修改角色数据权限",
|
||||
oldRole.getName());
|
||||
}
|
||||
|
||||
// 更新信息
|
||||
@@ -110,9 +110,9 @@ public class RoleServiceImpl extends BaseServiceImpl<RoleMapper, RoleDO, RoleVO,
|
||||
List<RoleDO> list =
|
||||
baseMapper.lambdaQuery().select(RoleDO::getName, RoleDO::getType).in(RoleDO::getId, ids).list();
|
||||
Optional<RoleDO> isSystemData = list.stream().filter(r -> DataTypeEnum.SYSTEM.equals(r.getType())).findFirst();
|
||||
CheckUtils.throwIf(isSystemData::isPresent,
|
||||
String.format("所选角色 '%s' 是系统内置角色,不允许删除", isSystemData.orElseGet(RoleDO::new).getName()));
|
||||
CheckUtils.throwIf(() -> userRoleService.countByRoleIds(ids) > 0, "所选角色存在用户关联,请解除关联后重试");
|
||||
CheckUtils.throwIf(isSystemData::isPresent, "所选角色 [{}] 是系统内置角色,不允许删除",
|
||||
isSystemData.orElseGet(RoleDO::new).getName());
|
||||
CheckUtils.throwIf(userRoleService.countByRoleIds(ids) > 0, "所选角色存在用户关联,请解除关联后重试");
|
||||
|
||||
// 删除角色
|
||||
super.delete(ids);
|
||||
|
@@ -80,7 +80,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserVO,
|
||||
public Long add(UserRequest request) {
|
||||
String username = request.getUsername();
|
||||
boolean isExists = this.checkNameExists(username, null);
|
||||
CheckUtils.throwIf(() -> isExists, String.format("新增失败,'%s'已存在", username));
|
||||
CheckUtils.throwIf(isExists, "新增失败,[{}] 已存在", username);
|
||||
|
||||
// 新增信息
|
||||
request.setStatus(DisEnableStatusEnum.ENABLE);
|
||||
@@ -98,16 +98,16 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserVO,
|
||||
public void update(UserRequest request, Long id) {
|
||||
String username = request.getUsername();
|
||||
boolean isExists = this.checkNameExists(username, id);
|
||||
CheckUtils.throwIf(() -> isExists, String.format("修改失败,'%s'已存在", username));
|
||||
CheckUtils.throwIf(isExists, "修改失败,[{}] 已存在", username);
|
||||
UserDO oldUser = super.getById(id);
|
||||
if (DataTypeEnum.SYSTEM.equals(oldUser.getType())) {
|
||||
CheckUtils.throwIf(() -> DisEnableStatusEnum.DISABLE.equals(request.getStatus()),
|
||||
String.format("'%s' 是系统内置用户,不允许禁用", oldUser.getNickname()));
|
||||
CheckUtils.throwIf(DisEnableStatusEnum.DISABLE.equals(request.getStatus()), "[{}] 是系统内置用户,不允许禁用",
|
||||
oldUser.getNickname());
|
||||
List<Long> oldRoleIdList =
|
||||
userRoleService.listRoleIdByUserId(id).stream().sorted().collect(Collectors.toList());
|
||||
List<Long> newRoleIdList = request.getRoleIds().stream().sorted().collect(Collectors.toList());
|
||||
CheckUtils.throwIf(() -> !CollUtil.isEqualList(newRoleIdList, oldRoleIdList),
|
||||
String.format("'%s' 是系统内置用户,不允许变更所属角色", oldUser.getNickname()));
|
||||
CheckUtils.throwIf(!CollUtil.isEqualList(newRoleIdList, oldRoleIdList), "[{}] 是系统内置用户,不允许变更所属角色",
|
||||
oldUser.getNickname());
|
||||
}
|
||||
|
||||
// 更新信息
|
||||
@@ -122,8 +122,8 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserVO,
|
||||
List<UserDO> list =
|
||||
baseMapper.lambdaQuery().select(UserDO::getNickname, UserDO::getType).in(UserDO::getId, ids).list();
|
||||
Optional<UserDO> isSystemData = list.stream().filter(u -> DataTypeEnum.SYSTEM.equals(u.getType())).findFirst();
|
||||
CheckUtils.throwIf(isSystemData::isPresent,
|
||||
String.format("所选用户 '%s' 是系统内置用户,不允许删除", isSystemData.orElseGet(UserDO::new).getNickname()));
|
||||
CheckUtils.throwIf(isSystemData::isPresent, "所选用户 [{}] 是系统内置用户,不允许删除",
|
||||
isSystemData.orElseGet(UserDO::new).getNickname());
|
||||
|
||||
// 删除用户
|
||||
super.delete(ids);
|
||||
@@ -147,12 +147,11 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserVO,
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public String uploadAvatar(MultipartFile avatarFile, Long id) {
|
||||
Long avatarMaxSizeInMb = localStorageProperties.getAvatarMaxSizeInMb();
|
||||
CheckUtils.throwIf(() -> avatarFile.getSize() > avatarMaxSizeInMb * 1024 * 1024,
|
||||
String.format("请上传小于 %s MB 的图片", avatarMaxSizeInMb));
|
||||
CheckUtils.throwIf(avatarFile.getSize() > avatarMaxSizeInMb * 1024 * 1024, "请上传小于 {}MB 的图片", avatarMaxSizeInMb);
|
||||
String avatarImageType = FileNameUtil.extName(avatarFile.getOriginalFilename());
|
||||
String[] avatarSupportImgTypes = FileConsts.AVATAR_SUPPORTED_IMG_TYPES;
|
||||
CheckUtils.throwIf(() -> !StrUtil.equalsAnyIgnoreCase(avatarImageType, avatarSupportImgTypes),
|
||||
String.format("头像仅支持 %s 格式的图片", String.join(StringConsts.CHINESE_COMMA, avatarSupportImgTypes)));
|
||||
CheckUtils.throwIf(!StrUtil.equalsAnyIgnoreCase(avatarImageType, avatarSupportImgTypes), "头像仅支持 {} 格式的图片",
|
||||
String.join(StringConsts.CHINESE_COMMA, avatarSupportImgTypes));
|
||||
|
||||
// 上传新头像
|
||||
String avatarPath = localStorageProperties.getPath().getAvatar();
|
||||
@@ -201,7 +200,7 @@ public class UserServiceImpl extends BaseServiceImpl<UserMapper, UserDO, UserVO,
|
||||
UserDO userDO = super.getById(id);
|
||||
CheckUtils.throwIfNotEqual(SecureUtils.md5Salt(currentPassword, id.toString()), userDO.getPassword(), "当前密码错误");
|
||||
Long count = baseMapper.lambdaQuery().eq(UserDO::getEmail, newEmail).count();
|
||||
CheckUtils.throwIf(() -> count > 0, "邮箱已绑定其他账号,请更换其他邮箱");
|
||||
CheckUtils.throwIf(count > 0, "邮箱已绑定其他账号,请更换其他邮箱");
|
||||
CheckUtils.throwIfEqual(newEmail, userDO.getEmail(), "新邮箱不能与当前邮箱相同");
|
||||
|
||||
// 更新邮箱
|
||||
|
Reference in New Issue
Block a user