From 03e68b2be24ea024eae645c47da1d4cb1773302a Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期五, 13 十月 2023 19:47:13 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/utils/Utils.java | 35 +++++++++++++++++++++++++----------
src/main/java/com/zy/common/utils/NavigateUtils.java | 2 +-
2 files changed, 26 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index 393f21e..1ef6d12 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -1,13 +1,17 @@
package com.zy.asrs.utils;
import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Arith;
import com.core.common.Cools;
import com.core.common.SpringUtils;
import com.zy.asrs.entity.BasShuttle;
import com.zy.asrs.entity.LocMast;
+import com.zy.asrs.entity.WrkMast;
+import com.zy.asrs.mapper.WrkMastMapper;
import com.zy.asrs.service.BasShuttleService;
import com.zy.asrs.service.LocMastService;
+import com.zy.asrs.service.WrkMastService;
import com.zy.asrs.service.impl.MainServiceImpl;
import com.zy.common.model.NavigateNode;
import com.zy.common.model.enums.NavigationMapType;
@@ -440,7 +444,7 @@
//鎼滅储涓�鏉℃病鏈夊皬杞︾殑绌哄贩閬擄紝骞惰皟搴﹀皬杞�
public static boolean searchEmptyGroupToMoveShuttle(int z, Integer currentShuttleId, NyShuttleThread shuttleThread) {
LocMastService locMastService = SpringUtils.getBean(LocMastService.class);
- MainServiceImpl mainServiceImpl = SpringUtils.getBean(MainServiceImpl.class);
+ WrkMastService wrkMastService = SpringUtils.getBean(WrkMastService.class);
CommonService commonService = SpringUtils.getBean(CommonService.class);
ShuttleDispatchUtils shuttleDispatchUtils = SpringUtils.getBean(ShuttleDispatchUtils.class);
@@ -458,6 +462,8 @@
int distY = -1;
int distX = -1;
int distZ = -1;
+ //鑾峰彇閬胯搴撲綅
+ String distLocNo = null;
for (int y = 20; y <= 56; y++) {
boolean searchFlag = true;
for (int x = 10; x <= 11; x++) {
@@ -472,19 +478,28 @@
distY = y;
distX = 11;
distZ = z;
+
+ //鑾峰彇閬胯搴撲綅
+ String locNo = NavigatePositionConvert.xyzToLocNo(distX, distY, distZ);
+ LocMast distLocMast = locMastService.queryByLoc(locNo);
+ if (distLocMast == null) {
+ continue;
+ }
+
+ //鍒ゆ柇璇ュ簱浣嶆槸鍚﹀瓨鍦ㄥ伐浣滄。
+ EntityWrapper<WrkMast> wrapper = new EntityWrapper<>();
+ wrapper.eq("loc_no", locNo);
+ WrkMast wrkMast = wrkMastService.selectOne(wrapper);
+ if (wrkMast != null) {
+ continue;//瀛樺湪宸ヤ綔妗h烦杩囪搴撲綅
+ }
+
+ distLocNo = locNo;
break;
}
}
- if (distY != -1) {
-
- //鑾峰彇閬胯搴撲綅
- String distLocNo = NavigatePositionConvert.xyzToLocNo(distX, distY, distZ);
- LocMast distLocMast = locMastService.queryByLoc(distLocNo);
- if (distLocMast == null) {
- return false;
- }
-
+ if (distLocNo != null) {
//璋冨害灏忚溅鍒伴伩璁╀綅缃�
return shuttleDispatchUtils.dispatchShuttle(commonService.getWorkNo(7), distLocNo, shuttleProtocol.getShuttleNo().intValue());
}
diff --git a/src/main/java/com/zy/common/utils/NavigateUtils.java b/src/main/java/com/zy/common/utils/NavigateUtils.java
index c086759..596e595 100644
--- a/src/main/java/com/zy/common/utils/NavigateUtils.java
+++ b/src/main/java/com/zy/common/utils/NavigateUtils.java
@@ -39,7 +39,7 @@
NavigateNode res_node = solution.astarSearch(start, end);
if (res_node == null) {
- System.out.println("鏈壘鍒拌矾寰�");
+ System.out.println(start + "," + end + "锛氭湭鎵惧埌璺緞");
return null;
} else {
ArrayList<NavigateNode> list = new ArrayList<>();
--
Gitblit v1.9.1