From b059bc632f0f14fe3d6666d8b26f1f3ffa834fb4 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期二, 18 三月 2025 09:24:49 +0800 Subject: [PATCH] #输出socket下发日志 --- src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java | 44 ++++++++++++++++++++++++++------------------ 1 files changed, 26 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java b/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java index ec4d5f3..a0e6732 100644 --- a/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java +++ b/src/main/java/com/zy/core/dispatcher/ShuttleDispatchUtils.java @@ -2,7 +2,9 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.exception.CoolException; +import com.zy.asrs.entity.BasShuttle; import com.zy.asrs.entity.WrkMast; +import com.zy.asrs.service.BasShuttleService; import com.zy.asrs.service.WrkMastService; import com.zy.asrs.utils.Utils; import com.zy.common.model.NavigateNode; @@ -45,6 +47,8 @@ private NavigateUtils navigateUtils; @Autowired private ConfigService configService; + @Autowired + private BasShuttleService basShuttleService; /** * 璋冨害杞﹁締-璋冨害鎸囧畾绌挎杞� @@ -57,18 +61,6 @@ * 璋冨害杞﹁締 */ public boolean dispatchShuttle(Integer wrkNo, String locNo) { - //妫�娴嬬洰鏍囧簱浣嶇粍鏄惁瀛樺湪灏忚溅锛屽瀛樺湪灏忚溅鍒欑洿鎺ユ寚瀹氳杞� - WrkMast wrkMast = wrkMastService.selectByWorkNo(wrkNo); - if (wrkMast != null) { - String targetLocNo = wrkMast.getIoType() < 100 ? wrkMast.getLocNo() : wrkMast.getSourceLocNo(); - List<String> groupLoc = Utils.getGroupLoc(targetLocNo); - Integer groupShuttleNo = Utils.checkGroupLocHasShuttle(groupLoc); - if (groupShuttleNo != null) { - //瀛樺湪灏忚溅锛岀洿鎺ヨ皟搴﹁杞� - return shuttleMoveGenerate(wrkNo, locNo, groupShuttleNo); - } - } - ArrayList<ShuttleThread> sameLev = new ArrayList<>();//鐩稿悓妤煎眰鐨勭┛姊溅 ArrayList<ShuttleThread> diffLev = new ArrayList<>();//涓嶅悓妤煎眰鐨勭┛姊溅 @@ -86,6 +78,13 @@ if (!shuttleThread.isIdle()) { continue;//灏忚溅蹇欑涓� + } + + BasShuttle basShuttle = basShuttleService.selectOne(new EntityWrapper<BasShuttle>().eq("shuttle_no", shuttle.getId())); + if (basShuttle != null) { + if (basShuttle.getStatus() == 0) { + continue;//灏忚溅琚鐢� + } } int currentLev = Utils.getLev(shuttleProtocol.getCurrentLocNo());//灏忚溅褰撳墠灞傞珮 @@ -226,11 +225,21 @@ return false; } + //鑾峰彇涓诲伐浣滄。淇℃伅 + WrkMast mainWrkMast = wrkMastService.selectByWorkNo(wrkNo); + //鍒ゆ柇鏄惁鏈夊叾浠栦换鍔℃鍦ㄤ娇鐢ㄧ┛姊溅 WrkMast wrkMast2 = wrkMastService.selectShuttleWorking(shuttleNo); if (wrkMast2 != null) {//灏忚溅瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍚庡啀鐢熸垚鏂扮殑浠诲姟 - News.info("{}鍙峰皬杞︼紝瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍐嶇敓鎴愭柊鐨勪换鍔�", shuttleNo); - return false; + if (mainWrkMast == null) { + News.info("{}鍙峰皬杞︼紝瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍐嶇敓鎴愭柊鐨勪换鍔�", shuttleNo); + return false; + }else { + if (!mainWrkMast.getShuttleNo().equals(shuttleNo)) { + News.info("{}鍙峰皬杞︼紝瀛樺湪鍏朵粬宸ヤ綔妗d换鍔★紝绛夊緟鎵ц瀹屾垚鍐嶇敓鎴愭柊鐨勪换鍔�", shuttleNo); + return false; + } + } } Integer sourceStaNo = null;//灏忚溅鎹㈠眰婧愮珯鐐� @@ -277,10 +286,9 @@ } //缁欏伐浣滄。缁戝畾灏忚溅鍙� - WrkMast wrkMast1 = wrkMastService.selectByWorkNo(wrkNo); - if (wrkMast1 != null) { - wrkMast1.setShuttleNo(shuttleNo); - wrkMastService.updateById(wrkMast1); + if (mainWrkMast != null) { + mainWrkMast.setShuttleNo(shuttleNo); + wrkMastService.updateById(mainWrkMast); } return true; -- Gitblit v1.9.1