From efbd157c0d810c39d04cd86752e769a3f3a1a1fc Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期四, 11 九月 2025 16:57:03 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/ShuttleTaskUtils.java | 19 +++++++++++++++---- 1 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/ShuttleTaskUtils.java b/src/main/java/com/zy/asrs/utils/ShuttleTaskUtils.java index 82b497c..695d85a 100644 --- a/src/main/java/com/zy/asrs/utils/ShuttleTaskUtils.java +++ b/src/main/java/com/zy/asrs/utils/ShuttleTaskUtils.java @@ -9,6 +9,7 @@ import com.zy.asrs.service.WrkMastService; import com.zy.common.utils.RedisUtil; import com.zy.core.News; +import com.zy.core.action.ShuttleAction; import com.zy.core.cache.SlaveConnection; import com.zy.core.enums.RedisKeyType; import com.zy.core.enums.ShuttleProtocolStatusType; @@ -33,11 +34,13 @@ private NotifyUtils notifyUtils; @Autowired private RedisUtil redisUtil; + @Autowired + private ShuttleAction shuttleAction; /** * 鍥涘悜绌挎杞︿换鍔″畬鎴� */ - public void shuttleFinished() { + public synchronized void shuttleFinished() { try { List<DeviceConfig> shuttleList = deviceConfigService.selectList(new EntityWrapper<DeviceConfig>() .eq("device_type", String.valueOf(SlaveType.Shuttle))); @@ -53,6 +56,9 @@ if (shuttleProtocol.getProtocolStatus() == ShuttleProtocolStatusType.WAITING.id //浠诲姟瀹屾垚绛夊緟纭 && shuttleProtocol.getTaskNo() != 0 ) { + //鐢宠鍙栨秷绠″埗 + shuttleAction.cancelTrafficControl(shuttleProtocol.getShuttleNo(), shuttleProtocol.getTaskNo()); + //灏嗕换鍔℃。鏍囪涓哄畬鎴� WrkMast wrkMast = wrkMastService.selectByWorkNo(shuttleProtocol.getTaskNo()); if (wrkMast != null) { @@ -84,9 +90,14 @@ wrkMast.setWrkSts(WrkStsType.COMPLETE_MOVE.sts); shuttleThread.setSyncTaskNo(0); notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_MOVE_COMPLETE);//瑙﹀彂閫氱煡 - } else if (wrkMast.getWrkSts() == WrkStsType.CHARGE_SHUTTLE_WORKING.sts) { - //204.灏忚溅鍏呯數涓� ==> 205.灏忚溅鍏呯數瀹屾垚 - wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_COMPLETE.sts); + } else if (wrkMast.getWrkSts() == WrkStsType.CHARGE_SHUTTLE_START_CHARGING.sts) { + //204.灏忚溅寮�鍚厖鐢典腑 ==> 205.灏忚溅鍏呯數涓� + wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_CHARGING.sts); + shuttleThread.setSyncTaskNo(0); + notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_POWER_COMPLETE);//瑙﹀彂閫氱煡 + } else if (wrkMast.getWrkSts() == WrkStsType.CHARGE_SHUTTLE_CHARGING.sts) { + //205.灏忚溅鍏呯數涓� ==> 206.灏忚溅鍏呯數瀹屾垚 + wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_CHARGING_COMPLETE.sts); shuttleThread.setSyncTaskNo(0); notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_POWER_COMPLETE);//瑙﹀彂閫氱煡 } else if (wrkMast.getWrkSts() == WrkStsType.LOC_MOVE_SHUTTLE_RUN.sts) { -- Gitblit v1.9.1