feat(database): 重构用户角色关联及权限体系
- 新增 BizException 构造函数支持自定义消息 - 优化 SQL 脚本结构,明确表设计最佳实践 - 修改 t_user、t_role 等表字段类型与索引策略 - 引入代理主键 id 到关联表 t_user_role 和 t_role_permission - 更新 UserRole 实体类适配 MyBatis-Plus 主键策略 - 增强 UserRoleService 接口功能,支持分配和撤销角色 - 实现批量操作和事务控制提升数据一致性 - 添加安全注解 @PreAuthorize 控制接口访问权限 - 修正 Mapper 注解并优化参数命名提高可读性 - 扩展 ErrorCode 常量增强错误描述准确性
This commit is contained in:
@@ -30,9 +30,12 @@ public enum ErrorCode {
|
||||
PHONE_EXISTS(409, "USER-109", "手机号已注册"),
|
||||
PHONE_FORMAT_ERROR(400, "USER-110", "手机号格式无效"),
|
||||
USER_UPDATE_USERNAME_FAILED(400,"USER-111" , "用户名更新失败"),
|
||||
// 用户组
|
||||
ROLE_REVOKE_FAILED(400,"USER-112" ,"用户组删除失败" ),
|
||||
|
||||
|
||||
ROLE_ID_INVALID(400, "ROLE-100" , "角色ID无效" ),
|
||||
ROLE_ID_EXISTS(400, "ROLE-100" , "角色ID已存在" ),
|
||||
ROLE_ID_INVALID(400, "ROLE-101" , "角色ID无效" ),
|
||||
ROLE_ID_NOT_EXISTS(400, "ROLE-102" , "角色ID不存在"),
|
||||
|
||||
// ================== 论坛内容相关 (200-299) ==================
|
||||
POST_NOT_FOUND(404, "POST-201", "帖子不存在"),
|
||||
@@ -47,7 +50,7 @@ public enum ErrorCode {
|
||||
CAPTCHA_ERROR(400, "SYS-301", "验证码错误"),
|
||||
SMS_SEND_FAILED(500, "SYS-302", "短信发送失败"),
|
||||
FILE_UPLOAD_FAILED(500, "SYS-303", "文件上传失败"),
|
||||
RATE_LIMIT_EXCEEDED(429, "SYS-304", "操作过于频繁"),;
|
||||
RATE_LIMIT_EXCEEDED(429, "SYS-304", "操作过于频繁");
|
||||
|
||||
private final int httpStatus;
|
||||
private final String code; // 业务错误码(领域-编号)
|
||||
|
||||
@@ -11,4 +11,8 @@ public class BizException extends RuntimeException{
|
||||
super(errorCode.getMessage());
|
||||
this.errorCode = errorCode;
|
||||
}
|
||||
public BizException(String message) {
|
||||
super(message);
|
||||
this.errorCode = ErrorCode.SYSTEM_ERROR;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user