From 1443e13e91ffb1bc6548722ef6a7a3b68d0ceed9 Mon Sep 17 00:00:00 2001
From: zy <zy@123>
Date: 星期三, 16 七月 2025 10:32:21 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java | 34 ++++++++++++++++++++++++++++------
1 files changed, 28 insertions(+), 6 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 8362d60..2333ccc 100644
--- a/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
+++ b/src/main/java/com/zy/core/thread/fake/FakeNyShuttleThread.java
@@ -30,6 +30,7 @@
private JSONObject fakeStatusDemo = JSONObject.parseObject("{\"mode\":1,\"extend\":{\"countQuantity\":400,\"suspendState\":0,\"minCellVoltage\":3279,\"chargeCycleTimes\":0,\"maxCellVoltage\":3281,\"surplusQuantity\":204,\"voltage\":5248},\"hasLift\":false,\"hasPallet\":false,\"batteryVoltage\":5248,\"runDirection\":\"2\",\"currentCode\":\"{\\\"x\\\":19,\\\"y\\\":11,\\\"z\\\":2}\",\"errorCode\":\"0\",\"hasCharge\":false,\"batteryPower\":\"51\",\"speed\":0,\"deviceStatus\":1}");
private ServerSocket serverSocket;
private Integer gatewayPort;
+ private boolean enableFakeAndDeviceThread;
private ConcurrentHashMap<String, Thread> fakeThreadMap = new ConcurrentHashMap();
private ConcurrentHashMap<String, Socket> fakeServerMap = new ConcurrentHashMap();
private ConcurrentHashMap<String, JSONObject> fakeStatusMap = new ConcurrentHashMap();
@@ -37,9 +38,10 @@
private boolean fake = false;
- public FakeNyShuttleThread(RedisUtil redisUtil, Integer gatewayPort) {
+ public FakeNyShuttleThread(RedisUtil redisUtil, Integer gatewayPort, boolean enableFakeAndDeviceThread) {
this.redisUtil = redisUtil;
this.gatewayPort = gatewayPort;
+ this.enableFakeAndDeviceThread = enableFakeAndDeviceThread;
}
@Override
@@ -95,7 +97,13 @@
}
// log.info("acceptorThread is end:{}", sb.toString());
- JSONObject result = JSON.parseObject(sb.toString());
+ JSONObject result = null;
+ try {
+ result = JSON.parseObject(sb.toString());
+ }catch (Exception e) {
+ log.error("error body:{}", sb.toString());
+ e.printStackTrace();
+ }
if(result == null){
continue;
}
@@ -178,6 +186,21 @@
continue;
}
+ if (enableFakeAndDeviceThread) {
+ NyShuttleThread shuttleThread = (NyShuttleThread) SlaveConnection.get(SlaveType.Shuttle, device.getDeviceNo());
+ if (shuttleThread == null) {
+ // init
+ NyShuttleThread thread = new NyShuttleThread(device, redisUtil);;
+ new Thread(thread).start();
+ SlaveConnection.put(SlaveType.Shuttle, device.getDeviceNo(), thread);
+ }else {
+ Socket socket = shuttleThread.getSocket();
+ if(socket == null){
+ continue;
+ }
+ }
+ }
+
log.info("{}:device is run,devices:{}", device.getDeviceNo(),JSON.toJSONString(fakeServerMap));
Thread fakeThread = new Thread(() -> {
@@ -195,10 +218,9 @@
fakeThread.start();
fakeThreadMap.put(String.valueOf(SlaveType.Shuttle) + device.getDeviceNo(), fakeThread);
- // init
- ThreadHandler thread = new NyShuttleThread(device, redisUtil);;
- new Thread(thread).start();
- SlaveConnection.put(SlaveType.Shuttle, device.getDeviceNo(), thread);
+ try {
+ Thread.sleep(2000);
+ }catch (Exception e){}
}
}
--
Gitblit v1.9.1