From e74add6a913a5fd6ea1de5fc62379e3f9b24b228 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@63.com> Date: 星期四, 08 十二月 2022 15:08:52 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/model/protocol/SteProtocol.java | 154 ++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 134 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/zy/core/model/protocol/SteProtocol.java b/src/main/java/com/zy/core/model/protocol/SteProtocol.java index 57efadd..dc815d7 100644 --- a/src/main/java/com/zy/core/model/protocol/SteProtocol.java +++ b/src/main/java/com/zy/core/model/protocol/SteProtocol.java @@ -1,12 +1,19 @@ package com.zy.core.model.protocol; -import com.zy.asrs.entity.BasCrnp; -import com.zy.core.enums.*; +import com.core.common.Cools; +import com.core.common.SpringUtils; +import com.zy.asrs.entity.BasSte; +import com.zy.asrs.service.BasSteService; +import com.zy.core.enums.SteHisTaskStatusType; +import com.zy.core.enums.SteLocaType; +import com.zy.core.enums.SteStatusType; import lombok.Data; +import lombok.extern.slf4j.Slf4j; /** * Created by vincent on 2020/8/7 */ +@Slf4j @Data public class SteProtocol { @@ -29,37 +36,67 @@ */ public Short status; - /** - * 鐘舵�佹灇涓� - */ public SteStatusType statusType; + + /** + * 浠诲姟鍙� + */ + public Short taskNo = 0; + + /** + * 姝e湪鎵ц浠诲姟 + */ + public Boolean execute; + + /** + * 浠诲姟瀹屾垚锛岀瓑寰匴CS纭 + */ + public Boolean waiting; + /** * 寮傚父鐮�1 */ - public Integer alarm; + public Short alarm; /** * 寮傚父鐮�2 */ - public Integer alarm0; + public Short alarm0; /** * 鐢垫睜鐢甸噺 */ - public Short charge; + public Float charge = 0.0F; + + public void setCharge(Float charge) { + if (charge >= 0) { + this.charge = charge; + } + } /** - * 鐢垫睜棣堢數 0锛屾甯革紝1棣堢數 + * 婊$數 + */ + public Boolean fullCharge; + + /** + * 浣庣數閲� + */ + public Boolean lowCharge; + + /** + * 鐢垫睜棣堢數 0锛屾瑺鐢碉紝1浣庣數 2婊$數 */ public Short feed; - /** * 褰撳墠浣嶇疆 1锛岃繎鐐癸紝2杩滅偣锛�3A鐐癸紝4B鐐� */ public Short loca; + + public SteLocaType locaType; /** * 杩戠偣璺濈 @@ -69,7 +106,7 @@ /** * 褰撳墠閫熷害 */ - public Double speed; + public Double speed = 0.0D; /** * 楂樹綆浣� 0锛屼綆浣嶏紝1楂樹綅 @@ -85,11 +122,6 @@ * 鍦ㄨ建閬撲笂 0涓嶅湪锛�1鍦� */ public Short track; - - /** - * 浠诲姟鍙� - */ - public Integer taskNo = 0; /** * 浠诲姟绫诲瀷 @@ -118,8 +150,11 @@ /** * 杩囪处鎸囦护鐘舵�� + * 0鍒濆 1鎵ц瀹屾垚 2鍒犻櫎 */ public Short hisTaskStatus; + + public SteHisTaskStatusType hisTaskStatusType; /** * 鐩樼偣鏁伴噺 @@ -156,6 +191,17 @@ */ public Short crnAllowRun; + /** + * 鍏呯數鐘舵�� 1锛氬湪鍏呯數锛�0锛氫笉鍦ㄥ厖鐢� + */ + private Short chargeStatus; + + // 鍏ュ簱鍙栫┖ + private Boolean inEmpty; + + // 鍑哄簱鍙栫┖ + private Boolean outEmpty; + public void setStatus(Short status){ this.status = status; this.statusType = SteStatusType.get(status); @@ -166,6 +212,26 @@ this.status = SteStatusType.get(type).id.shortValue(); } + public void setLoca(Short loca){ + this.loca = loca; + this.locaType = SteLocaType.get(loca); + } + + public void setLoca(SteLocaType type){ + this.locaType = type; + this.loca = SteLocaType.get(type).id.shortValue(); + } + + public void setHisTaskStatus(Short hisTaskStatus){ + this.hisTaskStatus = hisTaskStatus; + this.hisTaskStatusType = SteHisTaskStatusType.get(hisTaskStatus); + } + + public void setHisTaskStatus(SteHisTaskStatusType type){ + this.hisTaskStatusType = type; + this.hisTaskStatus = SteHisTaskStatusType.get(type).id.shortValue(); + } + /** * 鏈�杩戜竴娆″叆鍑哄簱绫诲瀷 * I:鍏ュ簱 @@ -173,12 +239,60 @@ */ private String lastIo = "I"; + private String pakMk = "-"; - public BasCrnp toSqlModel(BasCrnp basCrnp){ + public BasSte toSqlModel(BasSte basSte){ if (alarm!=null) { - basCrnp.setCrnErr(alarm.longValue()); + basSte.setSteErr(alarm.longValue()); } - basCrnp.setWrkNo(taskNo); - return basCrnp; + basSte.setWrkNo(taskNo.intValue()); +// if (basSte.getPakMk().equals("N")) { +// if (!Cools.isEmpty(row)) { +// basSte.setRow(row.intValue()); +// } +// if (!Cools.isEmpty(bay)) { +// basSte.setBay(bay.intValue()); +// } +// if (!Cools.isEmpty(lev)) { +// basSte.setLev(lev.intValue()); +// } +// } + return basSte; } + + // 鏄惁澶勪簬绌洪棽寰呭懡鐘舵�� + public Boolean isIdle() { + boolean res = this.statusType.equals(SteStatusType.IDLE) + && this.mode == 1 + && this.pakMk.equals("N") + && !isAlarm() + && this.chargeStatus == 0 + && isEnable() + ; + if (!res) { + return res; + } else { + // 鐢甸噺 + try { + String chargeLine = SpringUtils.getBean(BasSteService.class).selectById(this.steNo).getChargeLine(); + return charge > Float.parseFloat(chargeLine); + } catch (Exception e) { + log.error("fail", e); + return false; + } + } + } + + // 鏄惁澶勪簬鎶ヨ鐘舵�� + public Boolean isAlarm() { + return this.alarm > 1; + } + + public Boolean isEnable() { + if (Cools.isEmpty(row, bay, lev)) { + return false; + } + return row > 0 && bay > 0 && lev > 0; + } + } -- Gitblit v1.9.1