From a18ed78675d0f7745ed1ebe519bfe0aa64c97dfe Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期三, 20 九月 2023 15:02:32 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/LiftThread.java | 13 ++++++ src/main/java/com/zy/common/utils/NyLiftUtils.java | 13 ++++++ src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 5 ++ src/main/java/com/zy/asrs/entity/BasLiftOpt.java | 9 ---- src/main/java/com/zy/core/enums/NyLiftTaskModelType.java | 3 + src/main/java/com/zy/asrs/controller/LiftController.java | 34 ++++++++++++++--- src/main/webapp/views/lift.html | 2 7 files changed, 62 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/LiftController.java b/src/main/java/com/zy/asrs/controller/LiftController.java index 0104c32..244cb3c 100644 --- a/src/main/java/com/zy/asrs/controller/LiftController.java +++ b/src/main/java/com/zy/asrs/controller/LiftController.java @@ -234,14 +234,14 @@ //绉诲姩鎵樼洏 int workNo = commonService.getWorkNo(3);//鑾峰彇浠诲姟鍙� - LiftStaProtocol sourceLiftSta = NyLiftUtils.getLiftStaByStaNo(param.getSourceStaNo()); - LiftStaProtocol liftSta = NyLiftUtils.getLiftStaByStaNo(param.getStaNo()); - if (sourceLiftSta == null || liftSta == null) { - throw new CoolException("婧愮珯鎴栫洰鏍囩珯涓嶅瓨鍦�"); - } +// LiftStaProtocol sourceLiftSta = NyLiftUtils.getLiftStaByStaNo(param.getSourceStaNo()); +// LiftStaProtocol liftSta = NyLiftUtils.getLiftStaByStaNo(param.getStaNo()); +// if (sourceLiftSta == null || liftSta == null) { +// throw new CoolException("婧愮珯鎴栫洰鏍囩珯涓嶅瓨鍦�"); +// } //鑾峰彇鎻愬崌鏈哄懡浠� - NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_TRAY.id, sourceLiftSta.getStaNo(), liftSta.getStaNo(), workNo); + NyLiftCommand liftCommand = NyLiftUtils.getLiftCommand(liftProtocol.getLiftNo().intValue(), NyLiftTaskModelType.MOVE_TRAY.id, param.getSourceStaNo(), param.getStaNo(), workNo); ArrayList<NyLiftCommand> commands = new ArrayList<>(); commands.add(liftCommand); @@ -258,6 +258,28 @@ } else { throw new CoolException("鍛戒护涓嬪彂澶辫触"); } + } else if (param.getLiftTaskMode() == 0) { + //鎻愬崌鏈哄浣� + int workNo = commonService.getWorkNo(3);//鑾峰彇浠诲姟鍙� + + //鑾峰彇鎻愬崌鏈哄懡浠� + NyLiftCommand liftCommand = NyLiftUtils.getLiftResetCommand(liftProtocol.getLiftNo().intValue()); + ArrayList<NyLiftCommand> commands = new ArrayList<>(); + commands.add(liftCommand); + + //鎻愪氦鍒扮嚎绋嬪幓宸ヤ綔 + LiftAssignCommand assignCommand = new LiftAssignCommand(); + assignCommand.setCommands(commands); + assignCommand.setLiftNo(liftProtocol.getLiftNo()); + assignCommand.setTaskNo((short) workNo); + assignCommand.setAuto(false);//鎵嬪姩妯″紡 + assignCommand.setTaskMode(NyLiftTaskModelType.RESET.id.shortValue()); + + if (MessageQueue.offer(SlaveType.Lift, liftSlave.getId(), new Task(3, assignCommand))) { + return R.ok(); + } else { + throw new CoolException("鍛戒护涓嬪彂澶辫触"); + } } else { throw new CoolException("鏈煡鍛戒护"); } diff --git a/src/main/java/com/zy/asrs/entity/BasLiftOpt.java b/src/main/java/com/zy/asrs/entity/BasLiftOpt.java index 4c326c3..8cda1cb 100644 --- a/src/main/java/com/zy/asrs/entity/BasLiftOpt.java +++ b/src/main/java/com/zy/asrs/entity/BasLiftOpt.java @@ -77,12 +77,6 @@ private String command; /** - * 鍛戒护 - */ - @ApiModelProperty(value= "鍛戒护鎶ユ枃(涓嬪彂)") - private String commandSend; - - /** * 绯荤粺鐘舵�� */ @ApiModelProperty(value= "绯荤粺鐘舵��") @@ -91,7 +85,7 @@ public BasLiftOpt() {} - public BasLiftOpt(Integer wrkNo, Integer liftNo, Date sendTime, Date updateTime, Long updateBy, String memo, String command, String commandSend, String systemStatus) { + public BasLiftOpt(Integer wrkNo, Integer liftNo, Date sendTime, Date updateTime, Long updateBy, String memo, String command, String systemStatus) { this.wrkNo = wrkNo; this.liftNo = liftNo; this.sendTime = sendTime; @@ -99,7 +93,6 @@ this.updateBy = updateBy; this.memo = memo; this.command = command; - this.commandSend = commandSend; this.systemStatus = systemStatus; } 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 1f2c87c..8109c27 100644 --- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java @@ -1147,6 +1147,11 @@ if (targetStaProtocol == null) { return false;//绔欑偣涓嶅瓨鍦� } + + if (targetStaProtocol.getHasTray()) { + return false;//鎻愬崌鏈虹珯鐐规湁鎵樼洏锛岀姝㈡淳鍙� + } + Integer targetSta = targetStaProtocol.getStaNo(); //鑾峰彇鎻愬崌鏈哄懡浠� diff --git a/src/main/java/com/zy/common/utils/NyLiftUtils.java b/src/main/java/com/zy/common/utils/NyLiftUtils.java index 6909cd2..cee6584 100644 --- a/src/main/java/com/zy/common/utils/NyLiftUtils.java +++ b/src/main/java/com/zy/common/utils/NyLiftUtils.java @@ -29,6 +29,19 @@ return command; } + /** + * 鑾峰彇鎻愬崌鏈哄浣嶅懡浠� + */ + public static NyLiftCommand getLiftResetCommand(Integer liftNo) { + NyLiftCommand command = new NyLiftCommand(); + command.setLiftNo(liftNo.shortValue()); + command.setTaskNo((short) 0); + command.setTaskModel((short) 0); + command.setSourceSta((short) 0); + command.setTargetSta((short) 0); + return command; + } + //鑾峰彇鎻愬崌鏈虹珯鐐� public static LiftStaProtocol getLiftStaByStaNo(Integer staNo) { SlaveProperties slaveProperties = SpringUtils.getBean(SlaveProperties.class); diff --git a/src/main/java/com/zy/core/enums/NyLiftTaskModelType.java b/src/main/java/com/zy/core/enums/NyLiftTaskModelType.java index bfa66cc..b30bce1 100644 --- a/src/main/java/com/zy/core/enums/NyLiftTaskModelType.java +++ b/src/main/java/com/zy/core/enums/NyLiftTaskModelType.java @@ -5,7 +5,8 @@ */ public enum NyLiftTaskModelType { MOVE_TRAY(1, "绉绘墭鐩�"), - MOVE_CAR(2, "绉诲皬杞�") + MOVE_CAR(2, "绉诲皬杞�"), + RESET(3, "鎻愬崌鏈哄浣�"), ; public Integer id; diff --git a/src/main/java/com/zy/core/thread/LiftThread.java b/src/main/java/com/zy/core/thread/LiftThread.java index 0c92bb3..8f3f046 100644 --- a/src/main/java/com/zy/core/thread/LiftThread.java +++ b/src/main/java/com/zy/core/thread/LiftThread.java @@ -378,7 +378,6 @@ null, null, JSON.toJSONString(command), - JSON.toJSONString(commandArr), JSON.toJSONString(liftProtocol) ); liftOptService.insert(opt); @@ -402,6 +401,18 @@ News.info("鎻愬崌鏈轰换鍔℃墽琛屼笅鍙戝畬鎴愮瓑寰呮墽琛岀粨鏉燂紝鎻愬崌鏈哄彿={}锛屼换鍔℃暟鎹�={}", command.getLiftNo(), JSON.toJSON(command)); } + if (redisCommand.getAssignCommand().getTaskMode() == NyLiftTaskModelType.RESET.id.shortValue()) { + //澶嶄綅鍛戒护 + //宸ヤ綔鍙锋竻闆� + liftProtocol.setTaskNo((short) 0); + //浠ょ墝娓呴浂 + liftProtocol.setToken(0); + //璁剧疆鎻愬崌鏈轰负绌洪棽鐘舵�� + liftProtocol.setProtocolStatus(LiftProtocolStatusType.IDLE); + //浠诲姟鎸囦护娓呴浂 + liftProtocol.setAssignCommand(null); + } + return true; } diff --git a/src/main/webapp/views/lift.html b/src/main/webapp/views/lift.html index ab7d7e0..29fdfe0 100644 --- a/src/main/webapp/views/lift.html +++ b/src/main/webapp/views/lift.html @@ -114,7 +114,7 @@ <label><input id="staNo" type="text" name="staNo" /></label> </div> <button class="item" onclick="liftOperator(2)">绉诲姩鎵樼洏</button> -<!-- <button class="item" onclick="liftOperator(0)">澶嶄綅</button>--> + <button class="item" onclick="liftOperator(0)">澶嶄綅</button> </div> </fieldset> </div> -- Gitblit v1.9.1