From c4463cfcc16bd06687c67b7115729467fc35606a Mon Sep 17 00:00:00 2001
From: haoxr <1490493387@qq.com>
Date: Wed, 29 Nov 2023 22:17:16 +0800
Subject: [PATCH] =?UTF-8?q?refactor:=20=E4=BB=A3=E7=A0=81=E9=87=8D?=
=?UTF-8?q?=E6=9E=84=E4=BC=98=E5=8C=96=EF=BC=8C=E7=94=A8=E6=88=B7=E6=9D=83?=
=?UTF-8?q?=E9=99=90=E7=BC=93=E5=AD=98=E8=B0=83=E6=95=B4=E8=A7=92=E8=89=B2?=
=?UTF-8?q?=E6=9D=83=E9=99=90=E7=BC=93=E5=AD=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../common/constant/CacheConstants.java | 27 +++++
.../common/constant/ExcelConstants.java | 16 ---
.../common/constant/JwtClaimConstants.java | 38 +++++++
.../common/constant/SecurityConstants.java | 23 ----
.../common/constant/SystemConstants.java | 7 --
.../system/controller/SysMenuController.java | 16 +--
.../system/controller/SysRoleController.java | 18 +--
.../system/controller/SysUserController.java | 3 +-
.../system/converter/MenuConverter.java | 1 -
.../mybatisplus/config/MybatisPlusConfig.java | 8 +-
.../handler/MyMetaObjectHandler.java | 5 +-
.../core/security/jwt/JwtTokenFilter.java | 14 ++-
.../core/security/jwt/JwtTokenProvider.java | 103 ++++++++++++-----
.../core/security/model/SysUserDetails.java | 9 +-
.../security/service/PermissionService.java | 85 ++++++++++++--
.../system/filter/VerifyCodeFilter.java | 3 +-
.../system/mapper/SysRoleMenuMapper.java | 12 +-
.../youlai/system/model/bo/RolePermsBO.java | 26 +++++
.../system/plugin/captcha/CaptchaConfig.java | 75 +++++++++++++
.../plugin/captcha/CaptchaProperties.java | 87 ++++++++++++++
.../aspect/DuplicateSubmitAspect.java | 3 +
.../plugin/websocket/WebSocketConfig.java | 1 -
.../system/plugin/xxljob/XxlJobConfig.java | 3 +-
.../system/service/SysRoleMenuService.java | 21 +++-
.../system/service/impl/AuthServiceImpl.java | 25 +++--
.../service/impl/SysDeptServiceImpl.java | 106 +++++++++++++-----
.../service/impl/SysMenuServiceImpl.java | 43 ++++---
.../service/impl/SysRoleMenuServiceImpl.java | 23 +++-
.../service/impl/SysRoleServiceImpl.java | 57 +++++-----
.../service/impl/SysUserServiceImpl.java | 22 ++--
.../resources/mapper/SysRoleMenuMapper.xml | 24 ++++
31 files changed, 665 insertions(+), 239 deletions(-)
create mode 100644 src/main/java/com/youlai/system/common/constant/CacheConstants.java
delete mode 100644 src/main/java/com/youlai/system/common/constant/ExcelConstants.java
create mode 100644 src/main/java/com/youlai/system/common/constant/JwtClaimConstants.java
create mode 100644 src/main/java/com/youlai/system/model/bo/RolePermsBO.java
create mode 100644 src/main/java/com/youlai/system/plugin/captcha/CaptchaConfig.java
create mode 100644 src/main/java/com/youlai/system/plugin/captcha/CaptchaProperties.java
diff --git a/src/main/java/com/youlai/system/common/constant/CacheConstants.java b/src/main/java/com/youlai/system/common/constant/CacheConstants.java
new file mode 100644
index 00000000..a702630a
--- /dev/null
+++ b/src/main/java/com/youlai/system/common/constant/CacheConstants.java
@@ -0,0 +1,27 @@
+package com.youlai.system.common.constant;
+
+/**
+ * 缓存常量
+ *
+ * @author haoxr
+ * @since 2023/11/24
+ */
+public interface CacheConstants {
+
+ /**
+ * 验证码缓存前缀
+ */
+ String CAPTCHA_CODE_PREFIX = "captcha_code:";
+
+ /**
+ * 角色和权限缓存前缀
+ */
+ String ROLE_PERMS_PREFIX = "role_perms:";
+
+ /**
+ * 黑名单Token缓存前缀
+ */
+ String BLACKLIST_TOKEN_PREFIX = "blacklist_token:";
+
+
+}
diff --git a/src/main/java/com/youlai/system/common/constant/ExcelConstants.java b/src/main/java/com/youlai/system/common/constant/ExcelConstants.java
deleted file mode 100644
index fcee2003..00000000
--- a/src/main/java/com/youlai/system/common/constant/ExcelConstants.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.youlai.system.common.constant;
-
-/**
- * Excel 常量
- *
- * @author haoxr
- * @since 3.0.0
- */
-public interface ExcelConstants {
-
- /**
- * Excel 模板目录
- */
- String EXCEL_TEMPLATE_DIR="excel-templates";
-
-}
diff --git a/src/main/java/com/youlai/system/common/constant/JwtClaimConstants.java b/src/main/java/com/youlai/system/common/constant/JwtClaimConstants.java
new file mode 100644
index 00000000..3c312dcd
--- /dev/null
+++ b/src/main/java/com/youlai/system/common/constant/JwtClaimConstants.java
@@ -0,0 +1,38 @@
+package com.youlai.system.common.constant;
+
+/**
+ * JWT Claims声明常量
+ *
+ * JWT Claims 属于 Payload 的一部分,包含了一些实体(通常指的用户)的状态和额外的元数据。
+ *
+ * @author haoxr
+ * @since 2023/11/24
+ */
+public interface JwtClaimConstants {
+
+ /**
+ * 用户ID
+ */
+ String USER_ID = "userId";
+
+ /**
+ * 用户名
+ */
+ String USERNAME = "username";
+
+ /**
+ * 部门ID
+ */
+ String DEPT_ID = "deptId";
+
+ /**
+ * 数据权限
+ */
+ String DATA_SCOPE = "dataScope";
+
+ /**
+ * 权限(角色Code)集合
+ */
+ String AUTHORITIES = "authorities";
+
+}
diff --git a/src/main/java/com/youlai/system/common/constant/SecurityConstants.java b/src/main/java/com/youlai/system/common/constant/SecurityConstants.java
index 84ddcbb8..89f35d92 100644
--- a/src/main/java/com/youlai/system/common/constant/SecurityConstants.java
+++ b/src/main/java/com/youlai/system/common/constant/SecurityConstants.java
@@ -13,28 +13,5 @@ public interface SecurityConstants {
*/
String LOGIN_PATH = "/api/v1/auth/login";
- /**
- * Token 前缀
- */
- String TOKEN_PREFIX = "Bearer ";
- /**
- * 请求头Token的Key
- */
- String TOKEN_KEY = "Authorization";
-
- /**
- * 验证码缓存前缀
- */
- String CAPTCHA_CODE_CACHE_PREFIX = "captcha_code:";
-
- /**
- * 用户权限集合缓存前缀
- */
- String USER_PERMS_CACHE_PREFIX = "user_perms:";
-
- /**
- * 黑名单Token缓存前缀
- */
- String BLACK_TOKEN_CACHE_PREFIX = "blacklist_token:";
}
diff --git a/src/main/java/com/youlai/system/common/constant/SystemConstants.java b/src/main/java/com/youlai/system/common/constant/SystemConstants.java
index b39b3280..6f49580b 100644
--- a/src/main/java/com/youlai/system/common/constant/SystemConstants.java
+++ b/src/main/java/com/youlai/system/common/constant/SystemConstants.java
@@ -23,11 +23,4 @@ public interface SystemConstants {
* 超级管理员角色编码
*/
String ROOT_ROLE_CODE = "ROOT";
-
- /**
- * 超级管理员用户名
- */
- String ROOT_USER_NAME = "root";
-
-
}
diff --git a/src/main/java/com/youlai/system/controller/SysMenuController.java b/src/main/java/com/youlai/system/controller/SysMenuController.java
index cc699c5a..8640f602 100644
--- a/src/main/java/com/youlai/system/controller/SysMenuController.java
+++ b/src/main/java/com/youlai/system/controller/SysMenuController.java
@@ -36,28 +36,28 @@ public class SysMenuController {
private final SysMenuService menuService;
- @Operation(summary = "菜单列表",security = {@SecurityRequirement(name = "Authorization")})
+ @Operation(summary = "菜单列表")
@GetMapping
public Result> listMenus( @ParameterObject MenuQuery queryParams) {
List menuList = menuService.listMenus(queryParams);
return Result.success(menuList);
}
- @Operation(summary = "菜单下拉列表",security = {@SecurityRequirement(name = "Authorization")})
+ @Operation(summary = "菜单下拉列表")
@GetMapping("/options")
public Result listMenuOptions() {
List