From b13c88946a3e0439e29824e6fb8844b7e9e8fa77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E9=B9=8F=E9=A3=9E?= Date: Fri, 25 Jul 2025 10:06:43 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20bug-524=20=E8=B0=83=E6=95=B4=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E6=8F=90=E7=A4=BA=EF=BC=8C=E5=8F=AA=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E9=94=99=E8=AF=AF=E5=92=8C=E7=BC=96=E5=8F=B7?= =?UTF-8?q?=EF=BC=8C=E4=B8=8D=E6=8F=90=E7=A4=BA=E5=85=B7=E4=BD=93=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/nflg/mobilebroken/common/constant/Constant.java | 3 +++ .../starter/advice/GlobalRestControllerAdvice.java | 6 ++++-- .../com/nflg/mobilebroken/starter/filter/TraceIdFilter.java | 6 +++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/constant/Constant.java b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/constant/Constant.java index ad3c5992..b2120c24 100644 --- a/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/constant/Constant.java +++ b/nflg-mobilebroken-common/src/main/java/com/nflg/mobilebroken/common/constant/Constant.java @@ -131,5 +131,8 @@ public class Constant { public static final String DICTIONARY_PRODUCT_MODEL_MAIN_PARAMS ="ProductModelMainParams"; public static final String DICTIONARY_PRODUCT_INTRO_CATEGORY ="ProductIntroCategory"; + public static final String DICTIONARY_PRODUCT_MODULE = "ProductModule"; + + public static final String TRACE_ID = "traceId"; } diff --git a/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/advice/GlobalRestControllerAdvice.java b/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/advice/GlobalRestControllerAdvice.java index 85d21e12..e7e36dcb 100644 --- a/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/advice/GlobalRestControllerAdvice.java +++ b/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/advice/GlobalRestControllerAdvice.java @@ -2,10 +2,12 @@ package com.nflg.mobilebroken.starter.advice; import cn.dev33.satoken.exception.NotLoginException; import cn.hutool.core.util.StrUtil; +import com.nflg.mobilebroken.common.constant.Constant; import com.nflg.mobilebroken.common.constant.STATE; import com.nflg.mobilebroken.common.exception.NflgException; import com.nflg.mobilebroken.common.pojo.ApiResult; import lombok.extern.slf4j.Slf4j; +import org.slf4j.MDC; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.validation.FieldError; @@ -28,13 +30,13 @@ public class GlobalRestControllerAdvice { @ExceptionHandler(SQLException.class) public ApiResult handleSQLException(SQLException ex) { log.error("数据库错误: ", ex); - return ApiResult.error(STATE.BusinessError,"数据库错误"); + return ApiResult.error(STATE.BusinessError, "数据库错误,编号:" + MDC.get(Constant.TRACE_ID)); } @ExceptionHandler(Exception.class) public ApiResult handleAllExceptions(Exception ex) { log.error("服务器内部错误: ", ex); - return ApiResult.error(STATE.BusinessError,"服务器内部错误: " + ex.getMessage()); + return ApiResult.error(STATE.BusinessError, "服务器内部错误,编号:" + MDC.get(Constant.TRACE_ID)); } @ExceptionHandler(NflgException.class) diff --git a/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/TraceIdFilter.java b/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/TraceIdFilter.java index 357bbab3..0f84e979 100644 --- a/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/TraceIdFilter.java +++ b/nflg-mobilebroken-starter/src/main/java/com/nflg/mobilebroken/starter/filter/TraceIdFilter.java @@ -2,6 +2,7 @@ package com.nflg.mobilebroken.starter.filter; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; +import com.nflg.mobilebroken.common.constant.Constant; import com.nflg.mobilebroken.common.util.AdminUserUtil; import com.nflg.mobilebroken.common.util.AppUserUtil; import com.nflg.mobilebroken.common.util.SaTokenAdminUtil; @@ -29,7 +30,6 @@ import java.util.List; public class TraceIdFilter extends OncePerRequestFilter { private static final String TRACE_ID_HEADER = "X-Trace-Id"; - private static final String MDC_TRACE_ID = "traceId"; // 需要跳过的二进制内容类型 private static final List BINARY_CONTENT_TYPES = Arrays.asList("image", "video", "audio", "stream", "pdf", "zip", "excel"); @@ -46,7 +46,7 @@ public class TraceIdFilter extends OncePerRequestFilter { traceId = IdUtil.getSnowflakeNextIdStr(); } // 存入MDC和响应头 - MDC.put(MDC_TRACE_ID, traceId); + MDC.put(Constant.TRACE_ID, traceId); responseWrapper.addHeader(TRACE_ID_HEADER, traceId); filterChain.doFilter(requestWrapper, responseWrapper); @@ -56,7 +56,7 @@ public class TraceIdFilter extends OncePerRequestFilter { responseWrapper.copyBodyToResponse(); // 请求结束时清除MDC - MDC.remove(MDC_TRACE_ID); + MDC.remove(Constant.TRACE_ID); } }