Browse Source

修改邮件

杨杰 6 years ago
parent
commit
ae13444282
1 changed files with 27 additions and 3 deletions
  1. 27 3
      src/main/java/com/llisoft/sms/config/ExceptionConfig.java

+ 27 - 3
src/main/java/com/llisoft/sms/config/ExceptionConfig.java

@@ -1,7 +1,11 @@
 package com.llisoft.sms.config;
 
+import java.nio.file.AccessDeniedException;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.http.converter.HttpMessageNotReadableException;
 import org.springframework.web.bind.MethodArgumentNotValidException;
 import org.springframework.web.bind.annotation.ControllerAdvice;
@@ -10,7 +14,9 @@ import org.springframework.web.bind.annotation.ResponseBody;
 
 import com.llisoft.common.constant.CodeEnum;
 import com.llisoft.common.exception.MtaException;
+import com.llisoft.common.vo.MailSendVo;
 import com.llisoft.common.vo.ResponseVo;
+import com.llisoft.sms.service.MailService;
 
 /**
  * 统一处理业务异常 controller
@@ -21,6 +27,12 @@ public class ExceptionConfig {
 	
 	private Logger logger = LoggerFactory.getLogger(ExceptionConfig.class);
 	
+	@Value("${spring.application.name}")
+	private String application;
+	
+	@Autowired
+	private MailService mailService;
+	
 
     /**
      * 入参空
@@ -29,7 +41,7 @@ public class ExceptionConfig {
      */
     @ExceptionHandler(HttpMessageNotReadableException.class)
     public @ResponseBody ResponseVo<String> exception(HttpMessageNotReadableException exception){
-    	logger.warn("入参异常", exception.getMessage());
+    	logger.warn("入参异常: {}", exception.getMessage());
         return ResponseVo.build(CodeEnum.C400);
     }
     
@@ -40,18 +52,29 @@ public class ExceptionConfig {
      */
     @ExceptionHandler(MethodArgumentNotValidException.class)
     public @ResponseBody ResponseVo<String> exception(MethodArgumentNotValidException exception){
-    	logger.warn("入参异常", exception.getMessage());
+    	logger.warn("入参异常: {}", exception.getMessage());
     	return ResponseVo.build(CodeEnum.C400.getCode(), exception.getBindingResult().getFieldError().getDefaultMessage());
     }
     
     /**
+     * 无权访问
+     * @param exception
+     * @return
+     */
+    @ExceptionHandler(AccessDeniedException.class)
+    public @ResponseBody ResponseVo<String> exception(AccessDeniedException exception){
+    	logger.warn("无权访问: {}", exception.getMessage());
+    	return ResponseVo.build(CodeEnum.C403);
+    }
+	
+    /**
      * 业务异常
      * @param exception
      * @return
      */
     @ExceptionHandler(MtaException.class)
     public @ResponseBody ResponseVo<String> exception(MtaException exception){
-    	logger.warn("业务异常", exception.getMessage());
+    	logger.warn("业务异常: {}", exception.getMessage());
     	return ResponseVo.build(CodeEnum.FAIL.getCode(), exception.getMessage());
     }
     
@@ -63,6 +86,7 @@ public class ExceptionConfig {
     @ExceptionHandler(Exception.class)
     public @ResponseBody ResponseVo<String> exception(Exception exception){
     	logger.error("服务异常", exception);
+    	mailService.sendMail("【" + application + "】服务异常", MailSendVo.exception(exception));
     	return ResponseVo.build(CodeEnum.C500);
     }