From 4ec87f4d9d873487adda85686a1bfd7fa620f857 Mon Sep 17 00:00:00 2001 From: zhangc <zc@123> Date: 星期六, 12 四月 2025 08:41:31 +0800 Subject: [PATCH] 1 --- src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 109 +++++++++++++++++++++++++++++++----------------------- 1 files changed, 63 insertions(+), 46 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 8d1b18c..1c9de47 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -21,7 +21,10 @@ import com.zy.core.cache.SlaveConnection; import com.zy.core.dispatcher.ShuttleDispatchUtils; import com.zy.core.enums.*; -import com.zy.core.model.*; +import com.zy.core.model.DevpSlave; +import com.zy.core.model.LiftSlave; +import com.zy.core.model.ShuttleSlave; +import com.zy.core.model.Task; import com.zy.core.model.command.ShuttleAssignCommand; import com.zy.core.model.command.ShuttleCommand; import com.zy.core.model.protocol.*; @@ -84,9 +87,10 @@ private TransportLiftOutServiceImpl transportLiftOutService; @Autowired private ShuttleMoveServiceImpl shuttleMoveService; - private LiftAction liftAction; @Autowired private NoLiftInServiceImpl noLiftInService; + @Autowired + private NoLiftOutServiceImpl noLiftOutService; private boolean isInEnable(DevpThread devpThread, Integer staNo) { @@ -782,27 +786,54 @@ wrkMast.setWrkSts(WrkStsType.CHARGE_SHUTTLE_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.MOVE_IN_NO_Lift_1.sts) { - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_2.sts); + } +// else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_LIFT_1.sts) { +// wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_2.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.MOVE_IN_NO_LIFT_3.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_4.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.MOVE_IN_NO_Lift_3.sts) { - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_4.sts); + } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_LIFT_7.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_8.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.MOVE_IN_NO_Lift_7.sts) { - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_8.sts); + } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_LIFT_11.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_12.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.MOVE_IN_NO_Lift_11.sts) { - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_12.sts); + } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_LIFT_13.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_14.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.MOVE_IN_NO_Lift_13.sts) { - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_14.sts); + } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_OUT_NO_LIFT_12.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_13.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.MOVE_OUT_NO_LIFT_10.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_11.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.MOVE_OUT_NO_LIFT_8.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_9.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.MOVE_OUT_NO_LIFT_6.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_7.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.MOVE_OUT_NO_LIFT_4.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_5.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.MOVE_OUT_NO_LIFT_2.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_3.sts); shuttleThread.setSyncTaskNo(0); notifyUtils.notify(String.valueOf(SlaveType.Shuttle), shuttleProtocol.getShuttleNo(), String.valueOf(wrkMast.getWrkNo()), wrkMast.getWmsWrkNo(), NotifyMsgType.SHUTTLE_POWER_COMPLETE);//瑙﹀彂閫氱煡 } + else { @@ -1024,12 +1055,18 @@ } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_LIFT_TO_SHUTTLE_TRANSPORT_LIFT_OUT.sts) { //鎻愬崌鏈鸿嚦灏忚溅灞� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� wrkMast.setWrkSts(WrkStsType.MOVE_LIFT_TO_SHUTTLE_COMPLETE_TRANSPORT_LIFT_OUT.sts); - }else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_Lift_5.sts) { + } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_LIFT_5.sts) { //鎻愬崌鏈鸿嚦灏忚溅灞� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_6.sts); - }else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_Lift_9.sts) { + wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_6.sts); + } else if (wrkMast.getWrkSts() == WrkStsType.MOVE_IN_NO_LIFT_9.sts) { //鎻愬崌鏈鸿嚦灏忚溅灞� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� - wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_Lift_10.sts); + wrkMast.setWrkSts(WrkStsType.MOVE_IN_NO_LIFT_10.sts); + }else if (wrkMast.getWrkSts() == WrkStsType.MOVE_OUT_NO_LIFT_8.sts) { + //鎻愬崌鏈鸿嚦灏忚溅灞� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_9.sts); + }else if (wrkMast.getWrkSts() == WrkStsType.MOVE_OUT_NO_LIFT_4.sts) { + //鎻愬崌鏈鸿嚦灏忚溅灞� ==> 鎻愬崌鏈鸿嚦灏忚溅灞傚畬鎴� + wrkMast.setWrkSts(WrkStsType.MOVE_OUT_NO_LIFT_5.sts); } wrkMast.setModiTime(new Date()); @@ -1532,7 +1569,7 @@ if ("TRANSPORT_LIFT".equals(wrkMast.getMk())) { this.shuttleMoveExecuteTransportLift(wrkMast); } else if ("TRANSPORT_DEVP".equals(wrkMast.getMk())) { - noLiftInService.shuttleMoveExecute(wrkMast); + this.shuttleMoveExecuteTransportNoLift(wrkMast); } else { shuttleMoveService.shuttleMoveExecuteMove(wrkMast); } @@ -1541,34 +1578,6 @@ e.printStackTrace(); } } - - private void shuttleMoveExecuteMove(WrkMast wrkMast) { - boolean stepMoveSta = this.shuttleMoveExecuteStepMoveSta(wrkMast);//灏忚溅绉诲姩鍒扮珯鐐� - if (!stepMoveSta) { - return; - } - - boolean stepIntoLift = this.shuttleMoveExecuteStepIntoLift(wrkMast);//灏忚溅杩佸叆鎻愬崌鏈� - if (!stepIntoLift) { - return; - } - - boolean stepLiftMove = this.shuttleMoveExecuteStepLiftMove(wrkMast);//鎻愬崌鏈烘惉杩愪腑 - if (!stepLiftMove) { - return; - } - - boolean updateShuttleLocation = this.shuttleMoveExecuteStepUpdateShuttleLocation(wrkMast);//鎻愬崌鏈烘惉杩愬畬鎴愭洿鏂板皬杞﹀潗鏍� - if (!updateShuttleLocation) { - return; - } - - boolean stepMoveLoc = this.shuttleMoveExecuteStepMoveLoc(wrkMast);//灏忚溅绉诲姩鍒扮洰鏍囧簱浣嶄腑 - if (!stepMoveLoc) { - return; - } - } - private void shuttleMoveExecuteTransportLift(WrkMast wrkMast) { LiftThread liftThread = LiftUtils.getRecentLift(wrkMast.getLocNo()); @@ -1586,7 +1595,15 @@ } } - + private void shuttleMoveExecuteTransportNoLift(WrkMast wrkMast) { + if (12 == Utils.getRow(wrkMast.getSourceLocNo()) && 3 == Utils.getBay(wrkMast.getSourceLocNo())) { + //鍏ュ簱 + noLiftInService.shuttleMoveExecute(wrkMast); + } else { + //鍑哄簱 + noLiftOutService.shuttleMoveExecute(wrkMast); + } + } } -- Gitblit v1.9.1