From 17f8c360cbab375e01d912b5584f4c659b92c0ee Mon Sep 17 00:00:00 2001 From: wangxiang <1827945911@qq.com> Date: Tue, 17 May 2022 18:58:46 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=91=A3=20=E9=87=8D=E5=86=99=E6=94=AF?= =?UTF-8?q?=E6=8C=81=E5=89=8D=E7=AB=AF=E8=87=AA=E5=AE=9A=E4=B9=89=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/exception/CommonException.java | 34 +++++++++++++++++++ .../handle/GlobalBizExceptionHandler.java | 16 +++++++++ .../system/service/impl/UserServiceImpl.java | 3 +- kicc-ui/src/utils/http/axios/index.ts | 3 -- 4 files changed, 52 insertions(+), 4 deletions(-) create mode 100644 kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/exception/CommonException.java diff --git a/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/exception/CommonException.java b/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/exception/CommonException.java new file mode 100644 index 00000000..ad188d3e --- /dev/null +++ b/kicc-common/kicc-common-core/src/main/java/com/cloud/kicc/common/core/exception/CommonException.java @@ -0,0 +1,34 @@ +package com.cloud.kicc.common.core.exception; + +import lombok.NoArgsConstructor; + +/** + *
+ * 通用前端提示自定义异常信息 + *
+ * + * @Author: entfrm开发团队-王翔 + * @Date: 2022/2/18 + */ +@NoArgsConstructor +public class CommonException extends RuntimeException { + + private static final long serialVersionUID = 1L; + + public CommonException(String message) { + super(message); + } + + public CommonException(Throwable cause) { + super(cause); + } + + public CommonException(String message, Throwable cause) { + super(message, cause); + } + + public CommonException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { + super(message, cause, enableSuppression, writableStackTrace); + } + +} diff --git a/kicc-common/kicc-common-feign/src/main/java/com/cloud/kicc/common/feign/sentinel/handle/GlobalBizExceptionHandler.java b/kicc-common/kicc-common-feign/src/main/java/com/cloud/kicc/common/feign/sentinel/handle/GlobalBizExceptionHandler.java index bcdafee3..6c187ba3 100644 --- a/kicc-common/kicc-common-feign/src/main/java/com/cloud/kicc/common/feign/sentinel/handle/GlobalBizExceptionHandler.java +++ b/kicc-common/kicc-common-feign/src/main/java/com/cloud/kicc/common/feign/sentinel/handle/GlobalBizExceptionHandler.java @@ -2,6 +2,7 @@ package com.cloud.kicc.common.feign.sentinel.handle; import com.alibaba.csp.sentinel.Tracer; import com.cloud.kicc.common.core.api.R; +import com.cloud.kicc.common.core.exception.CommonException; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression; import org.springframework.http.HttpStatus; @@ -46,6 +47,21 @@ public class GlobalBizExceptionHandler { return R.error(e.getLocalizedMessage()); } + /** + * 通用前端错误提示自定义全局异常 + * @param e the e + * @return R + */ + @ExceptionHandler(CommonException.class) + @ResponseStatus(HttpStatus.NETWORK_AUTHENTICATION_REQUIRED) + public R handleGlobalCommonException(CommonException e) { + log.error("自定义异常信息 ex={}", e.getMessage(), e); + + // 业务异常交由 sentinel 记录 + Tracer.trace(e); + return R.error(e.getLocalizedMessage()); + } + /** * 处理业务校验过程中碰到的非法参数异常 该异常基本由{@link org.springframework.util.Assert}抛出 * @see Assert#hasLength(String, String) diff --git a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java index 8038649c..65d7e4b1 100644 --- a/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java +++ b/kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/service/impl/UserServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.cloud.kicc.common.core.constant.SecurityConstants; import com.cloud.kicc.common.core.exception.CheckedException; +import com.cloud.kicc.common.core.exception.CommonException; import com.cloud.kicc.system.api.entity.Dept; import com.cloud.kicc.system.api.entity.Role; import com.cloud.kicc.system.api.entity.User; @@ -93,7 +94,7 @@ public class UserServiceImpl extends ServiceImpl