From 05f2733c4cdc4ea0765e08d61273728aebb70d16 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期二, 18 三月 2025 15:51:46 +0800 Subject: [PATCH] # --- src/main/java/com/zy/core/thread/impl/NyShuttleThread.java | 54 ++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 42 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java b/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java index 52f5643..d7dfba6 100644 --- a/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java +++ b/src/main/java/com/zy/core/thread/impl/NyShuttleThread.java @@ -120,6 +120,9 @@ // //灏忚溅绌洪棽涓旀湁璺戝簱绋嬪簭 // shuttleAction.moveLoc(slave.getId()); + //婕旂ず妯″紡 + shuttleAction.demo(slave.getId()); + Thread.sleep(200); } catch (Exception e) { e.printStackTrace(); @@ -200,7 +203,7 @@ } } - public JSONObject getRequestBody(String type) { + public JSONObject getRequestBody(String type, String taskId) { try { // 鑾峰彇鏈嶅姟鍣ㄥ搷搴� JSONObject result = null; @@ -223,7 +226,14 @@ } if (!responseType.equals(type)) { - continue;//鍝嶅簲ID涓庤姹侷D涓嶄竴鑷达紝涓嶅湪璋冭瘯妯″紡涓� + continue;//鍝嶅簲绫诲瀷涓庤姹傜被鍨嬩笉涓�鑷达紝涓嶅湪璋冭瘯妯″紡涓� + } + + if (taskId != null) { + String responseTaskId = resultBody.get("taskId").toString(); + if (!responseTaskId.equals(taskId)) { + continue;//鍝嶅簲ID涓庤姹侷D涓嶄竴鑷达紝涓嶅湪璋冭瘯妯″紡涓� + } } result = socketResult; @@ -455,13 +465,17 @@ } for (NyShuttleHttpCommand requestCommand : commandList) { - JSONObject result = requestCommand(requestCommand); - if (result == null) { - return response;//璇锋眰澶辫触 + while (true) { + JSONObject result = requestCommand(requestCommand); + if (result == null) { +// return response;//璇锋眰澶辫触 + continue;//璇锋眰澶辫触灏濊瘯閲嶆柊璇锋眰 + } + this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿 + response.setMessage(JSON.toJSONString(result)); + response.setResult(true); + break; } - this.shuttleProtocol.setSendTime(System.currentTimeMillis());//鎸囦护涓嬪彂鏃堕棿 - response.setMessage(JSON.toJSONString(result)); - response.setResult(true); } return response; } catch (Exception e) { @@ -804,6 +818,19 @@ } @Override + public boolean enableDemo(boolean enable) { + shuttleProtocol.setDemo(enable); + return true; + } + + @Override + public boolean offerSystemMsg(String format, Object... arguments) { + String msg = News.replace(format, arguments); + shuttleProtocol.setSystemMsg(msg); + return true; + } + + @Override public ShuttleCommand getMoveCommand(Integer taskNo, String startCodeNum, String distCodeNum, Integer allDistance, Integer runDirection, Integer runSpeed, List<NavigateNode> nodes) { NavigateMapData navigateMapData = SpringUtils.getBean(NavigateMapData.class); NyShuttleHttpCommand httpStandard = getHttpStandard(slave.getId(), taskNo); @@ -1055,17 +1082,20 @@ // System.out.println("Sent message to server: " + JSON.toJSONString(httpCommand)); String requestType = null; + String taskId = null; try { requestType = httpCommand.getRequest().getBody().get("requestType").toString(); + taskId = httpCommand.getRequest().getBody().get("taskId").toString(); } catch (Exception e) { - return null; +// return null; + //taskId鍙兘鍙栫┖锛屼笉鎶ラ敊锛屾甯告儏鍐� } // 鑾峰彇鏈嶅姟鍣ㄥ搷搴� - // 灏濊瘯10娆� + // 灏濊瘯100娆� JSONObject result = null; - for (int i = 0; i < 10; i++) { - result = getRequestBody(requestType); + for (int i = 0; i < 100; i++) { + result = getRequestBody(requestType, taskId); if (result == null) { try { Thread.sleep(100); -- Gitblit v1.9.1