From 2a2959c042dc2d03360891de19b96c2cbd755cc1 Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期五, 26 九月 2025 13:25:07 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 23 +++++++++++++++++------ 1 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java index 1a31154..5d1602d 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -746,14 +746,21 @@ if (shuttleProtocol.getCurrentLocNo().equals(liftSta.getLocNo())) { //灏忚溅杩樺湪杈撻�佺珯鐐� - //鑾峰彇灏忚溅寰呮満浣� - String standbyLocNo = Utils.getShuttleStandbyLocNo(liftSta.getLocNo()); - if (standbyLocNo == null) { - News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛岃幏鍙栧皬杞﹀緟鏈轰綅澶辫触", wrkMast.getWrkNo()); + //灏忚溅鍑烘彁鍗囨満杩戠偣璺濈 + int shuttleOutLiftLocationDistance = 2; + Config shuttleOutLiftLocationDistanceConfig = configService.selectOne(new EntityWrapper<Config>().eq("code", "shuttleOutLiftLocationDistance")); + if (shuttleOutLiftLocationDistanceConfig != null) { + shuttleOutLiftLocationDistance = Integer.parseInt(shuttleOutLiftLocationDistanceConfig.getValue()); + } + + String targetLocNo = navigateUtils.calcFirstLocation(shuttleProtocol.getCurrentLocNo(), wrkMast.getSourceLocNo(), NavigationMapType.getMapTypes(NavigationMapType.NORMAL), null, null, shuttleOutLiftLocationDistance); + if (targetLocNo == null) {//鍑鸿緭閫佺嚎绔欑偣璁$畻澶辫触 + News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛寋}灏忚溅锛屽嚭杈撻�佺嚎绔欑偣璁$畻澶辫触", wrkMast.getWrkNo(), shuttleProtocol.getShuttleNo()); return false; } + //璋冨害灏忚溅鍘诲緟鏈轰綅 - boolean dispatchShuttle = shuttleDispatchUtils.dispatchShuttle(wrkMast.getWrkNo(), standbyLocNo, wrkMast.getShuttleNo()); + boolean dispatchShuttle = shuttleDispatchUtils.dispatchShuttle(wrkMast.getWrkNo(), targetLocNo, wrkMast.getShuttleNo()); if (!dispatchShuttle) { News.taskInfo(wrkMast.getWrkNo(), "{}浠诲姟锛屽皬杞﹀湪杈撻�佺珯鐐硅皟搴﹀皬杞﹂伩璁╁け璐�", wrkMast.getWrkNo()); return false; @@ -818,7 +825,7 @@ } //鑾峰彇鎻愬崌鏈哄懡浠� - LiftCommand liftCommand = liftThread.getPickAndPutCommand(wrkMast.getWrkNo(), liftSta.getLev(), wrkMast.getStaNo()); + LiftCommand liftCommand = liftThread.getPickAndPutCommand(wrkMast.getWrkNo(), liftSta.getSiteId(), wrkMast.getStaNo()); ArrayList<LiftCommand> commands = new ArrayList<>(); commands.add(liftCommand); @@ -860,6 +867,10 @@ continue; } + if (!liftThread.isDeviceIdle()) { + continue; + } + //鎻愬崌鏈轰负绛夊緟纭涓旂┖闂� if (liftProtocol.getProtocolStatus() == LiftProtocolStatusType.WAITING.id && liftProtocol.getTaskNo() != 0 -- Gitblit v1.9.1