From f23549bc50ae4d489c37d68c0f3b1456b7156ea8 Mon Sep 17 00:00:00 2001 From: gtsxc <3272660260@qq.com> Date: 星期二, 10 十二月 2024 16:06:31 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java | 84 ++++++++++++++++++++++++------------------ 1 files changed, 48 insertions(+), 36 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java index f595685..d484864 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/kernel/command/ShuttleCommandService.java @@ -147,12 +147,14 @@ shuttleTaskModeType = ShuttleTaskModeType.SHUTTLE_MOVE; movePath = motion.getMovePath(); - originPath = JSON.parseArray(movePath, NavigateNode.class); - finalPath = assignCommand.getNodes(); - similarity = navigateUtils.similarityPath(originPath, finalPath); - if(similarity <= similarityRef) { - News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); - return false; + if (!Cools.isEmpty(movePath)) { + originPath = JSON.parseArray(movePath, NavigateNode.class); + finalPath = assignCommand.getNodes(); + similarity = navigateUtils.similarityPath(originPath, finalPath); + if(similarity <= similarityRef) { + News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); + return false; + } } break; @@ -167,12 +169,14 @@ shuttleTaskModeType = ShuttleTaskModeType.TRANSPORT; movePath = motion.getMovePath(); - originPath = JSON.parseArray(movePath, NavigateNode.class); - finalPath = assignCommand.getNodes(); - similarity = navigateUtils.similarityPath(originPath, finalPath); - if(similarity <= similarityRef) { - News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); - return false; + if (!Cools.isEmpty(movePath)) { + originPath = JSON.parseArray(movePath, NavigateNode.class); + finalPath = assignCommand.getNodes(); + similarity = navigateUtils.similarityPath(originPath, finalPath); + if(similarity <= similarityRef) { + News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); + return false; + } } if (motion.getReleaseLift() == 2) {//鎵ц涓噴鏀炬彁鍗囨満 @@ -217,12 +221,14 @@ shuttleTaskModeType = ShuttleTaskModeType.TRANSPORT_TO_CONVEYOR; movePath = motion.getMovePath(); - originPath = JSON.parseArray(movePath, NavigateNode.class); - finalPath = assignCommand.getNodes(); - similarity = navigateUtils.similarityPath(originPath, finalPath); - if(similarity <= similarityRef) { - News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); - return false; + if (!Cools.isEmpty(movePath)) { + originPath = JSON.parseArray(movePath, NavigateNode.class); + finalPath = assignCommand.getNodes(); + similarity = navigateUtils.similarityPath(originPath, finalPath); + if(similarity <= similarityRef) { + News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); + return false; + } } break; @@ -231,12 +237,14 @@ shuttleTaskModeType = ShuttleTaskModeType.MOVE_PALLET_LIFT; movePath = motion.getMovePath(); - originPath = JSON.parseArray(movePath, NavigateNode.class); - finalPath = assignCommand.getNodes(); - similarity = navigateUtils.similarityPath(originPath, finalPath); - if(similarity <= similarityRef) { - News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); - return false; + if (!Cools.isEmpty(movePath)) { + originPath = JSON.parseArray(movePath, NavigateNode.class); + finalPath = assignCommand.getNodes(); + similarity = navigateUtils.similarityPath(originPath, finalPath); + if(similarity <= similarityRef) { + News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); + return false; + } } shuttleCommands.add(0, shuttleThread.getLiftCommand(motion.getTaskNo(), true)); @@ -246,12 +254,14 @@ shuttleTaskModeType = ShuttleTaskModeType.MOVE_PALLET_DOWN; movePath = motion.getMovePath(); - originPath = JSON.parseArray(movePath, NavigateNode.class); - finalPath = assignCommand.getNodes(); - similarity = navigateUtils.similarityPath(originPath, finalPath); - if(similarity <= similarityRef) { - News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); - return false; + if (!Cools.isEmpty(movePath)) { + originPath = JSON.parseArray(movePath, NavigateNode.class); + finalPath = assignCommand.getNodes(); + similarity = navigateUtils.similarityPath(originPath, finalPath); + if(similarity <= similarityRef) { + News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); + return false; + } } shuttleCommands.add(shuttleCommands.size(), shuttleThread.getLiftCommand(motion.getTaskNo(), false)); @@ -364,12 +374,14 @@ shuttleCommands = this.shuttleAssignCommand(motion.getOrigin(), shuttleFromLiftStandbyLoc, NavigationMapType.NORMAL.id, assignCommand, shuttleThread); movePath = motion.getMovePath(); - originPath = JSON.parseArray(movePath, NavigateNode.class); - finalPath = assignCommand.getNodes(); - similarity = navigateUtils.similarityPath(originPath, finalPath); - if(similarity <= similarityRef) { - News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); - return false; + if (!Cools.isEmpty(movePath)) { + originPath = JSON.parseArray(movePath, NavigateNode.class); + finalPath = assignCommand.getNodes(); + similarity = navigateUtils.similarityPath(originPath, finalPath); + if(similarity <= similarityRef) { + News.error("{} dash {} path similarity mismatch!", motion.getOrigin(), motion.getTarget()); + return false; + } } //鏇存柊鍔ㄤ綔鍙敤寰呮満浣� -- Gitblit v1.9.1