From a2afb0fef6c961abddaef26691ea19572e32950f Mon Sep 17 00:00:00 2001 From: sdy Date: Wed, 24 Jun 2026 13:23:34 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=97=A0=E6=9D=83=E8=AE=BF=E9=97=AE=E5=BC=82?= =?UTF-8?q?=E5=B8=B8=E6=8F=90=E7=A4=BA=E4=BC=98=E5=8C=96=202.=E8=9B=99?= =?UTF-8?q?=E8=B7=B3=E6=B5=8B=E8=AF=95=E6=8E=A5=E5=8F=A3=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/exception/RenExceptionHandler.java | 9 +++++++++ .../business/controller/MultiController.java | 13 ++++++++++++- .../modules/security/config/ShiroConfig.java | 1 + .../com/multictrl/common/exception/ErrorCode.java | 1 + common/src/main/resources/i18n/messages.properties | 1 + 5 files changed, 24 insertions(+), 1 deletion(-) diff --git a/admin/src/main/java/com/multictrl/common/exception/RenExceptionHandler.java b/admin/src/main/java/com/multictrl/common/exception/RenExceptionHandler.java index 9cb9fe8..cc1ab97 100644 --- a/admin/src/main/java/com/multictrl/common/exception/RenExceptionHandler.java +++ b/admin/src/main/java/com/multictrl/common/exception/RenExceptionHandler.java @@ -10,6 +10,7 @@ import com.multictrl.modules.log.service.SysLogErrorService; import jakarta.servlet.http.HttpServletRequest; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.shiro.authz.UnauthorizedException; import org.springframework.dao.DuplicateKeyException; import org.springframework.http.HttpHeaders; import org.springframework.web.bind.annotation.ExceptionHandler; @@ -48,6 +49,14 @@ public class RenExceptionHandler { return result; } + @ExceptionHandler(UnauthorizedException.class) + public Result handleDuplicateKeyException(UnauthorizedException ex) { + Result result = new Result(); + result.error(ErrorCode.SHIRO_NOT_AUTHORIZED); + + return result; + } + @ExceptionHandler(Exception.class) public Result handleException(Exception ex) { log.error(ex.getMessage(), ex); diff --git a/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java b/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java index 4e84af3..b9fde8b 100644 --- a/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java +++ b/admin/src/main/java/com/multictrl/modules/business/controller/MultiController.java @@ -19,6 +19,7 @@ import com.multictrl.modules.business.service.MultiService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.apache.shiro.authz.annotation.RequiresPermissions; @@ -139,7 +140,17 @@ public class MultiController { @PostMapping("/multiGroupDockTest") @Operation(summary = "蛙跳组机库测试") - public Result multiGroupDockTest(MultiTestDTO dto) { + @Parameters({ + @Parameter(name = "dockSn", description = "妙算SN"), + @Parameter(name = "routeId", description = "航线标识"), + @Parameter(name = "lon1", description = "经度1"), + @Parameter(name = "lat1", description = "纬度1"), + @Parameter(name = "height1", description = "高度1"), + @Parameter(name = "lon2", description = "经度2"), + @Parameter(name = "lat2", description = "纬度2"), + @Parameter(name = "height2", description = "高度2"), + }) + public Result multiGroupDockTest(@Parameter(hidden = true) MultiTestDTO dto) { String message = multiService.multiGroupDockTest(dto); return new Result().ok(message); diff --git a/admin/src/main/java/com/multictrl/modules/security/config/ShiroConfig.java b/admin/src/main/java/com/multictrl/modules/security/config/ShiroConfig.java index 03cc9e4..5d082be 100644 --- a/admin/src/main/java/com/multictrl/modules/security/config/ShiroConfig.java +++ b/admin/src/main/java/com/multictrl/modules/security/config/ShiroConfig.java @@ -75,6 +75,7 @@ public class ShiroConfig { filterMap.put("/q20-ctrl.html", "anon"); filterMap.put("/srs/**", "anon"); filterMap.put("/mqtt/auth", "anon"); + filterMap.put("/business/multi/multiGroupDockTest", "anon"); filterMap.put("/**", "oauth2"); return filterMap; } diff --git a/common/src/main/java/com/multictrl/common/exception/ErrorCode.java b/common/src/main/java/com/multictrl/common/exception/ErrorCode.java index f744c68..970a93c 100644 --- a/common/src/main/java/com/multictrl/common/exception/ErrorCode.java +++ b/common/src/main/java/com/multictrl/common/exception/ErrorCode.java @@ -38,6 +38,7 @@ public interface ErrorCode { int JOB_ERROR = 10028; int INVALID_SYMBOL = 10029; int OSS_REMOVE_FILE_ERROR = 10030; + int SHIRO_NOT_AUTHORIZED = 10031; int ROUTE_EXIST = 20001; int PARAMS_ERROR = 20002; diff --git a/common/src/main/resources/i18n/messages.properties b/common/src/main/resources/i18n/messages.properties index 567cee9..41c600a 100644 --- a/common/src/main/resources/i18n/messages.properties +++ b/common/src/main/resources/i18n/messages.properties @@ -27,6 +27,7 @@ 10028=\u5B9A\u65F6\u4EFB\u52A1\u5931\u8D25 10029=\u4E0D\u80FD\u5305\u542B\u975E\u6CD5\u5B57\u7B26 10030=\u5220\u9664\u6587\u4EF6\u5931\u8D25{0} +10031=\u65E0\u6743\u8BBF\u95EE\u8BE5\u8D44\u6E90\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u5206\u914D\u6743\u9650 #business 20001=\u822a\u7ebf\u5df2\u5b58\u5728 20002={0}\u53C2\u6570\u9519\u8BEF