diff --git a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TestController.java b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TestController.java index 94feb6ce..bbd1cc0a 100644 --- a/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TestController.java +++ b/nflg-wms-admin/src/main/java/com/nflg/wms/admin/controller/TestController.java @@ -5,10 +5,12 @@ import com.nflg.wms.admin.service.SapService; import com.nflg.wms.common.pojo.ApiResult; import com.nflg.wms.common.pojo.dto.LdapDepartmentDTO; import com.nflg.wms.common.pojo.dto.LdapUserDTO; +import com.nflg.wms.common.util.VUtil; import com.nflg.wms.repository.service.ILanguageService; import com.nflg.wms.starter.BaseController; import com.sap.conn.jco.JCoException; import jakarta.annotation.Resource; +import jakarta.validation.metadata.ValidateUnwrappedValue; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -76,4 +78,10 @@ public class TestController extends BaseController { String ids=basdeSerialNumberControllerService.generateSerialNumber(0); return ApiResult.success(ids); } + + @GetMapping("/businessError") + public void testThrowBusinessError() throws Exception { + int a=0; + Integer b =100/a; + } } \ No newline at end of file diff --git a/nflg-wms-srm-receive/pom.xml b/nflg-wms-srm-receive/pom.xml index 8da2076c..a4eb0f4e 100644 --- a/nflg-wms-srm-receive/pom.xml +++ b/nflg-wms-srm-receive/pom.xml @@ -38,6 +38,11 @@ org.springframework.boot spring-boot-starter-actuator + + org.redisson + redisson-spring-boot-starter + 3.52.0 + com.sap.conn.jco sapjco3 diff --git a/nflg-wms-srm-receive/src/test/java/com/nflg/wms/srm/receive/DeploySitTest.java b/nflg-wms-srm-receive/src/test/java/com/nflg/wms/srm/receive/DeploySitTest.java index 195f99e7..0adc7bdc 100644 --- a/nflg-wms-srm-receive/src/test/java/com/nflg/wms/srm/receive/DeploySitTest.java +++ b/nflg-wms-srm-receive/src/test/java/com/nflg/wms/srm/receive/DeploySitTest.java @@ -79,7 +79,7 @@ public class DeploySitTest { } private String getRemoteFileMD5(SSHUtil sshUtil, String remotePath) throws Exception { - String md5 = StrUtil.subPre(sshUtil.execWithReturn("md5sum " + remotePath),32); + String md5 = StrUtil.subPre(sshUtil.execWithReturn("md5sum " + remotePath), 32); printInfo("远程文件MD5为" + md5); return md5; } diff --git a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/advice/GlobalRestControllerAdvice.java b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/advice/GlobalRestControllerAdvice.java index 1238f63a..e58bf4b0 100644 --- a/nflg-wms-starter/src/main/java/com/nflg/wms/starter/advice/GlobalRestControllerAdvice.java +++ b/nflg-wms-starter/src/main/java/com/nflg/wms/starter/advice/GlobalRestControllerAdvice.java @@ -1,6 +1,7 @@ package com.nflg.wms.starter.advice; import cn.dev33.satoken.exception.NotLoginException; +import cn.hutool.core.exceptions.ExceptionUtil; import cn.hutool.core.util.StrUtil; import com.nflg.wms.common.constant.Constant; import com.nflg.wms.common.constant.STATE; @@ -31,30 +32,30 @@ public class GlobalRestControllerAdvice { @ExceptionHandler(Exception.class) public ApiResult handleAllExceptions(Exception ex) { - log.error("服务器内部错误: ", ex); + printLog("服务器内部错误", ex); return ApiResult.error(STATE.BusinessError, "服务器内部错误,错误号:" + MDC.get(Constant.TRACE_ID)); } @ExceptionHandler(NflgException.class) public ResponseEntity handleNflgException(NflgException ex) { if (ex.getState() == STATE.LoginError) { - log.error("登录失效: ", ex); + printLog("登录失效", ex); return ResponseEntity.status(HttpStatus.UNAUTHORIZED).body(ex.getMsg()); } else { - log.error("业务错误: ", ex); + printLog("业务错误", ex); return ResponseEntity.ok().body(ApiResult.error(ex.getState(), ex.getMsg())); } } @ExceptionHandler(ConstraintViolationException.class) public ApiResult handleConstraintViolationException(ConstraintViolationException ex) { - log.error("数据校验失败: ", ex); + printLog("数据校验失败", ex); return ApiResult.error(STATE.ParamErr, "数据校验失败: " + StrUtil.join(",", ex.getConstraintViolations().stream().map(ConstraintViolation::getMessage).collect(Collectors.toList()))); } @ExceptionHandler(MethodArgumentNotValidException.class) public ApiResult handleMethodArgumentNotValidException(MethodArgumentNotValidException ex) { - log.error("数据校验失败: ", ex); + printLog("数据校验失败", ex); List errors = new ArrayList<>(); ex.getBindingResult().getAllErrors().forEach(error -> { String fieldName = ((FieldError) error).getField(); @@ -73,19 +74,23 @@ public class GlobalRestControllerAdvice { @ExceptionHandler(NoResourceFoundException.class) @ResponseStatus(HttpStatus.NOT_FOUND) public ApiResult handleNoResourceFoundException(NoResourceFoundException ex) { - log.error("请求的地址无效: ", ex); + printLog("请求的地址无效", ex); return ApiResult.error(STATE.BusinessError, "请求的地址无效:" + ex.getResourcePath()); } @ExceptionHandler(SAPException.class) public ApiResult handleSAPException(SAPException ex) { - log.error("SAP错误: ", ex); + printLog("SAP错误", ex); return ApiResult.error(ex.getState(), "SAP错误:" + ex.getMessage()); } @ExceptionHandler(DataAlertException.class) public ApiResult handleDataAlertException(DataAlertException ex) { - log.error("返回数据的错误: ", ex); + printLog("返回数据的错误", ex); return ApiResult.errorWithExtras(ex.getState(), ex.getObj()); } + + private void printLog(String msg, Throwable ex) { + log.error("{}:{},{}", msg, ex.getMessage(), ExceptionUtil.stacktraceToString(ex)); + } } \ No newline at end of file