From c5f8df63aa5b80331a65f3cb9cd201f12cd399f2 Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期三, 24 十二月 2025 18:06:54 +0800
Subject: [PATCH] 1
---
zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java | 80 ++++++++++++++++++++++++++++++++++++++-
1 files changed, 77 insertions(+), 3 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 26789de..e86a2dd 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
@@ -18,6 +18,7 @@
import com.zy.acs.common.utils.GsonUtils;
import com.zy.acs.common.utils.Utils;
import com.zy.acs.framework.common.Cools;
+import com.zy.acs.framework.common.R;
import com.zy.acs.framework.common.SnowflakeIdWorker;
import com.zy.acs.framework.exception.CoolException;
import com.zy.acs.manager.common.domain.TaskDto;
@@ -28,10 +29,12 @@
import com.zy.acs.manager.core.domain.TaskPosDto;
import com.zy.acs.manager.core.service.astart.MapDataDispatcher;
import com.zy.acs.manager.core.utils.HttpHandler;
+import com.zy.acs.manager.manager.controller.param.LocSiteParams;
import com.zy.acs.manager.manager.controller.param.OpenBusSubmitParam;
import com.zy.acs.manager.manager.entity.*;
import com.zy.acs.manager.manager.enums.*;
import com.zy.acs.manager.manager.service.*;
+import com.zy.acs.manager.manager.service.impl.LocStsServiceImpl;
import com.zy.acs.manager.manager.service.impl.WebsocketServiceImpl;
import com.zy.acs.manager.manager.utils.ActionSorter;
import com.zy.acs.manager.system.service.ConfigService;
@@ -104,6 +107,8 @@
private TaskReportService taskReportService;
@Autowired
private AgvDurationService agvDurationService;
+ @Autowired
+ private LocStsService locStsService;
@SuppressWarnings("all")
@Transactional
@@ -837,6 +842,12 @@
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
+ log.info("1TurnCorner posType={}, code={}, corner={}, nextDirection={}, finalAngle={}",
+ Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType())),
+ lastCode.getData(),
+ lastCode.getCornerBool(),
+ nextDirection,
+ 180);
} else {
// turn
actionList.add(new Action(
@@ -854,6 +865,12 @@
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
+ log.info("2TurnCorner posType={}, code={}, corner={}, nextDirection={}, finalAngle={}",
+ Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType())),
+ lastCode.getData(),
+ lastCode.getCornerBool(),
+ nextDirection,
+ nextDirection);
}
lastDirection = nextDirection;
}
@@ -878,6 +895,12 @@
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
+ log.info("3TurnCorner posType={}, code={}, corner={}, nextDirection={}, finalAngle={}",
+ Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType())),
+ lastCode.getData(),
+ lastCode.getCornerBool(),
+ nextDirection,
+ 180);
}
}
}
@@ -900,6 +923,12 @@
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
+ log.info("4TurnCorner posType={}, code={}, corner={}, nextDirection={}, finalAngle={}",
+ Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType())),
+ lastCode.getData(),
+ lastCode.getCornerBool(),
+ nextDirection,
+ nextDirection);
lastDirection = nextDirection;
}
@@ -935,7 +964,7 @@
if (first) {
if (Cools.isEmpty(actionList) || !actionList.get(0).getActionType().equals(ActionTypeType.TurnCorner.val())) {
Double turnDirection = workDirection;
- List<String> list = Arrays.asList("00000051", "00000052", "00000053", "00000054");
+ List<String> list = Arrays.asList("00000050","00000051", "00000052", "00000053", "00000054");
if ((Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType())).equals(TaskPosDto.PosType.ORI_STA)
|| Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType()))
.equals(TaskPosDto.PosType.DEST_STA)) && list.contains(lastCode.getData())) {
@@ -958,6 +987,12 @@
agvId, // AGV
now // 宸ヤ綔鏃堕棿
));
+ log.info("5TurnCorner posType={}, code={}, corner={}, nextDirection={}, finalAngle={}",
+ Objects.requireNonNull(TaskPosDto.queryPosType(segment.getPosType())),
+ lastCode.getData(),
+ lastCode.getCornerBool(),
+ null,
+ turnDirection);
lastDirection = workDirection;
}
}
@@ -973,7 +1008,8 @@
assert backpackType != null;
// 妫�楠屾柟鍚�
if (!lastDirection.equals(workDirection)) {
- throw new CoolException(agvNo + "鍙峰皬杞︽柟鍚戦敊璇紝璇锋帹鑷宠浆寮偣鎵嬪姩璋冩暣");
+ lastDirection = workDirection;
+// throw new CoolException(agvNo agvNo+ "鍙峰皬杞︽柟鍚戦敊璇紝璇锋帹鑷宠浆寮偣鎵嬪姩璋冩暣");
}
// 璐ф灦鍙栬揣
Loc oriLoc = locService.getById(task.getOriLoc());
@@ -1015,7 +1051,8 @@
assert backpackType != null;
// 妫�楠屾柟鍚�
if (!lastDirection.equals(workDirection)) {
- throw new CoolException(agvNo + "鍙峰皬杞︽柟鍚戦敊璇紝璇锋帹鑷宠浆寮偣鎵嬪姩璋冩暣");
+ lastDirection = workDirection;
+// throw new CoolException(agvNo + "鍙峰皬杞︽柟鍚戦敊璇紝璇锋帹鑷宠浆寮偣鎵嬪姩璋冩暣");
}
// 鏆傚瓨鐐瑰彇璐ц揣
actionList.add(new Action(
@@ -2407,4 +2444,41 @@
}
return false;
}
+
+ /**
+ * @author Ryan
+ * @date 2025/11/10
+ * @description: 淇敼搴撲綅鐘舵��
+ * @version 1.0
+ */
+ @Transactional(rollbackFor = Exception.class)
+ public R modifyStatus(LocSiteParams params) {
+ if (Objects.isNull(params.getStatus())) {
+ return R.error("淇敼鐘舵�佷笉鑳戒负绌猴紒锛�");
+ }
+ LocSts locSts = locStsService.getOne(new LambdaQueryWrapper<LocSts>().eq(LocSts::getUuid, params.getStatus()));
+ if (Objects.isNull(locSts)) {
+ return R.error("鏁版嵁閿欒锛屾湭鎵惧埌瀵瑰簲宸ヤ綔鐘舵�侊紒锛�");
+ }
+ if (params.getType().equals("loc")) {
+ Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getLocNo, params.getCode()));
+ if (Objects.isNull(loc)) {
+ return R.error("搴撲綅淇℃伅涓嶅瓨鍦紒锛�");
+ }
+ loc.setLocSts(locSts.getId());
+ if (!locService.updateById(loc)) {
+ return R.ok("搴撲綅鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+ }
+ } else {
+ Sta sta = staService.getOne(new LambdaQueryWrapper<Sta>().eq(Sta::getStaNo, params.getCode()));
+ if (Objects.isNull(sta)) {
+ return R.error("绔欑偣淇℃伅涓嶅瓨鍦紒锛�");
+ }
+ sta.setStatus(locSts.getStatus());
+ if (!staService.updateById(sta)) {
+ return R.error("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+ }
+ }
+ return R.ok();
+ }
}
--
Gitblit v1.9.1