From 4fc00c0045dcd4cafdb5c9ea998cb2c71ea80fbe Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期一, 27 三月 2023 16:55:27 +0800 Subject: [PATCH] 四向穿梭车排列顺利问题修改、获取redis数据错误问题 --- src/main/java/com/zy/core/thread/ShuttleThread.java | 27 ++++++++++++++++++++------- 1 files changed, 20 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/zy/core/thread/ShuttleThread.java b/src/main/java/com/zy/core/thread/ShuttleThread.java index ffc4717..e91d81a 100644 --- a/src/main/java/com/zy/core/thread/ShuttleThread.java +++ b/src/main/java/com/zy/core/thread/ShuttleThread.java @@ -20,10 +20,7 @@ import com.zy.core.ThreadHandler; import com.zy.core.cache.MessageQueue; import com.zy.core.cache.OutputQueue; -import com.zy.core.enums.ShuttleRunDirection; -import com.zy.core.enums.ShuttleStatusType; -import com.zy.core.enums.ShuttleTaskModeType; -import com.zy.core.enums.SlaveType; +import com.zy.core.enums.*; import com.zy.core.model.ShuttleSlave; import com.zy.core.model.Task; import com.zy.core.model.command.ShuttleAssignCommand; @@ -121,6 +118,7 @@ if (null == shuttleProtocol) { shuttleProtocol = new ShuttleProtocol(); shuttleProtocol.setShuttleNo(slave.getId().shortValue()); + shuttleProtocol.setProtocolStatus(ShuttleProtocolStatusType.IDLE); } //----------璇诲彇鍥涘悜绌挎杞︾姸鎬�----------- @@ -301,6 +299,8 @@ ArrayList<ArrayList<NavigateNode>> data = NavigateUtils.getSectionPath(calc); //璺緞鏁版嵁 map.put("path", data); + //璺緞娆℃暟 + map.put("pathSize", data.size()); } //宸ヤ綔鍙� @@ -338,11 +338,11 @@ Object o1 = pathList.get(commandStep); ArrayList path = JSON.parseObject(o1.toString(), ArrayList.class); - size = path.size(); + size = Integer.parseInt(map.get("pathSize").toString()); //寮�濮嬭矾寰� JSONObject startPath = JSON.parseObject(path.get(0).toString()); //鐩爣璺緞 - JSONObject endPath = JSON.parseObject(path.get(size - 1).toString()); + JSONObject endPath = JSON.parseObject(path.get(path.size() - 1).toString()); command.setCommandWord((short) 1); command.setStartCodeNum(NavigatePositionConvert.xyToPosition(startPath.getIntValue("x"), startPath.getIntValue("y"))); @@ -374,6 +374,14 @@ command.setRunDirection((short) (assignCommand.getTaskMode() - 4)); command.setCommandEnd((short) 1); break; + case 9://鐘舵�佸浣� + command.setCommandWord((short) 0); + //璁剧疆鍥涘悜绌挎杞︿负绌洪棽鐘舵�� + shuttleProtocol.setProtocolStatus(ShuttleProtocolStatusType.IDLE); + //浠诲姟鍙锋竻闆� + shuttleProtocol.setTaskNo((short) 0); + break; + default: } command.setCommandEnd((short) 1); @@ -387,7 +395,7 @@ shuttleProtocol.setPakMk(false); //鍒ゆ柇鏁版嵁鏄惁鎵ц瀹屾垚 - if (commandStep < size) { + if (commandStep < size - 1) { //鏇存柊redis鏁版嵁 //姝ュ簭澧炲姞 commandStep++; @@ -415,6 +423,11 @@ } //鍒犻櫎redis redisUtil.del("wrk_no_" + map.get("wrk_no").toString()); + + //瀵逛富绾跨▼鎶涘嚭绛夊緟纭鐘舵�亀aiting + shuttleProtocol.setProtocolStatus(ShuttleProtocolStatusType.WAITING); + + News.info("鍥涘悜绌挎杞︿换鍔℃墽琛屽畬鎴愮瓑寰呯‘璁や腑锛岀┛姊溅鍙�={}锛屼换鍔℃暟鎹�={}", shuttleProtocol.getShuttleNo(), JSON.toJSON(command)); } } -- Gitblit v1.9.1