From 34a7a5a6969d3000495d54081dbc99b02527a001 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期一, 17 二月 2025 13:49:36 +0800
Subject: [PATCH] #
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateSolution.java | 23 +++++++++++++++--------
1 files changed, 15 insertions(+), 8 deletions(-)
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateSolution.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateSolution.java
index 4dbd761..679502b 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateSolution.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateSolution.java
@@ -4,6 +4,7 @@
import com.zy.asrs.framework.common.SpringUtils;
import com.zy.asrs.framework.exception.CoolException;
import com.zy.asrs.wcs.core.model.NavigateNode;
+import com.zy.asrs.wcs.core.model.enums.MapNodeType;
import com.zy.asrs.wcs.system.entity.Dict;
import com.zy.asrs.wcs.system.service.DictService;
@@ -17,7 +18,7 @@
*/
public class NavigateSolution {
- // -1 -> 澧欏锛� 0 -> 璐т綅锛� 1 -> 璧风偣 2 -> 缁堢偣 3-> 姣嶈建 4->绔欑偣
+ // -1 -> 澧欏锛� 0 -> 璐т綅锛� 1 -> 璧风偣 2 -> 缁堢偣 3-> 姣嶈建 4->杈撻�佺珯鐐� 5->鍏呯數妗� 6->灏忚溅鍙蛋杈撻�佺珯鐐� 66->灏忚溅 67->鎻愬崌鏈�
int[][] map = {{}};
@@ -138,7 +139,7 @@
// }
if (mapDirection.equals("x")) {//姣嶈建x鏂瑰悜
- if (map[x][y] == 3) {
+ if (map[x][y] == MapNodeType.MAIN_PATH.id) {
//姣嶈建鎵嶈兘杩涜涓婁笅绉诲姩
if (is_valid(x + 1, y))
{
@@ -152,8 +153,8 @@
}
}
- if (map[x][y] == 0 || map[x][y] == 3 || map[x][y] == 4 || map[x][y] == 5) {
- //瀛愯建鍜屾瘝杞ㄣ�佽緭閫佺嚎銆佸厖鐢垫々鎵嶈兘杩涜宸﹀彸绉诲姩
+ if (map[x][y] == MapNodeType.NORMAL_PATH.id || map[x][y] == MapNodeType.MAIN_PATH.id || map[x][y] == MapNodeType.CONVEYOR_CAR_GO.id || map[x][y] == MapNodeType.CHARGE.id || map[x][y] == MapNodeType.LIFT.id) {
+ //瀛愯建鍜屾瘝杞ㄣ�佸皬杞﹀彲璧拌緭閫佺嚎銆佸厖鐢垫々銆佹彁鍗囨満鎵嶈兘杩涜宸﹀彸绉诲姩
if (is_valid(x, y + 1))
{
NavigateNode node = new NavigateNode(x, y + 1);
@@ -166,7 +167,7 @@
}
}
}else if (mapDirection.equals("y")) {//姣嶈建y鏂瑰悜
- if (map[x][y] == 3) {
+ if (map[x][y] == MapNodeType.MAIN_PATH.id) {
//姣嶈建鎵嶈兘杩涜宸﹀彸绉诲姩
if (is_valid(x, y + 1))
{
@@ -180,8 +181,8 @@
}
}
- if (map[x][y] == 0 || map[x][y] == 3 || map[x][y] == 4 || map[x][y] == 5) {
- //瀛愯建鍜屾瘝杞ㄣ�佽緭閫佺嚎銆佸厖鐢垫々鎵嶈兘杩涜涓婁笅绉诲姩
+ if (map[x][y] == MapNodeType.NORMAL_PATH.id || map[x][y] == MapNodeType.MAIN_PATH.id || map[x][y] == MapNodeType.CONVEYOR_CAR_GO.id || map[x][y] == MapNodeType.CHARGE.id || map[x][y] == MapNodeType.LIFT.id) {
+ //瀛愯建鍜屾瘝杞ㄣ�佸皬杞﹀彲璧拌緭閫佺嚎銆佸厖鐢垫々銆佹彁鍗囨満鎵嶈兘杩涜涓婁笅绉诲姩
if (is_valid(x + 1, y))
{
NavigateNode node = new NavigateNode(x + 1, y);
@@ -204,7 +205,13 @@
return false;
}
// 濡傛灉缁撶偣鐨勪綅缃皬浜�0锛屽垯涓嶅悎娉�
- if (map[x][y] < 0) return false;
+ if (map[x][y] < 0) {
+ return false;
+ }
+
+ if (map[x][y] == MapNodeType.CAR.id) {//鑺傜偣鏄皬杞�
+ return false;
+ }
NavigateNode navigateNode = new NavigateNode(x, y);
if (is_exist(navigateNode)) {
return false;
--
Gitblit v1.9.1