From 1cc1d0c34335555f1ee6c8f2e49ee76e5af74649 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期五, 01 十一月 2024 09:33:13 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java | 19 +++++++------------ 1 files changed, 7 insertions(+), 12 deletions(-) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java index 2d218bb..3953bb6 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java @@ -243,7 +243,6 @@ String jamAgvNo = jamVehicleList.get(0); if (mapDataDispatcher.queryCodeListFromDynamicNode(null, jamAgvNo).size() > 1 && pathList.size() <= MIN_SLICE_PATH_LENGTH) { pathList.clear(); -// return pathList; } } @@ -479,35 +478,31 @@ * avoidPathList include wave node and dynamic node */ private boolean notifyVehicleAvoid(String agvNo, String agvPosCode, List<String> avoidPathList, String sponsor, Jam jam) { - - assert avoidPathList.size() >= 2; + Agv agv = agvService.selectByUuid(agvNo); + if (!Cools.isEmpty(segmentService.getByAgvAndState(agv.getId(), SegmentStateType.RUNNING.toString()))) { + log.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝瀛樺湪杩涜涓换鍔★紒锛侊紒", agvNo); + return false; + } int[] startMapIdx = mapDataDispatcher.getCodeMatrixIdx(null, agvPosCode); - RetreatNavigateNode startNode = new RetreatNavigateNode(startMapIdx[0], startMapIdx[1], agvPosCode); + assert avoidPathList.size() >= 2; RetreatNavigateNode finalNode = retreatNavigateService.execute(agvNo, startNode, avoidPathList, sponsor, jam); if (null == finalNode) { log.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝妫�绱㈤伩璁╃偣澶辫触锛侊紒锛�", agvNo); return false; } - Date now = new Date(); String endCodeData = finalNode.getCodeData(); - Agv agv = agvService.selectByUuid(agvNo); Code endCode = codeService.selectByData(endCodeData); - jam.setAvoCode(endCode.getId()); - - if (!Cools.isEmpty(segmentService.getByAgvAndState(agv.getId(), SegmentStateType.RUNNING.toString()))) { - log.warn("{}鍙疯溅杈嗛伩璁╁け璐ワ紝瀛樺湪杩涜涓换鍔★紒锛侊紒", agvNo); - return false; - } List<Segment> waitingSegList = segmentService.getByAgvAndState(agv.getId(), SegmentStateType.WAITING.toString()); if (!Cools.isEmpty(waitingSegList)) { // revert + Date now = new Date(); for (Segment seg : waitingSegList) { seg.setState(SegmentStateType.INIT.toString()); seg.setUpdateTime(now); -- Gitblit v1.9.1