From bd0d3a69bc5a38c11af4aa7222806bacdea97318 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期三, 13 十二月 2023 09:05:11 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java | 77 +++++++++++++++++++++++++++++--------- 1 files changed, 58 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java b/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java index ed473bd..bcbc38e 100644 --- a/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java +++ b/src/main/java/com/zy/core/model/protocol/ShuttleProtocol.java @@ -1,8 +1,11 @@ package com.zy.core.model.protocol; import com.core.common.SpringUtils; +import com.zy.asrs.entity.BasDevp; +import com.zy.asrs.entity.BasShuttle; import com.zy.asrs.entity.BasShuttleErr; import com.zy.asrs.entity.LocMast; +import com.zy.asrs.service.BasDevpService; import com.zy.asrs.service.BasShuttleErrService; import com.zy.asrs.service.BasShuttleService; import com.zy.asrs.service.LocMastService; @@ -40,12 +43,6 @@ * 褰撳墠灏忚溅鐘舵�侊紙鍐呴儴鑷垜缁存姢锛� */ private Integer protocolStatus; - -// /** -// * 灏忚溅褰撳墠鏄惁鏈夎揣 -// * true:鏈夎揣锛宖alse锛氭棤璐� -// */ -// private Boolean loading = false; /** * 褰撳墠灏忚溅鐘舵�佹灇涓� @@ -88,7 +85,7 @@ /** * 鐢垫睜娓╁害 */ - private Short batteryTemp; + private Integer batteryTemp; /** * 閿欒缂栧彿 @@ -131,7 +128,7 @@ private Short statusErrorCode; /** - * PLC杈撳叆鐘舵�� + * PLC杈撳叆鐘舵�侊紝鐩墠鍙湁涓�涓姸鎬佹湁鏁堟灉锛屾墭鐩橀浄杈�1鏈夎揣锛�0鏃犺揣 */ private Short plcInputStatus; @@ -153,7 +150,7 @@ /** * 褰撳墠鐨勭數鍘嬪�� */ - private Short currentVoltage; + private Integer currentVoltage; /** * 褰撳墠鐨勬ā鎷熼噺鍊� @@ -187,7 +184,7 @@ public void setBusyStatus(Short status) { this.busyStatus = status; - this.busyStatusType = ShuttleStatusType.get(status); + this.busyStatusType = ShuttleStatusType.get(status.intValue()); } public void setBusyStatus(ShuttleStatusType type) { @@ -243,6 +240,7 @@ && this.pakMk.equals(true) && this.errorCodeType.equals(ShuttleErrorCodeType.NORMAL) && this.taskNo == 0 + && this.protocolStatus.intValue() == ShuttleProtocolStatusType.IDLE.id ; if (!res) { return res; @@ -250,7 +248,10 @@ // 鐢甸噺 try { Integer chargeLine = SpringUtils.getBean(BasShuttleService.class).selectById(this.shuttleNo).getChargeLine(); - return this.getBatteryPower$() > chargeLine; + if (chargeLine == null) { + return false; + } + return this.getBatteryPower$() >= chargeLine; } catch (Exception e) { News.error("fail", e); return false; @@ -263,7 +264,8 @@ boolean res = this.busyStatusType.equals(ShuttleStatusType.IDLE) && this.pakMk.equals(true) && this.errorCodeType.equals(ShuttleErrorCodeType.NORMAL) - && (this.taskNo == 0 || this.taskNo == taskNo) + && (this.taskNo == 0 || this.taskNo.intValue() == taskNo.intValue()) + && this.protocolStatus.intValue() == ShuttleProtocolStatusType.IDLE.id ; if (!res) { return res; @@ -281,18 +283,35 @@ // 鏄惁婊¤冻鍏呯數鐘舵�� public Boolean isRequireCharge() { - boolean res = this.busyStatusType.equals(ShuttleStatusType.IDLE) - && this.pakMk.equals(true) - && this.errorCodeType.equals(ShuttleErrorCodeType.NORMAL) + if (this.busyStatusType == null || this.pakMk == null || this.errorCodeType == null || this.taskNo == null) { + return false; + } + + boolean res = this.busyStatusType.id.intValue() == ShuttleStatusType.IDLE.id.intValue() + && this.pakMk + && this.errorCodeType.id.intValue() == ShuttleErrorCodeType.NORMAL.id.intValue() && this.taskNo == 0 + && this.protocolStatusType.id == ShuttleProtocolStatusType.IDLE.id ; if (!res) { return res; } else { - // 鐢甸噺 + // 鐢甸噺灏忎簬闃堝�兼垨鐢靛帇灏忎簬48V锛岄渶瑕佽繘琛屽厖鐢� try { - Integer chargeLine = SpringUtils.getBean(BasShuttleService.class).selectById(this.shuttleNo).getChargeLine(); - return this.getBatteryPower$() < chargeLine; + BasShuttleService shuttleService = SpringUtils.getBean(BasShuttleService.class); + if (shuttleService == null) { + return false; + + } + BasShuttle basShuttle = shuttleService.selectById(this.shuttleNo); + if (basShuttle == null) { + return false; + } + Integer chargeLine = basShuttle.getChargeLine(); + if (chargeLine == null) { + return false; + } + return this.getBatteryPower$() < chargeLine || this.currentVoltage < 48000; } catch (Exception e) { News.error("fail", e); return false; @@ -318,9 +337,29 @@ BasShuttleErrService basShuttleErrService = SpringUtils.getBean(BasShuttleErrService.class); BasShuttleErr basShuttleErr = basShuttleErrService.queryByCode(this.statusErrorCode.intValue()); if (basShuttleErr == null) { - return null; + return this.statusErrorCode.toString(); } return basShuttleErr.getErrName(); } + public void setCurrentCode(Short currentCode) { + this.currentCode = currentCode; + LocMastService locMastService = SpringUtils.getBean(LocMastService.class); + if (locMastService != null) { + LocMast locMast = locMastService.queryByQrCode(currentCode.toString()); + if (locMast == null) { + //鏌ヤ笉鍒板簱浣嶅彿锛屾煡璇㈡槸鍚︿负绔欑偣 + BasDevpService basDevpService = SpringUtils.getBean(BasDevpService.class); + if (basDevpService != null) { + BasDevp basDevp = basDevpService.queryByLocNo(currentCode.toString()); + if (basDevp != null) { + this.locNo = basDevp.getLocNo(); + } + } + }else{ + this.locNo = locMast.getLocNo(); + } + } + } + } -- Gitblit v1.9.1