diff --git a/backend/src/main/java/com/qqchen/deploy/backend/framework/enums/ResponseCode.java b/backend/src/main/java/com/qqchen/deploy/backend/framework/enums/ResponseCode.java index bbdd0b38..f87857e3 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/framework/enums/ResponseCode.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/framework/enums/ResponseCode.java @@ -153,7 +153,9 @@ public enum ResponseCode { // 表单管理相关错误码 (2800-2899) FORM_DEFINITION_NOT_FOUND(2800, "form.definition.not.found"), - FORM_DATA_NOT_FOUND(2801, "form.data.not.found"); + FORM_DATA_NOT_FOUND(2801, "form.data.not.found"), + FORM_DEFINITION_KEY_EXISTS(2802, "form.definition.key.exists"), + FORM_DEFINITION_KEY_VERSION_EXISTS(2803, "form.definition.key.version.exists"); private final int code; private final String messageKey; // 国际化消息key diff --git a/backend/src/main/java/com/qqchen/deploy/backend/framework/handler/GlobalExceptionHandler.java b/backend/src/main/java/com/qqchen/deploy/backend/framework/handler/GlobalExceptionHandler.java index 53e8d5f8..eed07760 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/framework/handler/GlobalExceptionHandler.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/framework/handler/GlobalExceptionHandler.java @@ -29,7 +29,14 @@ public class GlobalExceptionHandler { @ExceptionHandler(BusinessException.class) public Response handleBusinessException(BusinessException e) { log.warn("Business error occurred: {}", e.getErrorCode().getMessageKey(), e); - return Response.error(e.getErrorCode()); + + // 直接传递参数数组给 Response.error,由它统一处理消息格式化 + // 避免重复格式化导致消息内容重复 + if (e.getArgs() != null && e.getArgs().length > 0) { + return Response.error(e.getErrorCode(), e.getArgs()); + } else { + return Response.error(e.getErrorCode()); + } } @ExceptionHandler(SystemException.class) diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/FormDefinitionServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/FormDefinitionServiceImpl.java index 2cfc082a..96e92f7b 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/FormDefinitionServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/FormDefinitionServiceImpl.java @@ -35,14 +35,23 @@ public class FormDefinitionServiceImpl extends BaseServiceImpl