bug修复
This commit is contained in:
@@ -44,4 +44,6 @@ public interface UserValidMessage {
|
||||
|
||||
String LOGIN_FAILED = "登录失败,用户名或密码错误";
|
||||
|
||||
String FUNCTION_NAME_FORMAT_ERROR = "菜单名称格式错误,只能包含字母、数字、中文、下划线、中划线、空格,长度为1-32个字符";
|
||||
String FUNCTION_CODE_FORMAT_ERROR = "菜单编码格式错误,只能包含字母、数字、下划线、中划线、空格,长度为1-32个字符";
|
||||
}
|
||||
|
||||
@@ -13,18 +13,19 @@ public enum UserResponseEnum {
|
||||
USER_NAME_REPEAT("A010003", "用户名重复,请检查name参数"),
|
||||
REGISTER_EMAIL_FAIL("A010004", "该邮箱已被注册"),
|
||||
NAME_OR_CODE_REPEAT("A010005", "名称或编码已存在"),
|
||||
EXISTS_SAME_MENU_CHILDREN("A010006", "当前菜单下已存在相同的子菜单"),
|
||||
EXISTS_SAME_MENU_CHILDREN("A010006", "该层级下已存在相同名称或相同编码或相同路径或相同组件地址的菜单"),
|
||||
EXISTS_CHILDREN_NOT_UPDATE("A010008", "该菜单下存在子节点,无法将菜单修改为按钮"),
|
||||
EXISTS_CHILDREN_NOT_DELETE("A010007", "该节点下存在子节点,无法删除"),
|
||||
SUPER_ADMINSTRATOR_ROLE_CANNOT_UPDATE("A010009", "禁止修改超级管理员角色"),
|
||||
SUPER_ADMINSTRATOR_ROLE_CANNOT_DELETE("A010009", "禁止删除超级管理员角色"),
|
||||
SUPER_ADMIN_CANNOT_DELETE("A010010", "禁止删除超级管理员用户"),
|
||||
COMPONENT_NOT_BLANK("A010011", "组件地址不能为空"),
|
||||
FUNCTION_PATH_FORMAT_ERROR("A010012", "路由地址格式错误"),
|
||||
FUNCTION_PATH_FORMAT_ERROR("A010012", "菜单路由地址格式错误,只能包含字母、数字、下划线、中划线、空格、斜线、反斜线,长度为1-32个字符"),
|
||||
FUNCTION_COMPONENT_FORMAT_ERROR("A010013","菜单组件地址格式错误,只能包含字母、数字、下划线、中划线、空格、斜线、反斜线,长度为1-32个字符" ),
|
||||
SUPER_ADMIN_REPEAT("A010013","超级管理员已存在,请勿重复添加" ),
|
||||
RSA_DECRYT_ERROR("A010014","RSA解密失败" ),
|
||||
PASSWORD_SAME("A010015", "新密码不能与旧密码相同"),
|
||||
OLD_PASSWORD_ERROR("A010016", "旧密码错误");
|
||||
OLD_PASSWORD_ERROR("A010016", "旧密码错误"), ;
|
||||
|
||||
private String code;
|
||||
private String message;
|
||||
|
||||
@@ -25,11 +25,12 @@ public class SysFunctionParam {
|
||||
|
||||
@ApiModelProperty("名称")
|
||||
@NotBlank(message = UserValidMessage.NAME_NOT_BLANK)
|
||||
@Pattern(regexp = PatternRegex.FUNCTION_NAME, message = UserValidMessage.NAME_FORMAT_ERROR)
|
||||
@Pattern(regexp = PatternRegex.FUNCTION_NAME_REGEX, message = UserValidMessage.FUNCTION_NAME_FORMAT_ERROR)
|
||||
private String name;
|
||||
|
||||
@ApiModelProperty("编码")
|
||||
@NotBlank(message = UserValidMessage.CODE_NOT_BLANK)
|
||||
@Pattern(regexp = PatternRegex.FUNCTION_CODE_REGEX, message = UserValidMessage.FUNCTION_CODE_FORMAT_ERROR)
|
||||
private String code;
|
||||
|
||||
@ApiModelProperty("路径")
|
||||
@@ -58,7 +59,7 @@ public class SysFunctionParam {
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public static class QueryParam extends BaseParam {
|
||||
@ApiModelProperty("名称")
|
||||
@Pattern(regexp = PatternRegex.FUNCTION_NAME, message = UserValidMessage.NAME_FORMAT_ERROR)
|
||||
@Pattern(regexp = PatternRegex.FUNCTION_NAME_REGEX, message = UserValidMessage.FUNCTION_NAME_FORMAT_ERROR)
|
||||
private String name;
|
||||
}
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ public class SysRoleParam {
|
||||
@Data
|
||||
public static class RoleBindFunction {
|
||||
@ApiModelProperty("角色id")
|
||||
@NotNull(message = UserValidMessage.ID_NOT_BLANK)
|
||||
@NotBlank(message = UserValidMessage.ID_NOT_BLANK)
|
||||
@Pattern(regexp = PatternRegex.SYSTEM_ID, message = UserValidMessage.ID_FORMAT_ERROR)
|
||||
private String roleId;
|
||||
|
||||
|
||||
@@ -48,6 +48,8 @@ public class SysFunctionServiceImpl extends ServiceImpl<SysFunctionMapper, SysFu
|
||||
@Override
|
||||
@Transactional
|
||||
public boolean addFunction(SysFunctionParam functionParam) {
|
||||
functionParam.setPath(functionParam.getPath().trim());
|
||||
functionParam.setComponent(functionParam.getComponent().trim());
|
||||
checkFunctionParam(functionParam, false);
|
||||
SysFunction function = new SysFunction();
|
||||
BeanUtil.copyProperties(functionParam, function);
|
||||
@@ -70,6 +72,8 @@ public class SysFunctionServiceImpl extends ServiceImpl<SysFunctionMapper, SysFu
|
||||
@Transactional
|
||||
public boolean updateFunction(SysFunctionParam.UpdateParam param) {
|
||||
boolean result = false;
|
||||
param.setPath(param.getPath().trim());
|
||||
param.setComponent(param.getComponent().trim());
|
||||
checkFunctionParam(param, true);
|
||||
SysFunction oldFunction = this.lambdaQuery().eq(SysFunction::getId, param.getId()).eq(SysFunction::getState, DataStateEnum.ENABLE.getCode()).one();
|
||||
List<SysFunction> childrenList = this.lambdaQuery().eq(SysFunction::getPid, param.getId()).eq(SysFunction::getState, DataStateEnum.ENABLE.getCode()).list();
|
||||
@@ -168,13 +172,23 @@ public class SysFunctionServiceImpl extends ServiceImpl<SysFunctionMapper, SysFu
|
||||
if (StrUtil.isBlank(functionParam.getComponent())) {
|
||||
throw new BusinessException(UserResponseEnum.COMPONENT_NOT_BLANK);
|
||||
}
|
||||
if (StrUtil.isBlank(functionParam.getPath()) || !Pattern.matches(PatternRegex.FUNCTION_URL, functionParam.getPath())) {
|
||||
if (StrUtil.isBlank(functionParam.getPath()) || !Pattern.matches(PatternRegex.FUNCTION_PATH_REGEX, functionParam.getPath())) {
|
||||
throw new BusinessException(UserResponseEnum.FUNCTION_PATH_FORMAT_ERROR);
|
||||
}
|
||||
if(StrUtil.isBlank(functionParam.getComponent()) || !Pattern.matches(PatternRegex.FUNCTION_COMPONENT_REGEX, functionParam.getComponent())){
|
||||
throw new BusinessException(UserResponseEnum.FUNCTION_COMPONENT_FORMAT_ERROR);
|
||||
}
|
||||
}
|
||||
LambdaQueryWrapper<SysFunction> functionLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
// 同一个pid下,名称、编码、路径、组件地址不能重复
|
||||
functionLambdaQueryWrapper.eq(SysFunction::getName, functionParam.getName()).eq(SysFunction::getCode, functionParam.getCode()).eq(SysFunction::getPath, functionParam.getPath()).eq(SysFunction::getComponent, functionParam.getComponent()).eq(SysFunction::getPid, functionParam.getPid()).eq(SysFunction::getState, DataStateEnum.ENABLE.getCode());
|
||||
functionLambdaQueryWrapper
|
||||
.eq(SysFunction::getPid, functionParam.getPid())
|
||||
.eq(SysFunction::getState, DataStateEnum.ENABLE.getCode())
|
||||
.and(obj -> obj.eq(SysFunction::getName, functionParam.getName()).or()
|
||||
.eq(SysFunction::getCode, functionParam.getCode()).or()
|
||||
.eq(SysFunction::getPath, functionParam.getPath()).or()
|
||||
.eq(SysFunction::getComponent, functionParam.getComponent())
|
||||
);
|
||||
//更新的时候,需排除当前记录
|
||||
if (isExcludeSelf) {
|
||||
if (functionParam instanceof SysFunctionParam.UpdateParam) {
|
||||
|
||||
@@ -43,7 +43,11 @@ public class SysRoleFunctionServiceImpl extends ServiceImpl<SysRoleFunctionMappe
|
||||
roleFunction.setFunctionId(functionId);
|
||||
roleFunctions.add(roleFunction);
|
||||
});
|
||||
return this.saveBatch(roleFunctions);
|
||||
if (CollectionUtil.isEmpty(roleFunctions)) {
|
||||
return true;
|
||||
} else {
|
||||
return this.saveBatch(roleFunctions);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user