From a275def843c48f3de7c0783852af3fe016570eed Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期一, 07 七月 2025 08:33:44 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java | 40 +++++++++++++++++++++++++++++++---------
1 files changed, 31 insertions(+), 9 deletions(-)
diff --git a/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java b/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
index a879110..c0de4e0 100644
--- a/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
+++ b/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
@@ -85,11 +85,6 @@
break;
}
- if(fakeSocket.isClosed()) {
- fakeSocket = null;
- continue;
- }
-
handleClient(fakeSocket, device);
}
}catch (Exception e){
@@ -126,9 +121,7 @@
log.info("鏀跺埌Client Data: {}", JSON.toJSONString(result));
processCommand(result, device);
} catch (Exception e) {
-// e.printStackTrace();
- socket.close();
- fakeServerMap.remove(String.valueOf(SlaveType.Shuttle) + device.getDeviceNo());
+ e.printStackTrace();
}
}
@@ -137,22 +130,30 @@
JSONObject fakeStatus = fakeStatusMap.get(String.valueOf(SlaveType.Shuttle) + device.getDeviceNo());
JSONObject request = result.getJSONObject("request");
+ JSONObject header = request.getJSONObject("header");
JSONObject body = request.getJSONObject("body");
+
+ Integer requestId = header.getInteger("requestId");
String requestType = body.getString("requestType");
Integer taskId = body.getInteger("taskId");
if (requestType.equals("liftUp")) {
fakeStatus.put("hasLift", true);
+ response = genereateFakeCommandResponse(requestId, taskId, requestType);
} else if (requestType.equals("liftDown")) {
fakeStatus.put("hasLift", false);
+ response = genereateFakeCommandResponse(requestId, taskId, requestType);
} else if (requestType.equals("charge")) {
fakeStatus.put("hasCharge", true);
+ response = genereateFakeCommandResponse(requestId, taskId, requestType);
} else if (requestType.equals("stopCharge")) {
fakeStatus.put("hasCharge", false);
+ response = genereateFakeCommandResponse(requestId, taskId, requestType);
} else if (requestType.equals("updateFloor")) {
String currentCode = fakeStatus.getString("currentCode");
JSONObject point = JSON.parseObject(currentCode);
point.put("z", body.getInteger("z"));
fakeStatus.put("currentCode", JSON.toJSONString(point));
+ response = genereateFakeCommandResponse(requestId, taskId, requestType);
} else if (requestType.equals("move")) {
String pathList = body.getString("path");
List<JSONObject> list = JSON.parseArray(pathList, JSONObject.class);
@@ -170,7 +171,7 @@
}
}
} else if (requestType.equals("readState")) {
- response = genereateFakeStatusResponse(taskId, fakeStatus);
+ response = genereateFakeStatusResponse(requestId, fakeStatus);
}
fakeStatusMap.put(String.valueOf(SlaveType.Shuttle) + device.getDeviceNo(), fakeStatus);
@@ -221,6 +222,27 @@
return JSON.toJSONString(result);
}
+ public String genereateFakeCommandResponse(Integer responseId, Integer taskId, String commandType) {
+ JSONObject result = new JSONObject();
+ JSONObject response = new JSONObject();
+ result.put("msgType", "responseMsg");
+ result.put("robotId", 5001);
+ result.put("response", response);
+
+ JSONObject header = new JSONObject();
+ JSONObject body = new JSONObject();
+ response.put("header", header);
+ response.put("body", body);
+
+ header.put("responseId", responseId);
+ header.put("version", "GV-APP-F427-N24036-1112");
+
+ body.put("responseType", commandType);
+ body.put("result", "success");
+ body.put("taskId", taskId);
+ return JSON.toJSONString(result);
+ }
+
@Override
public boolean connect() {
return true;
--
Gitblit v1.9.1