From 28923b3d67c58b032bc4ff128aa1d5e62d73dba1 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Fri, 02 Feb 2024 10:07:58 +0800
Subject: [PATCH] fix:提交实时在线率接口

---
 screen-api/src/main/java/com/moral/api/exception/GlobalExceptionHandler.java |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/exception/GlobalExceptionHandler.java b/screen-api/src/main/java/com/moral/api/exception/GlobalExceptionHandler.java
index b712ee8..f2136d1 100644
--- a/screen-api/src/main/java/com/moral/api/exception/GlobalExceptionHandler.java
+++ b/screen-api/src/main/java/com/moral/api/exception/GlobalExceptionHandler.java
@@ -1,13 +1,24 @@
 package com.moral.api.exception;
 
+import com.alibaba.druid.wall.violation.ErrorCode;
+import com.moral.api.utils.StringUtils;
 import com.moral.constant.Constants;
+import com.moral.constant.ResponseCodeEnum;
 import com.moral.constant.ResultMessage;
+import com.moral.exception.TokenException;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.context.support.DefaultMessageSourceResolvable;
 import org.springframework.http.HttpStatus;
+import org.springframework.validation.FieldError;
+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;
 import org.springframework.web.bind.annotation.ResponseStatus;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 
 @ControllerAdvice
@@ -21,7 +32,7 @@
     @ResponseStatus(HttpStatus.OK)
     public ResultMessage handleException(Exception ex) {
         ex.printStackTrace();
-        return  ResultMessage.fail(Constants.CODE_OPERATION_FAILED, "������������");
+        return  ResultMessage.fail(ResponseCodeEnum.FAIL.getCode(), ResponseCodeEnum.FAIL.getMsg());
     }
 
     /**
@@ -31,7 +42,23 @@
     @ResponseBody
     @ResponseStatus(HttpStatus.OK)
     public ResultMessage handleUserNotExistException(BusinessException ex) {
-        return ResultMessage.fail(Constants.CODE_OPERATION_FAILED, "������������������������");
+        return ResultMessage.fail(ResponseCodeEnum.FAIL.getCode(), ex.getMsg());
     }
 
+    @ExceptionHandler
+    public ResultMessage exceptionHandler(MethodArgumentNotValidException e){
+        List<String> collect = e.getBindingResult().getFieldErrors().stream().map(DefaultMessageSourceResolvable::getDefaultMessage)
+                .collect(Collectors.toList());
+        return ResultMessage.fail(ResponseCodeEnum.FAIL.getCode(), StringUtils.join(collect, ","));
+    }
+
+    /**
+     * ������TokenException������
+     */
+    @ExceptionHandler({TokenException.class})
+    @ResponseBody
+    @ResponseStatus(HttpStatus.OK)
+    public ResultMessage handleTokenException(TokenException ex) {
+        return ResultMessage.fail(ex.getCode(),ex.getMsg());
+    }
 }

--
Gitblit v1.8.0