From bcdf41a43daff31d342e6cd2a39fbd28bb00b61b Mon Sep 17 00:00:00 2001
From: zy <zy@123>
Date: 星期一, 21 七月 2025 09:52:55 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/core/thread/fake/FakeZyForkLiftThread.java |   41 +++++++++++++++++++++++++++++++++++------
 1 files changed, 35 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/core/thread/fake/FakeZyForkLiftThread.java b/src/main/java/com/zy/core/thread/fake/FakeZyForkLiftThread.java
index 226573d..1e08662 100644
--- a/src/main/java/com/zy/core/thread/fake/FakeZyForkLiftThread.java
+++ b/src/main/java/com/zy/core/thread/fake/FakeZyForkLiftThread.java
@@ -6,13 +6,14 @@
 import com.zy.common.SpringUtils;
 import com.zy.common.utils.RedisUtil;
 import com.zy.core.News;
-import com.zy.core.ThreadHandler;
 import com.zy.core.cache.SlaveConnection;
 import com.zy.core.enums.RedisKeyType;
 import com.zy.core.enums.SlaveType;
 import com.zy.core.model.DeviceCommandMsgModel;
 import com.zy.core.model.DeviceMsgModel;
+import com.zy.core.model.param.UpdateFakeThreadStatusParam;
 import com.zy.core.properties.DeviceConfig;
+import com.zy.core.thread.FakeThread;
 import com.zy.core.thread.impl.ZyForkLiftThread;
 import com.zy.core.utils.DeviceMsgUtils;
 import com.zy.core.utils.FakeDeviceUtils;
@@ -20,16 +21,17 @@
 
 import java.io.*;
 import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
 
 @Slf4j
 @SuppressWarnings("all")
-public class FakeZyForkLiftThread implements ThreadHandler {
+public class FakeZyForkLiftThread implements FakeThread {
 
     private RedisUtil redisUtil;
     private JSONObject fakeStatusDemo = JSONObject.parseObject("{\"model\":2,\"wrkNo\":0,\"lev\":1,\"protocolStatus\":0,\"taskMode\":0,\"pick\":0,\"put\":0,\"iOMode\":0,\"errorCode\":0,\"trayList\":[0,0,0,0],\"carList\":[0,0,0,0]}");
-    private HashMap<String, Thread> fakeThreadMap = new HashMap();
-    private HashMap<String, JSONObject> fakeStatusMap = new HashMap();
-    private HashMap<String, JSONObject> fakeCommandMap = new HashMap();
+    private ConcurrentHashMap<String, Thread> fakeThreadMap = new ConcurrentHashMap();
+    private ConcurrentHashMap<String, JSONObject> fakeStatusMap = new ConcurrentHashMap();
+    private ConcurrentHashMap<String, JSONObject> fakeCommandMap = new ConcurrentHashMap();
 
     private boolean fake = false;
 
@@ -114,7 +116,7 @@
 
 
             // init
-            ThreadHandler thread = new ZyForkLiftThread(device, redisUtil);;
+            ZyForkLiftThread thread = new ZyForkLiftThread(device, redisUtil);;
             new Thread(thread).start();
             SlaveConnection.put(SlaveType.ForkLift, device.getDeviceNo(), thread);
         }
@@ -361,4 +363,31 @@
 
     }
 
+    @Override
+    public ConcurrentHashMap<String, Thread> getFakeThreadMap() {
+        return this.fakeThreadMap;
+    }
+
+    @Override
+    public ConcurrentHashMap<String, JSONObject> getFakeStatusMap() {
+        return this.fakeStatusMap;
+    }
+
+    @Override
+    public ConcurrentHashMap<String, JSONObject> getFakeCommandMap() {
+        return this.fakeCommandMap;
+    }
+
+    @Override
+    public boolean updateFakeStatus(UpdateFakeThreadStatusParam param) {
+        String key = param.getDeviceType() + param.getDeviceNo();
+        JSONObject result = fakeStatusMap.get(key);
+        if (result == null) {
+            return false;
+        }
+
+        JSONObject newData = JSON.parseObject(param.getData());
+        this.fakeStatusMap.put(key, newData);
+        return true;
+    }
 }

--
Gitblit v1.9.1