From 5a2ec88cf71194456a371efda15f3cab5f6225ae Mon Sep 17 00:00:00 2001 From: zjj <3272660260@qq.com> Date: 星期四, 20 六月 2024 20:48:41 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java | 49 +++++++++++++++++++++++++++++++++++++------------ 1 files changed, 37 insertions(+), 12 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java index 97c5acf..9a7d6ab 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/rcs/thread/impl/SurayLiftThread.java @@ -12,6 +12,7 @@ import com.zy.asrs.wcs.core.entity.BasLift; import com.zy.asrs.wcs.core.model.command.LiftCommand; import com.zy.asrs.wcs.core.model.enums.LiftCommandModeType; +import com.zy.asrs.wcs.core.model.enums.MotionCtgType; import com.zy.asrs.wcs.core.service.BasLiftService; import com.zy.asrs.wcs.rcs.News; import com.zy.asrs.wcs.rcs.cache.OutputQueue; @@ -27,10 +28,7 @@ import java.text.MessageFormat; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.List; +import java.util.*; @Slf4j @SuppressWarnings("all") @@ -101,7 +99,7 @@ //鏈夋墭鐩� liftProtocol.setHasTray(data.getString("haveCargo").equals("Y")); //鏈夊皬杞� - liftProtocol.setHasCar(data.getString("haveCar").equals("Y")); + liftProtocol.setHasCar(data.getInteger("haveCar") == 1); //鏁呴殰鐮� liftProtocol.setErrorCode("0"); //灞� @@ -362,23 +360,50 @@ } @Override - public boolean isIdle(ExecuteSupport support) { - if (null != support) { - if (!support.judgement()) { - return false; + public boolean isIdle(MotionCtgType flag) { + if (flag == null) { + InnerLiftExtend extend = (InnerLiftExtend) this.liftProtocol.getExtend();//鑾峰彇鎵╁睍瀛楁 + // 鍒ゆ柇鎻愬崌鏈烘槸鍚﹁嚜鍔ㄣ�佸氨缁�佺┖闂层�佹湭閿佸畾 + if (this.liftProtocol.getModel() + && !this.liftProtocol.getRun() + && this.liftProtocol.getPakMk() + && this.liftProtocol.getReady() + && this.liftProtocol.getErrorCode().equals("0") + && (this.liftProtocol.getProtocolStatusType().equals(LiftProtocolStatusType.IDLE) + || this.liftProtocol.getProtocolStatusType().equals(LiftProtocolStatusType.WAITING)) + && !extend.getLock() + ) { + return true; } + return false; } + + switch (Objects.requireNonNull(MotionCtgType.get(String.valueOf(flag)))){ + case SHUTTLE_MOVE_FROM_LIFT://绌挎杞﹀嚭鎻愬崌鏈� + case SHUTTLE_MOVE_TO_LIFT://绌挎杞﹁繘鎻愬崌鏈� + return isIdleShuttleMoveToLift(); + } + + return false; + } + + //绌挎杞﹁繘鎻愬崌鏈烘椂-鎻愬崌鏈虹姸鎬佸垽鏂� + private boolean isIdleShuttleMoveToLift() { InnerLiftExtend extend = (InnerLiftExtend) this.liftProtocol.getExtend();//鑾峰彇鎵╁睍瀛楁 - // 鍒ゆ柇鎻愬崌鏈烘槸鍚﹁嚜鍔ㄣ�佸氨缁�佺┖闂层�佹湭閿佸畾 + // 鍒ゆ柇鎻愬崌鏈烘槸鍚﹁嚜鍔ㄣ�佸氨缁�佺┖闂� if (this.liftProtocol.getModel() && !this.liftProtocol.getRun() && this.liftProtocol.getPakMk() - && this.liftProtocol.getReady() && this.liftProtocol.getErrorCode().equals("0") && (this.liftProtocol.getProtocolStatusType().equals(LiftProtocolStatusType.IDLE) || this.liftProtocol.getProtocolStatusType().equals(LiftProtocolStatusType.WAITING)) - && !extend.getLock() ) { + if (!extend.getLock()) { + //鎻愬崌鏈烘湭閿佸畾锛岄渶瑕佸垽鏂槸鍚﹀氨缁� + if (!this.liftProtocol.getReady()) { + return false; + } + } return true; } return false; -- Gitblit v1.9.1