From c4d861d166f64a295d0a1acb692af8fe9a721b50 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期四, 13 十月 2022 17:42:02 +0800 Subject: [PATCH] 统一异常处理 --- ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java | 2 +- ycl-common/src/main/java/com/ycl/config/ExceptionConfiguration.java | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java | 2 +- 3 files changed, 50 insertions(+), 2 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/config/ExceptionConfiguration.java b/ycl-common/src/main/java/com/ycl/config/ExceptionConfiguration.java new file mode 100644 index 0000000..dbd835d --- /dev/null +++ b/ycl-common/src/main/java/com/ycl/config/ExceptionConfiguration.java @@ -0,0 +1,48 @@ +package com.ycl.config; + +import com.ycl.api.CommonResult; +import com.ycl.enums.common.ResultCode; +import com.ycl.exception.ApiException; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpStatus; +import org.springframework.stereotype.Controller; +import org.springframework.validation.FieldError; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; + +@Configuration +@ControllerAdvice(annotations = {RestController.class, Controller.class}) +@ResponseBody +public class ExceptionConfiguration { + // 鎹曡幏鑷畾涔夊紓甯告暟鎹� + @ExceptionHandler(value = ApiException.class) + public CommonResult HandlePubException(ApiException pubExceptions) { + System.out.println(String.format("閿欒锛�%d锛� %s", + pubExceptions.getErrorCode().getCode(), + pubExceptions.getErrorCode().getMessage())); + return CommonResult.failed(pubExceptions.getErrorCode()); + } + + @ExceptionHandler(value = MethodArgumentNotValidException.class) + public CommonResult HandleParamsException(HttpServletRequest request, MethodArgumentNotValidException exception) { + StringBuffer buffer = new StringBuffer(); + for (FieldError error : exception.getBindingResult().getFieldErrors()) { + buffer.append(String.format("鍙傛暟:%s,鍊间负:%s, 鍘熷洜:%s銆�", error.getField(), error.getRejectedValue(), error.getDefaultMessage())); + } + return CommonResult.failed(ResultCode.VALIDATE_FAILED, buffer.toString()); + } + + // 鎹曡幏鍏朵粬寮傚父 + @ExceptionHandler// 鐩存帴杩斿洖500 + public CommonResult HandleAllException(Exception exception) { + + + exception.printStackTrace(); + // todo 璁板綍鏃ュ織 + + return CommonResult.failed(ResultCode.FAILED, "绯荤粺閿欒"); + } + +} diff --git a/ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java b/ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java index 504f5be..bdc2361 100644 --- a/ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java +++ b/ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java @@ -36,7 +36,7 @@ private String name; @ApiModelProperty(value = "瑙掕壊绫诲瀷") - private String type; + private Long type; @ApiModelProperty(value = "鎻忚堪") private String description; diff --git a/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java index 760c03b..801bdf2 100644 --- a/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java +++ b/ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java @@ -168,7 +168,7 @@ List<AdminDepartDTO.UserInfoDTO> userInfoDTOS = umsAdminDeparts.stream().map(a -> { AdminDepartDTO.UserInfoDTO userInfoDTO = new AdminDepartDTO.UserInfoDTO(); userInfoDTO.setUserId(a.getUserId()); - userInfoDTO.setUsername(umsAdminService.getById(a.getUserId()).getUsername()); +// userInfoDTO.setUsername(umsAdminService.getById(a.getUserId()).getUsername()); return userInfoDTO; }).collect(Collectors.toList()); record.setUserInfoDTOS(userInfoDTOS); -- Gitblit v1.8.0