From 0b83448133a1af459273318bc5b0c2a4bc6e0448 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期六, 08 四月 2023 17:09:14 +0800 Subject: [PATCH] 四向穿梭车逻辑优化 --- src/main/java/com/zy/core/model/protocol/LiftProtocol.java | 76 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 76 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/zy/core/model/protocol/LiftProtocol.java b/src/main/java/com/zy/core/model/protocol/LiftProtocol.java index cd00e23..45b65ed 100644 --- a/src/main/java/com/zy/core/model/protocol/LiftProtocol.java +++ b/src/main/java/com/zy/core/model/protocol/LiftProtocol.java @@ -1,5 +1,13 @@ package com.zy.core.model.protocol; +import com.core.common.SpringUtils; +import com.zy.asrs.service.BasShuttleService; +import com.zy.core.News; +import com.zy.core.enums.LiftProtocolStatusType; +import com.zy.core.enums.ShuttleErrorCodeType; +import com.zy.core.enums.ShuttleProtocolStatusType; +import com.zy.core.enums.ShuttleStatusType; +import com.zy.core.model.command.LiftAssignCommand; import lombok.Data; import lombok.extern.slf4j.Slf4j; @@ -19,6 +27,21 @@ * 浠诲姟鍙� */ private Short taskNo = 0; + + /** + * 鍥涘悜绌挎杞﹀彿 + */ + private Short shuttleNo = 0; + + /** + * 褰撳墠鎻愬崌鏈虹姸鎬侊紙鍐呴儴鑷垜缁存姢锛� + */ + private Integer protocolStatus = 1; + + /** + * 褰撳墠鎻愬崌鏈虹姸鎬佹灇涓� + */ + private LiftProtocolStatusType protocolStatusType = LiftProtocolStatusType.IDLE; /** * 灞� @@ -161,8 +184,61 @@ */ private Short liftActualSpeed; + /** + * 浣滀笟鏍囪 + */ + private Boolean pakMk = true; + + /** + * 浠诲姟鍛戒护 + */ + private LiftAssignCommand assignCommand; + public Short getLiftLockShortValue() { return liftLock ? (short) 1 : (short) 0; } + /** + * 璁剧疆鎻愬崌鏈虹姸鎬� + */ + public void setProtocolStatus(Integer status) { + this.protocolStatus = status; + this.protocolStatusType = LiftProtocolStatusType.get(status); + } + + /** + * 璁剧疆鎻愬崌鏈虹姸鎬� + */ + public void setProtocolStatus(LiftProtocolStatusType status) { + this.protocolStatus = status.id; + this.protocolStatusType = status; + } + + // 鏄惁澶勪簬绌洪棽寰呭懡鐘舵�� + public Boolean isIdle() { + if(this.taskNo == null + || this.liftLock == null + || this.ready == null + || this.running == null + || this.mode == null + || this.pakMk == null + ){ + return false; + } + + boolean res = this.taskNo == 0 + && !this.liftLock + && this.ready + && !this.running + && this.mode + && this.pakMk.equals(true) + ; + return res; + } + + public void setPositionArrivalFeedback(Short position) { + this.lev = position;//灞傞珮 + this.positionArrivalFeedback = position;//浣嶇疆鍒拌揪鍙嶉 + } + } -- Gitblit v1.9.1