From 292413acdb1088923d7b6c1da24cfa4417a5d2bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Tue, 30 Sep 2025 17:15:42 +0800 Subject: [PATCH] =?UTF-8?q?feat(cms):=20=E6=B7=BB=E5=8A=A0=E7=BD=91?= =?UTF-8?q?=E7=AB=99=E5=AF=86=E9=92=A5=E5=92=8C=E5=AD=97=E6=AE=B5=E5=8A=A0?= =?UTF-8?q?=E5=AF=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 CmsWebsite 实体中新增 websiteSecret 字段 - 在 CmsWebsiteField 和 CmsWebsiteFieldParam 中新增 encrypted 字段 - 在 CmsWebsiteParam 中新增 websiteSecret 字段- 优化 MybatisPlusConfig 中租户ID获取逻辑,增强空值判断- 移除 ShopUserRefereeController 中多余的权限注解 - 添加清除缓存时的控制台输出日志- 修复潜在的空指针异常并统一异常日志输出格式 --- .../cms/controller/CmsWebsiteController.java | 3 ++- .../com/gxwebsoft/cms/entity/CmsWebsite.java | 3 +++ .../gxwebsoft/cms/entity/CmsWebsiteField.java | 3 +++ .../cms/param/CmsWebsiteFieldParam.java | 3 +++ .../gxwebsoft/cms/param/CmsWebsiteParam.java | 3 +++ .../common/core/config/MybatisPlusConfig.java | 22 ++++++++++++++----- .../controller/ShopUserRefereeController.java | 2 -- 7 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/gxwebsoft/cms/controller/CmsWebsiteController.java b/src/main/java/com/gxwebsoft/cms/controller/CmsWebsiteController.java index 1473d2a..8c6c045 100644 --- a/src/main/java/com/gxwebsoft/cms/controller/CmsWebsiteController.java +++ b/src/main/java/com/gxwebsoft/cms/controller/CmsWebsiteController.java @@ -307,7 +307,7 @@ public class CmsWebsiteController extends BaseController { website.setStatusText("状态未知"); return; } - + if (!running.equals(1)) { // 未开通 if (running.equals(0)) { @@ -525,6 +525,7 @@ public class CmsWebsiteController extends BaseController { @DeleteMapping("/clearSiteInfo/{key}") public ApiResult clearSiteInfo(@PathVariable("key") String key) { log.info("清除缓存开始,key: {}", key); + System.out.println("清除缓存开始,key = " + key); // 清除指定key redisUtil.delete(key); // 清除缓存 diff --git a/src/main/java/com/gxwebsoft/cms/entity/CmsWebsite.java b/src/main/java/com/gxwebsoft/cms/entity/CmsWebsite.java index 2438aaa..77ccd7c 100644 --- a/src/main/java/com/gxwebsoft/cms/entity/CmsWebsite.java +++ b/src/main/java/com/gxwebsoft/cms/entity/CmsWebsite.java @@ -41,6 +41,9 @@ public class CmsWebsite implements Serializable { @Schema(description = "网站标识") private String websiteCode; + @Schema(description = "网站密钥") + private String websiteSecret; + @Schema(description = "网站LOGO") private String websiteIcon; diff --git a/src/main/java/com/gxwebsoft/cms/entity/CmsWebsiteField.java b/src/main/java/com/gxwebsoft/cms/entity/CmsWebsiteField.java index 35b2a4c..03c451e 100644 --- a/src/main/java/com/gxwebsoft/cms/entity/CmsWebsiteField.java +++ b/src/main/java/com/gxwebsoft/cms/entity/CmsWebsiteField.java @@ -52,6 +52,9 @@ public class CmsWebsiteField implements Serializable { @Schema(description = "国际化语言") private String lang; + @Schema(description = "是否加密") + private Boolean encrypted; + @Schema(description = "商户ID") private Long merchantId; diff --git a/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteFieldParam.java b/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteFieldParam.java index 6355104..9bb0e57 100644 --- a/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteFieldParam.java +++ b/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteFieldParam.java @@ -48,6 +48,9 @@ public class CmsWebsiteFieldParam extends BaseParam { @Schema(description = "名称") private String value; + @Schema(description = "是否加密") + private Boolean encrypted; + @Schema(description = "排序(数字越小越靠前)") @QueryField(type = QueryType.EQ) private Integer sortNumber; diff --git a/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteParam.java b/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteParam.java index af65d08..cafb74d 100644 --- a/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteParam.java +++ b/src/main/java/com/gxwebsoft/cms/param/CmsWebsiteParam.java @@ -41,6 +41,9 @@ public class CmsWebsiteParam extends BaseParam { @Schema(description = "网站标识") private String websiteCode; + @Schema(description = "网站密钥") + private String websiteSecret; + @Schema(description = "网站LOGO") private String websiteIcon; diff --git a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java index a579cc5..b3655bc 100644 --- a/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java +++ b/src/main/java/com/gxwebsoft/common/core/config/MybatisPlusConfig.java @@ -49,7 +49,7 @@ public class MybatisPlusConfig { if (request != null) { // 从请求头拿ID tenantId = request.getHeader("tenantId"); - if(tenantId != null){ + if(tenantId != null && !tenantId.trim().isEmpty()){ return new LongValue(tenantId); } // 从域名拿ID @@ -57,7 +57,7 @@ public class MybatisPlusConfig { if (StrUtil.isNotBlank(Domain)) { String key = "Domain:" + Domain; tenantId = redisUtil.get(key); - if(tenantId != null){ + if(tenantId != null && !tenantId.trim().isEmpty()){ System.out.println("从域名拿TID = " + tenantId); return new LongValue(tenantId); } @@ -65,8 +65,17 @@ public class MybatisPlusConfig { } } catch (Exception e) { // 忽略异常,使用默认逻辑 + System.err.println("获取租户ID异常: " + e.getMessage()); } - return getLoginUserTenantId(); + + // 最后尝试从登录用户获取 + Expression loginUserTenantId = getLoginUserTenantId(); + if (loginUserTenantId instanceof LongValue) { + return loginUserTenantId; + } + + // 如果都获取不到,返回null而不是undefined + return new NullValue(); } @Override @@ -119,11 +128,14 @@ public class MybatisPlusConfig { if (authentication != null) { Object object = authentication.getPrincipal(); if (object instanceof User) { - return new LongValue(((User) object).getTenantId()); + Integer tenantId = ((User) object).getTenantId(); + if (tenantId != null) { + return new LongValue(tenantId); + } } } } catch (Exception e) { - System.out.println(e.getMessage()); + System.err.println("获取登录用户租户ID异常: " + e.getMessage()); } return new NullValue(); } diff --git a/src/main/java/com/gxwebsoft/shop/controller/ShopUserRefereeController.java b/src/main/java/com/gxwebsoft/shop/controller/ShopUserRefereeController.java index 3e9970f..beadf1c 100644 --- a/src/main/java/com/gxwebsoft/shop/controller/ShopUserRefereeController.java +++ b/src/main/java/com/gxwebsoft/shop/controller/ShopUserRefereeController.java @@ -31,7 +31,6 @@ public class ShopUserRefereeController extends BaseController { @Resource private ShopUserRefereeService shopUserRefereeService; - @PreAuthorize("hasAuthority('shop:shopUserReferee:list')") @Operation(summary = "分页查询用户推荐关系表") @GetMapping("/page") public ApiResult> page(ShopUserRefereeParam param) { @@ -39,7 +38,6 @@ public class ShopUserRefereeController extends BaseController { return success(shopUserRefereeService.pageRel(param)); } - @PreAuthorize("hasAuthority('shop:shopUserReferee:list')") @Operation(summary = "查询全部用户推荐关系表") @GetMapping() public ApiResult> list(ShopUserRefereeParam param) {