瀏覽代碼

去掉无用得链接

hmy 2 周之前
父節點
當前提交
6e5c4fdaa6
共有 12 個文件被更改,包括 21 次插入121 次删除
  1. 1 10
      xdz-framework/xdz-common/src/main/java/com/xindazhou/framework/common/exception/enums/GlobalErrorCodeConstants.java
  2. 1 1
      xdz-framework/xdz-common/src/main/java/com/xindazhou/framework/common/util/string/StrUtils.java
  3. 1 1
      xdz-framework/xdz-spring-boot-starter-excel/src/main/java/com/xindazhou/framework/excel/core/util/ExcelUtils.java
  4. 1 1
      xdz-framework/xdz-spring-boot-starter-job/src/main/java/com/xindazhou/framework/quartz/config/XdzAsyncAutoConfiguration.java
  5. 2 2
      xdz-framework/xdz-spring-boot-starter-protection/src/main/java/com/xindazhou/framework/ratelimiter/core/redis/RateLimiterRedisDAO.java
  6. 7 31
      xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/banner/core/BannerApplicationRunner.java
  7. 1 1
      xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/encrypt/core/filter/ApiEncryptFilter.java
  8. 1 1
      xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/web/config/XdzWebAutoConfiguration.java
  9. 3 65
      xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/web/core/handler/GlobalExceptionHandler.java
  10. 1 6
      xdz-module-business/xdz-module-business-server/src/main/java/com/xindazhou/business/framework/file/core/client/AbstractFileClient.java
  11. 1 1
      xdz-module-business/xdz-module-business-server/src/main/java/com/xindazhou/business/framework/file/core/client/s3/S3FileClient.java
  12. 1 1
      xdz-module-business/xdz-module-business-server/src/main/java/com/xindazhou/business/service/oauth2/OAuth2TokenServiceImpl.java

+ 1 - 10
xdz-framework/xdz-common/src/main/java/com/xindazhou/framework/common/exception/enums/GlobalErrorCodeConstants.java

@@ -2,16 +2,7 @@ package com.xindazhou.framework.common.exception.enums;
 
 import com.xindazhou.framework.common.exception.ErrorCode;
 
-/**
- * 全局错误码枚举
- * 0-999 系统异常编码保留
- *
- * 一般情况下,使用 HTTP 响应状态码 https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status
- * 虽然说,HTTP 响应状态码作为业务使用表达能力偏弱,但是使用在系统层面还是非常不错的
- * 比较特殊的是,因为之前一直使用 0 作为成功,就不使用 200 啦。
- *
- * @author xdz
- */
+
 public interface GlobalErrorCodeConstants {
 
     ErrorCode SUCCESS = new ErrorCode(0, "成功");

+ 1 - 1
xdz-framework/xdz-common/src/main/java/com/xindazhou/framework/common/util/string/StrUtils.java

@@ -95,7 +95,7 @@ public class StrUtils {
             if (item == null) {
                 return "";
             }
-            // 讨论可见:https://t.zsxq.com/XUJVk、https://t.zsxq.com/MnKcL
+           
             String clazzName = item.getClass().getName();
             if (StrUtil.startWithAny(clazzName, "javax.servlet", "jakarta.servlet", "org.springframework.web")) {
                 return "";

+ 1 - 1
xdz-framework/xdz-spring-boot-starter-excel/src/main/java/com/xindazhou/framework/excel/core/util/ExcelUtils.java

@@ -45,7 +45,7 @@ public class ExcelUtils {
     }
 
     public static <T> List<T> read(MultipartFile file, Class<T> head) throws IOException {
-        // 参考 https://t.zsxq.com/zM77F 帖子,增加 try 处理,兼容 windows 场景
+       
         try (InputStream inputStream = file.getInputStream()) {
             return FastExcelFactory.read(inputStream, head, null)
                     .autoCloseStream(false) // 不要自动关闭,交给 Servlet 自己处理

+ 1 - 1
xdz-framework/xdz-spring-boot-starter-job/src/main/java/com/xindazhou/framework/quartz/config/XdzAsyncAutoConfiguration.java

@@ -30,7 +30,7 @@ public class XdzAsyncAutoConfiguration {
                     return executor;
                 }
                 // 处理 SimpleAsyncTaskExecutor
-                // 参考 https://t.zsxq.com/CBoks 增加
+               
                 if (bean instanceof SimpleAsyncTaskExecutor) {
                     SimpleAsyncTaskExecutor executor = (SimpleAsyncTaskExecutor) bean;
                     executor.setTaskDecorator(TtlRunnable::get);

+ 2 - 2
xdz-framework/xdz-spring-boot-starter-protection/src/main/java/com/xindazhou/framework/ratelimiter/core/redis/RateLimiterRedisDAO.java

@@ -46,7 +46,7 @@ public class RateLimiterRedisDAO {
         RateLimiterConfig config = rateLimiter.getConfig();
         if (config == null) {
             rateLimiter.trySetRate(RateType.OVERALL, count, duration);
-            // 原因参见 https://t.zsxq.com/lcR0W
+           
             rateLimiter.expire(duration);
             return rateLimiter;
         }
@@ -58,7 +58,7 @@ public class RateLimiterRedisDAO {
         }
         // 3. 如果存在,并且配置不同,则进行新建
         rateLimiter.setRate(RateType.OVERALL, count, duration);
-        // 原因参见 https://t.zsxq.com/lcR0W
+        
         rateLimiter.expire(duration);
         return rateLimiter;
     }

+ 7 - 31
xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/banner/core/BannerApplicationRunner.java

@@ -15,37 +15,13 @@ import java.util.concurrent.TimeUnit;
 @Slf4j
 public class BannerApplicationRunner implements ApplicationRunner {
 
-    @Override
-    public void run(ApplicationArguments args) {
-        ThreadUtil.execute(() -> {
-            ThreadUtil.sleep(1, TimeUnit.SECONDS); // 延迟 1 秒,保证输出到结尾
-            log.info("\n----------------------------------------------------------\n\t" +
-                            "项目启动成功!\n\t" +
-                            "接口文档: \t{} \n\t" +
-                            "开发文档: \t{} \n\t" +
-                            "视频教程: \t{} \n" +
-                            "----------------------------------------------------------",
-                    "https://cloud.xdz.cn/api-doc/",
-                    "https://cloud.xdz.cn",
-                    "https://t.zsxq.com/02Yf6M7Qn");
+	@Override
+	public void run(ApplicationArguments args) {
+		ThreadUtil.execute(() -> {
+			ThreadUtil.sleep(1, TimeUnit.SECONDS); // 延迟 1 秒,保证输出到结尾
+			log.info("项目启动成功");
 
-            // 数据报表
-            System.out.println("[报表模块 xdz-module-report 教程][参考 https://cloud.xdz.cn/report/ 开启]");
-            // 工作流
-            System.out.println("[工作流模块 xdz-module-bpm 教程][参考 https://cloud.xdz.cn/bpm/ 开启]");
-            // 商城系统
-            System.out.println("[商城系统 xdz-module-mall 教程][参考 https://cloud.xdz.cn/mall/build/ 开启]");
-            // ERP 系统
-            System.out.println("[ERP 系统 xdz-module-erp - 教程][参考 https://cloud.xdz.cn/erp/build/ 开启]");
-            // CRM 系统
-            System.out.println("[CRM 系统 xdz-module-crm - 教程][参考 https://cloud.xdz.cn/crm/build/ 开启]");
-            // 微信公众号
-            System.out.println("[微信公众号 xdz-module-mp 教程][参考 https://cloud.xdz.cn/mp/build/ 开启]");
-            // 支付平台
-            System.out.println("[支付系统 xdz-module-pay - 教程][参考 https://cloud.xdz.cn/pay/build/ 开启]");
-            // AI 大模型
-            System.out.println("[AI 大模型 xdz-module-ai - 教程][参考 https://cloud.xdz.cn/ai/build/ 开启]");
-        });
-    }
+		});
+	}
 
 }

+ 1 - 1
xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/encrypt/core/filter/ApiEncryptFilter.java

@@ -132,7 +132,7 @@ public class ApiEncryptFilter extends ApiRequestFilter {
     @SuppressWarnings("PatternVariableCanBeUsed")
     private ApiEncrypt getApiEncrypt(HttpServletRequest request) {
         try {
-            // 特殊:兼容 SpringBoot 2.X 版本会报错的问题 https://t.zsxq.com/kqyiB
+          
             if (!ServletRequestPathUtils.hasParsedRequestPath(request)) {
                 ServletRequestPathUtils.parseAndCache(request);
             }

+ 1 - 1
xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/web/config/XdzWebAutoConfiguration.java

@@ -35,7 +35,7 @@ import java.util.Map;
 import java.util.function.Predicate;
 
 @AutoConfiguration(beforeName = {
-        "com.fhs.trans.config.TransServiceConfig" // cloud 独有:避免一键改包后,RestTemplate 初始化的冲突。可见 https://t.zsxq.com/T4yj7 帖子
+        "com.fhs.trans.config.TransServiceConfig" 
 })
 @EnableConfigurationProperties(WebProperties.class)
 public class XdzWebAutoConfiguration {

+ 3 - 65
xdz-framework/xdz-spring-boot-starter-web/src/main/java/com/xindazhou/framework/web/core/handler/GlobalExceptionHandler.java

@@ -150,7 +150,7 @@ public class GlobalExceptionHandler {
         String errorMessage = null;
         FieldError fieldError = ex.getBindingResult().getFieldError();
         if (fieldError == null) {
-            // 组合校验,参考自 https://t.zsxq.com/3HVTx
+           
             List<ObjectError> allErrors = ex.getBindingResult().getAllErrors();
             if (CollUtil.isNotEmpty(allErrors)) {
                 errorMessage = allErrors.get(0).getDefaultMessage();
@@ -279,11 +279,7 @@ public class GlobalExceptionHandler {
         return CommonResult.error(FORBIDDEN);
     }
 
-    /**
-     * 处理 Guava UncheckedExecutionException
-     *
-     * 例如说,缓存加载报错,可见 <a href="https://t.zsxq.com/UszdH">https://t.zsxq.com/UszdH</a>
-     */
+    
     @ExceptionHandler(value = UncheckedExecutionException.class)
     public CommonResult<?> uncheckedExecutionExceptionHandler(HttpServletRequest req, UncheckedExecutionException ex) {
         return allExceptionHandler(req, ex.getCause());
@@ -387,65 +383,7 @@ public class GlobalExceptionHandler {
      * @param ex 异常
      * @return 如果是 Table 不存在的异常,则返回对应的 CommonResult
      */
-    private CommonResult<?> handleTableNotExists(Throwable ex) {
-        String message = ExceptionUtil.getRootCauseMessage(ex);
-        if (!message.contains("doesn't exist")) {
-            return null;
-        }
-        // 1. 数据报表
-        if (message.contains("report_")) {
-            log.error("[报表模块 xdz-module-report - 表结构未导入][参考 https://cloud.xdz.cn/report/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[报表模块 xdz-module-report - 表结构未导入][参考 https://cloud.xdz.cn/report/ 开启]");
-        }
-        // 2. 工作流
-        if (message.contains("bpm_")) {
-            log.error("[工作流模块 xdz-module-bpm - 表结构未导入][参考 https://cloud.xdz.cn/bpm/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[工作流模块 xdz-module-bpm - 表结构未导入][参考 https://cloud.xdz.cn/bpm/ 开启]");
-        }
-        // 3. 微信公众号
-        if (message.contains("mp_")) {
-            log.error("[微信公众号 xdz-module-mp - 表结构未导入][参考 https://cloud.xdz.cn/mp/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[微信公众号 xdz-module-mp - 表结构未导入][参考 https://cloud.xdz.cn/mp/build/ 开启]");
-        }
-        // 4. 商城系统
-        if (StrUtil.containsAny(message, "product_", "promotion_", "trade_")) {
-            log.error("[商城系统 xdz-module-mall - 已禁用][参考 https://cloud.xdz.cn/mall/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[商城系统 xdz-module-mall - 已禁用][参考 https://cloud.xdz.cn/mall/build/ 开启]");
-        }
-        // 5. ERP 系统
-        if (message.contains("erp_")) {
-            log.error("[ERP 系统 xdz-module-erp - 表结构未导入][参考 https://cloud.xdz.cn/erp/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[ERP 系统 xdz-module-erp - 表结构未导入][参考 https://cloud.xdz.cn/erp/build/ 开启]");
-        }
-        // 6. CRM 系统
-        if (message.contains("crm_")) {
-            log.error("[CRM 系统 xdz-module-crm - 表结构未导入][参考 https://cloud.xdz.cn/crm/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[CRM 系统 xdz-module-crm - 表结构未导入][参考 https://cloud.xdz.cn/crm/build/ 开启]");
-        }
-        // 7. 支付平台
-        if (message.contains("pay_")) {
-            log.error("[支付模块 xdz-module-pay - 表结构未导入][参考 https://cloud.xdz.cn/pay/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[支付模块 xdz-module-pay - 表结构未导入][参考 https://cloud.xdz.cn/pay/build/ 开启]");
-        }
-        // 8. AI 大模型
-        if (message.contains("ai_")) {
-            log.error("[AI 大模型 xdz-module-ai - 表结构未导入][参考 https://cloud.xdz.cn/ai/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[AI 大模型 xdz-module-ai - 表结构未导入][参考 https://cloud.xdz.cn/ai/build/ 开启]");
-        }
-        // 9. IoT 物联网
-        if (message.contains("iot_")) {
-            log.error("[IoT 物联网 xdz-module-iot - 表结构未导入][参考 https://doc.xdz.cn/iot/build/ 开启]");
-            return CommonResult.error(NOT_IMPLEMENTED.getCode(),
-                    "[IoT 物联网 xdz-module-iot - 表结构未导入][参考 https://doc.xdz.cn/iot/build/ 开启]");
-        }
+    private CommonResult<?> handleTableNotExists(Throwable ex) { 
         return null;
     }
 

+ 1 - 6
xdz-module-business/xdz-module-business-server/src/main/java/com/xindazhou/business/framework/file/core/client/AbstractFileClient.java

@@ -19,12 +19,7 @@ public abstract class AbstractFileClient<Config extends FileClientConfig> implem
      * 文件配置
      */
     protected Config config;
-    /**
-     * 原始的文件配置
-     *
-     * 原因:{@link #config} 可能被子类所修改,无法用于判断配置是否变更
-     * @link <a href="https://t.zsxq.com/29wkW">相关案例</a>
-     */
+    
     private Config originalConfig;
 
     public AbstractFileClient(Long id, Config config) {

+ 1 - 1
xdz-module-business/xdz-module-business-server/src/main/java/com/xindazhou/business/framework/file/core/client/s3/S3FileClient.java

@@ -55,7 +55,7 @@ public class S3FileClient extends AbstractFileClient<S3FileClientConfig> {
         URI endpoint = URI.create(buildEndpoint());
         S3Configuration serviceConfiguration = S3Configuration.builder() // Path-style 访问
                 .pathStyleAccessEnabled(Boolean.TRUE.equals(config.getEnablePathStyleAccess()))
-                .chunkedEncodingEnabled(false) // 禁用分块编码,参见 https://t.zsxq.com/kBy57
+                .chunkedEncodingEnabled(false) 
                 .build();
         client = S3Client.builder()
                 .credentialsProvider(credentialsProvider)

+ 1 - 1
xdz-module-business/xdz-module-business-server/src/main/java/com/xindazhou/business/service/oauth2/OAuth2TokenServiceImpl.java

@@ -181,7 +181,7 @@ public class OAuth2TokenServiceImpl implements OAuth2TokenService {
                 .setRefreshToken(refreshTokenDO.getRefreshToken())
                 .setExpiresTime(LocalDateTime.now().plusSeconds(clientDO.getAccessTokenValiditySeconds()));
         // 优先从 refreshToken 获取租户编号,避免 ThreadLocal 被污染时导致 tenantId 为 null
-        // 可能关联的 issue:https://t.zsxq.com/JIi5G
+        
         Long tenantId = refreshTokenDO.getTenantId();
         if (tenantId == null) {
             tenantId = TenantContextHolder.getTenantId();