From f9ebacd189cf3800616e33d8ee24a0be1fc58a39 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@gmail.com>
Date: 星期六, 07 二月 2026 13:19:53 +0800
Subject: [PATCH] #
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java | 42 +++++++++++++++++++++++-------------------
1 files changed, 23 insertions(+), 19 deletions(-)
diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
index 230d0e6..7597586 100644
--- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
+++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -1155,7 +1155,7 @@
}
// 浣滀笟鐐瑰姩浣�
- AgvDirectionType agvDirectionType;
+ ActuatorDirectionType actuatorDirectionType;
Double staWorkDirection;
AgvBackpackType backpackType = AgvBackpackType.query(segment.getBackpack());
switch (Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType()))) {
@@ -1168,7 +1168,8 @@
// 璐ф灦鍙栬揣
Loc oriLoc = locService.getById(task.getOriLoc());
// 璁$畻宸﹀彸鏂瑰悜
- agvDirectionType = mapService.calculateAgvWorkDirectionByShelf(oriLoc, lastCode);
+ actuatorDirectionType = ActuatorDirectionType.fromVal(oriLoc.getCompDirect());
+// actuatorDirectionType = mapService.calculateAgvWorkDirectionByShelf(oriLoc, lastCode);
actionList.add(new Action(
null, // 缂栧彿
task.getBusId(), // 鎬荤嚎
@@ -1176,7 +1177,7 @@
null, // 鍔ㄤ綔鍙�
null, // 浼樺厛绾�
ActionTypeType.ReadyTakeFromShelvesLoc.desc, // 鍚嶇О
- (double) agvDirectionType.val, // 灞炴�у��
+ (double) actuatorDirectionType.val, // 灞炴�у��
lastCode.getData(), // 鍦伴潰鐮�
JSON.toJSONString(new HeightDepthDto(oriLoc.getOffset())), // 鍔ㄤ綔鍙傛暟
ActionTypeType.ReadyTakeFromShelvesLoc.val(), // 鍔ㄤ綔绫诲瀷
@@ -1231,7 +1232,8 @@
// 璐ф灦鏀捐揣
Loc destLoc = locService.getById(task.getDestLoc());
// 璁$畻宸﹀彸鏂瑰悜
- agvDirectionType = mapService.calculateAgvWorkDirectionByShelf(destLoc, lastCode);
+ actuatorDirectionType = ActuatorDirectionType.fromVal(destLoc.getCompDirect());
+// actuatorDirectionType = mapService.calculateAgvWorkDirectionByShelf(destLoc, lastCode);
actionList.add(new Action(
null, // 缂栧彿
task.getBusId(), // 鎬荤嚎
@@ -1239,7 +1241,7 @@
null, // 鍔ㄤ綔鍙�
null, // 浼樺厛绾�
ActionTypeType.ReadyReleaseToShelvesLoc.desc, // 鍚嶇О
- (double) agvDirectionType.val, // 灞炴�у��
+ (double) actuatorDirectionType.val, // 灞炴�у��
lastCode.getData(), // 鍦伴潰鐮�
JSON.toJSONString(new HeightDepthDto(destLoc.getOffset())), // 鍔ㄤ綔鍙傛暟
ActionTypeType.ReadyReleaseToShelvesLoc.val(), // 鍔ㄤ綔绫诲瀷
@@ -1251,9 +1253,9 @@
case ORI_STA:
// 绔欑偣鍙栬揣
Sta oriSta = staService.getById(task.getOriSta());
- Double oriStaWorkDirection = mapService.getStaAngle(oriSta, workDirection);
+ Double angle = oriSta.getAngle() == null ? mapService.getStaAngle(oriSta, workDirection) : Double.valueOf(oriSta.getAngle());
// 妫�楠屾柟鍚�
- if (!lastDirection.equals(oriStaWorkDirection)) {
+ if (!lastDirection.equals(Double.valueOf(angle))) {
if (!lastCode.getCornerBool()) {
throw new CoolException(agvNo + "鍙峰皬杞︽柟鍚戦敊璇紝璇锋帹鑷宠浆寮偣鎵嬪姩璋冩暣");
}
@@ -1265,18 +1267,19 @@
null, // 鍔ㄤ綔鍙�
null, // 浼樺厛绾�
ActionTypeType.TurnCorner.desc, // 鍚嶇О
- (double) MapService.calcSpinDirection(lastCode, lastDirection, oriStaWorkDirection).val, // 灞炴�у��
+ (double) MapService.calcSpinDirection(lastCode, lastDirection, angle).val, // 灞炴�у��
lastCode.getData(), // 鍦伴潰鐮�
- String.valueOf(oriStaWorkDirection), // 鍔ㄤ綔鍙傛暟
+ String.valueOf(angle), // 鍔ㄤ綔鍙傛暟
ActionTypeType.TurnCorner.val(), // 鍔ㄤ綔绫诲瀷
actionPrepareSts, // 鍔ㄤ綔杩涘害
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
- lastDirection = oriStaWorkDirection;
+ lastDirection = angle;
}
// 璁$畻璐у弶宸ヤ綔鏂瑰悜
- staWorkDirection = mapService.calculateAgvWorkDirectionByStation(oriStaWorkDirection, lastDirection);
+ actuatorDirectionType = ActuatorDirectionType.fromVal(oriSta.getActDir());
+// staWorkDirection = mapService.calculateAgvWorkDirectionByStation(oriStaWorkDirection, lastDirection);
actionList.add(new Action(
null, // 缂栧彿
task.getBusId(), // 鎬荤嚎
@@ -1284,7 +1287,7 @@
null, // 鍔ㄤ綔鍙�
null, // 浼樺厛绾�
ActionTypeType.ReadyTakeFromConveyorSta.desc, // 鍚嶇О
- staWorkDirection, // 灞炴�у��
+ (double) actuatorDirectionType.val, // 灞炴�у��
lastCode.getData(), // 鍦伴潰鐮�
JSON.toJSONString(new HeightDepthDto(oriSta.getHeight(), Optional.ofNullable(oriSta.getDepth()).orElse((double) 0))), // 鍔ㄤ綔鍙傛暟
ActionTypeType.ReadyTakeFromConveyorSta.val(), // 鍔ㄤ綔绫诲瀷
@@ -1315,9 +1318,9 @@
case DEST_STA:
// 绔欑偣鏀捐揣
Sta destSta = staService.getById(task.getDestSta());
- Double destStaWorkDirection = mapService.getStaAngle(destSta, workDirection);
+ angle = destSta.getAngle() == null ? mapService.getStaAngle(destSta, workDirection) : Double.valueOf(destSta.getAngle());
// 妫�楠屾柟鍚�
- if (!lastDirection.equals(destStaWorkDirection)) {
+ if (!lastDirection.equals(angle)) {
if (!lastCode.getCornerBool()) {
throw new CoolException(agvNo + "鍙峰皬杞︽柟鍚戦敊璇紝璇锋帹鑷宠浆寮偣鎵嬪姩璋冩暣");
}
@@ -1329,15 +1332,15 @@
null, // 鍔ㄤ綔鍙�
null, // 浼樺厛绾�
ActionTypeType.TurnCorner.desc, // 鍚嶇О
- (double) MapService.calcSpinDirection(lastCode, lastDirection, destStaWorkDirection).val, // 灞炴�у��
+ (double) MapService.calcSpinDirection(lastCode, lastDirection, angle).val, // 灞炴�у��
lastCode.getData(), // 鍦伴潰鐮�
- String.valueOf(destStaWorkDirection), // 鍔ㄤ綔鍙傛暟
+ String.valueOf(angle), // 鍔ㄤ綔鍙傛暟
ActionTypeType.TurnCorner.val(), // 鍔ㄤ綔绫诲瀷
actionPrepareSts, // 鍔ㄤ綔杩涘害
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
- lastDirection = destStaWorkDirection;
+ lastDirection = angle;
}
// 鑳岀瘬鍙栬揣
if (backupAction) {
@@ -1359,7 +1362,8 @@
));
}
// 璁$畻璐у弶宸ヤ綔鏂瑰悜
- staWorkDirection = mapService.calculateAgvWorkDirectionByStation(destStaWorkDirection, lastDirection);
+// staWorkDirection = mapService.calculateAgvWorkDirectionByStation(destStaWorkDirection, lastDirection);
+ actuatorDirectionType = ActuatorDirectionType.fromVal(destSta.getActDir());
actionList.add(new Action(
null, // 缂栧彿
task.getBusId(), // 鎬荤嚎
@@ -1367,7 +1371,7 @@
null, // 鍔ㄤ綔鍙�
null, // 浼樺厛绾�
ActionTypeType.ReadyReleaseToConveyorSta.desc, // 鍚嶇О
- staWorkDirection, // 灞炴�у��
+ (double) actuatorDirectionType.val, // 灞炴�у��
lastCode.getData(), // 鍦伴潰鐮�
JSON.toJSONString(new HeightDepthDto(destSta.getHeight(), Optional.ofNullable(destSta.getDepth()).orElse((double) 0))), // 鍔ㄤ綔鍙傛暟
ActionTypeType.ReadyReleaseToConveyorSta.val(), // 鍔ㄤ綔绫诲瀷
--
Gitblit v1.9.1