From 8a1502682476d035936b956d6a991f1257d96f81 Mon Sep 17 00:00:00 2001
From: zy <zy@123>
Date: 星期五, 01 八月 2025 16:09:38 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java | 85 +++++++++++++++---------------------------
1 files changed, 30 insertions(+), 55 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 3aa424b..afdae1d 100644
--- a/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
+++ b/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
@@ -354,25 +354,20 @@
fakeStatus.put("deviceStatus", 1);//璁惧绌洪棽
fakeStatusMap.put(key, fakeStatus);
} else if (commandType.equals("move")) {
- boolean firstMove = true;
-
String baseCommandKey = RedisKeyType.FAKE_SHUTTLE_MOVE_EXECUTE_COMMAND_LIST.key + deviceConfig.getDeviceNo() + "_";
- Set<String> keys = redisUtil.searchKeys(baseCommandKey);
-
- if (!keys.isEmpty()) {
- firstMove = false;
+ while (true) {
+ Set<String> keys = redisUtil.searchKeys(baseCommandKey);
+ if (keys.isEmpty()) {
+ break;
+ }
}
+
+ String finalKey = baseCommandKey + System.currentTimeMillis();
+ redisUtil.set(finalKey, true, 60 * 60);
JSONObject body = command.getJSONObject("commandBody");
String pathList = body.getString("path");
- List<JSONObject> list = JSON.parseArray(pathList, JSONObject.class);
-
- String finalKey = baseCommandKey + System.currentTimeMillis();
- redisUtil.set(finalKey, list);
-
- if(!firstMove) {
- return;
- }
+ List<JSONObject> executePathList = JSON.parseArray(pathList, JSONObject.class);
fakeStatus.put("deviceStatus", 0);//璁惧蹇欑
fakeStatusMap.put(key, fakeStatus);
@@ -384,57 +379,37 @@
break;
}
- while (true) {
- Set<String> searchKeys = redisUtil.searchKeys(baseCommandKey);
- if(searchKeys.isEmpty()) {
+ for (JSONObject path : executePathList) {
+ while (true) {
+ JSONObject realFakeStatus = fakeStatusMap.get(key);
+ Integer errorCode = realFakeStatus.getInteger("errorCode");
+ if (errorCode > 0) {
+ continue;
+ }
break;
}
- TreeSet<String> treeSet = new TreeSet<>();
- for (String tmpKey : searchKeys) {
- treeSet.add(tmpKey);
- }
-
- String first = treeSet.first();
-
- Object object = redisUtil.get(first);
- if(object == null) {
+ while (true) {
+ if((System.currentTimeMillis() - startTime) < 1000 * 1) {
+ continue;
+ }
break;
}
- List<JSONObject> executePathList = (List<JSONObject>) object;
- for (JSONObject path : executePathList) {
- while (true) {
- JSONObject realFakeStatus = fakeStatusMap.get(key);
- Integer errorCode = realFakeStatus.getInteger("errorCode");
- if (errorCode > 0) {
- continue;
- }
- break;
- }
-
- while (true) {
- if((System.currentTimeMillis() - startTime) < 1000 * 1) {
- continue;
- }
- break;
- }
-
- String currentCode = fakeStatus.getString("currentCode");
- JSONObject point = JSON.parseObject(currentCode);
- point.put("x", path.getInteger("xp"));
- point.put("y", path.getInteger("yp"));
- point.put("z", path.getInteger("z"));
- fakeStatus.put("currentCode", JSON.toJSONString(point));
- fakeStatus.put("deviceStatus", 0);//璁惧蹇欑
- fakeStatusMap.put(key, fakeStatus);
- startTime = System.currentTimeMillis();
- }
- redisUtil.del(first);
+ String currentCode = fakeStatus.getString("currentCode");
+ JSONObject point = JSON.parseObject(currentCode);
+ point.put("x", path.getInteger("xp"));
+ point.put("y", path.getInteger("yp"));
+ point.put("z", path.getInteger("z"));
+ fakeStatus.put("currentCode", JSON.toJSONString(point));
+ fakeStatus.put("deviceStatus", 0);//璁惧蹇欑
+ fakeStatusMap.put(key, fakeStatus);
+ startTime = System.currentTimeMillis();
}
fakeStatus.put("deviceStatus", 1);//璁惧绌洪棽
fakeStatusMap.put(key, fakeStatus);
+ redisUtil.del(finalKey);
}
} catch (Exception e) {
e.printStackTrace();
--
Gitblit v1.9.1