From 8d702fa2c62b3617f71c5e91293e338d1ccd1549 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期六, 08 十一月 2025 13:15:23 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/common/config/CoolExceptionHandler.java |   32 +++++++++++++++++++++++++++++++-
 1 files changed, 31 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/common/config/CoolExceptionHandler.java b/src/main/java/com/zy/common/config/CoolExceptionHandler.java
index 9a6fe2d..21b03bf 100644
--- a/src/main/java/com/zy/common/config/CoolExceptionHandler.java
+++ b/src/main/java/com/zy/common/config/CoolExceptionHandler.java
@@ -2,10 +2,18 @@
 
 import com.core.common.R;
 import com.core.exception.CoolException;
+import lombok.Data;
+import org.springframework.http.HttpStatus;
+import org.springframework.validation.BindingResult;
+import org.springframework.validation.FieldError;
 import org.springframework.web.HttpRequestMethodNotSupportedException;
+import org.springframework.web.bind.MethodArgumentNotValidException;
 import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.ResponseStatus;
 import org.springframework.web.bind.annotation.RestControllerAdvice;
 import org.springframework.web.method.HandlerMethod;
+
+import java.util.concurrent.atomic.AtomicReference;
 
 /**
  * Created by vincent on 2019-06-09
@@ -26,7 +34,29 @@
 
     @ExceptionHandler(CoolException.class)
     public R handleRRException(CoolException e) {
-        return R.parse(e.getMessage());
+        String[] split = e.getMessage().split("-");
+        if (split.length == 2) {
+            if (String.valueOf(split[0]).length() < 3) {
+                return R.parse(e.getMessage());
+            }
+        }
+        return R.error(e.getMessage());
+    }
+
+    @ExceptionHandler(MethodArgumentNotValidException.class)
+    @ResponseStatus(HttpStatus.UNAUTHORIZED)
+    public R handleMethodArgumentNotValidException(MethodArgumentNotValidException ex) {
+        // 杩斿洖閿欒鍒楄〃
+        BindingResult bindingResult = ex.getBindingResult();
+        final String[] field = {""};
+
+        bindingResult.getFieldErrors().forEach(fieldError -> {
+            String message = fieldError.getDefaultMessage();
+            field[0] = field[0] + message+";";
+        });
+
+        // 鍙傛暟涓虹┖
+        return new R(401, field[0]);
     }
 
 }

--
Gitblit v1.9.1