From 20fece55233ec20ac8b289151162a255a8ef09d1 Mon Sep 17 00:00:00 2001
From: zhangfeng <1603559716@qq.com>
Date: 星期一, 16 一月 2023 08:35:05 +0800
Subject: [PATCH] 安全物资和设备优化
---
safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/config/exception/GlobalExceptionHandler.java | 93 +++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 91 insertions(+), 2 deletions(-)
diff --git a/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/config/exception/GlobalExceptionHandler.java b/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/config/exception/GlobalExceptionHandler.java
index a8493d2..cce9141 100644
--- a/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/config/exception/GlobalExceptionHandler.java
+++ b/safePlatfrom-out-web/src/main/java/com/gkhy/safePlatform/config/exception/GlobalExceptionHandler.java
@@ -5,8 +5,15 @@
import com.gkhy.safePlatform.commons.exception.AusinessException;
import com.gkhy.safePlatform.commons.exception.BusinessException;
import com.gkhy.safePlatform.commons.vo.ResultVO;
+import com.gkhy.safePlatform.emergency.excepiton.EmergencyException;
+import com.gkhy.safePlatform.equipment.excepiton.EquipmentException;
+import com.gkhy.safePlatform.incidentManage.exception.AccidentException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.security.access.AccessDeniedException;
+import org.springframework.security.core.AuthenticationException;
+import org.springframework.web.HttpRequestMethodNotSupportedException;
+import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
@@ -16,6 +23,35 @@
private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+ /**
+ * 事故管理自定义异常
+ */
+ @ResponseBody
+ @ExceptionHandler(value = AccidentException.class)
+ public ResultVO AHandler(AccidentException e) {
+ logger.warn(e.getMessage());
+ return new ResultVO(e.getCode(),e.getMessage());
+ }
+
+ /**
+ * 应急预案自定义异常
+ */
+ @ResponseBody
+ @ExceptionHandler(value = EmergencyException.class)
+ public ResultVO AHandler(EmergencyException e) {
+ logger.warn(e.getMessage());
+ return new ResultVO(e.getCode(),e.getMessage());
+ }
+ /**
+ * 设备自定义异常
+ */
+ @ResponseBody
+ @ExceptionHandler(value = EquipmentException.class)
+ public ResultVO AHandler(EquipmentException e) {
+ logger.warn(e.getMessage());
+ return new ResultVO(e.getCode(),e.getMessage());
+ }
/**
* 自定义异常
@@ -35,7 +71,46 @@
@ExceptionHandler(value = BusinessException.class)
public ResultVO AHandler(BusinessException e) {
logger.warn(e.getMessage());
- return new ResultVO(e.getError());
+ return new ResultVO(e.getCode(),e.getMessage());
+ }
+
+
+ /**
+ * @Description: AuthenticationException
+ */
+
+ @ResponseBody
+ @ExceptionHandler(value = AuthenticationException.class)
+ public ResultVO CHandler(AuthenticationException e) {
+ logger.warn(e.getMessage());
+ return new ResultVO(ResultCodes.CLIENT_PERMISSION_NOT_ALLOW);
+ }
+
+
+ /**
+ * @Description: AuthenticationException
+ */
+
+ @ResponseBody
+ @ExceptionHandler(value = AccessDeniedException.class)
+ public ResultVO DHandler(AccessDeniedException e) {
+ logger.warn(e.getMessage());
+ return new ResultVO(ResultCodes.CLIENT_PERMISSION_NOT_ALLOW);
+
+ }
+
+
+ /**
+ * @Description: 请求方法
+ */
+ @ResponseBody
+ @ExceptionHandler(value = HttpRequestMethodNotSupportedException.class)
+ public ResultVO DHandler(HttpRequestMethodNotSupportedException e) {
+ ResultVO resultVO = new ResultVO();
+ resultVO.setCode(ResultCodes.CLIENT_METHOD_NOT_MATCH.getCode());
+ resultVO.setMsg(e.getMessage());
+ return resultVO;
+
}
/**
@@ -46,6 +121,20 @@
public ResultVO errorHandler(Exception e) {
e.printStackTrace();
logger.error(e.getMessage());
- return new ResultVO(ResultCodes.SERVER_ERROR);
+ ResultVO resultVO = new ResultVO<>();
+ resultVO.setCode(ResultCodes.SERVER_ERROR.getCode());
+ return resultVO;
+// return new ResultVO(ResultCodes.SERVER_ERROR);
+ }
+ /**
+ * 处理入参异常
+ * @param e
+ * @return
+ */
+ @ResponseBody
+ @ExceptionHandler(MethodArgumentNotValidException.class)
+ public ResultVO handleMethodArgumentNotValidException(MethodArgumentNotValidException e){
+ logger.warn(e.getBindingResult().getFieldError().getDefaultMessage());
+ return new ResultVO(ResultCodes.SERVER_PARAM_NULL.getCode(),e.getBindingResult().getFieldError().getDefaultMessage());
}
}
--
Gitblit v1.9.2