From fe024501537f84baa38d3f09367b757a5719b77a Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期五, 28 十一月 2025 16:44:30 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/core/thread/impl/ZyRgvThread.java | 5 ++++-
src/main/java/com/zy/asrs/utils/Utils.java | 27 +++++++++++++++++++++++++++
src/main/java/com/zy/core/thread/impl/ZyStationThread.java | 5 ++++-
src/main/java/com/zy/core/thread/impl/ZySiemensCrnThread.java | 4 +++-
4 files changed, 38 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index cf9784b..3c7d165 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -4,7 +4,12 @@
import com.alibaba.fastjson.JSONObject;
import com.core.common.Arith;
import com.core.common.Cools;
+import com.core.common.SpringUtils;
+import com.zy.common.utils.RedisUtil;
+import com.zy.core.enums.RedisKeyType;
+
import java.text.DecimalFormat;
+import java.util.HashMap;
public class Utils {
@@ -80,4 +85,26 @@
return false;
}
}
+
+ //鑾峰彇璁惧鏃ュ織閲囬泦鏃堕棿
+ public static int getDeviceLogCollectTime() {
+ int defaultTime = 200;
+ RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class);
+ if (redisUtil == null) {
+ return defaultTime;
+ }
+
+ Object object = redisUtil.get(RedisKeyType.SYSTEM_CONFIG_MAP.key);
+ if (object == null) {
+ return defaultTime;
+ }
+
+ HashMap<String, String> systemConfigMap = (HashMap<String, String>) object;
+ String deviceLogCollectTime = systemConfigMap.get("deviceLogCollectTime");
+ if(deviceLogCollectTime == null){
+ return defaultTime;
+ }
+
+ return Integer.parseInt(deviceLogCollectTime);
+ }
}
diff --git a/src/main/java/com/zy/core/thread/impl/ZyRgvThread.java b/src/main/java/com/zy/core/thread/impl/ZyRgvThread.java
index 656b4dd..461f6e8 100644
--- a/src/main/java/com/zy/core/thread/impl/ZyRgvThread.java
+++ b/src/main/java/com/zy/core/thread/impl/ZyRgvThread.java
@@ -10,6 +10,7 @@
import com.zy.asrs.entity.DeviceDataLog;
import com.zy.asrs.service.BasRgvService;
import com.zy.asrs.service.BasRgvOptService;
+import com.zy.asrs.utils.Utils;
import com.zy.common.utils.RedisUtil;
import com.zy.core.cache.MessageQueue;
import com.zy.core.cache.OutputQueue;
@@ -38,6 +39,7 @@
private RedisUtil redisUtil;
private ZyRgvConnectDriver zyRgvConnectDriver;
private RgvProtocol rgvProtocol;
+ private int deviceLogCollectTime = 200;
public ZyRgvThread(DeviceConfig deviceConfig, RedisUtil redisUtil) {
this.deviceConfig = deviceConfig;
@@ -51,6 +53,7 @@
initRgv();
while (true) {
try {
+ deviceLogCollectTime = Utils.getDeviceLogCollectTime();
int step = 1;
Task task = MessageQueue.poll(SlaveType.Rgv, deviceConfig.getDeviceNo());
if (task != null) {
@@ -117,7 +120,7 @@
rgvProtocol.setLastCommandTime(System.currentTimeMillis());
}
- if (System.currentTimeMillis() - rgvProtocol.getDeviceDataLog() > 200) {
+ if (System.currentTimeMillis() - rgvProtocol.getDeviceDataLog() > deviceLogCollectTime) {
DeviceDataLog deviceDataLog = new DeviceDataLog();
deviceDataLog.setOriginData(JSON.toJSONString(s));
deviceDataLog.setWcsData(JSON.toJSONString(rgvProtocol));
diff --git a/src/main/java/com/zy/core/thread/impl/ZySiemensCrnThread.java b/src/main/java/com/zy/core/thread/impl/ZySiemensCrnThread.java
index f411914..0bb8c61 100644
--- a/src/main/java/com/zy/core/thread/impl/ZySiemensCrnThread.java
+++ b/src/main/java/com/zy/core/thread/impl/ZySiemensCrnThread.java
@@ -43,6 +43,7 @@
private RedisUtil redisUtil;
private ZyCrnConnectDriver zyCrnConnectDriver;
private CrnProtocol crnProtocol;
+ private int deviceLogCollectTime = 200;
private boolean resetFlag = false;
public ZySiemensCrnThread(DeviceConfig deviceConfig, RedisUtil redisUtil) {
@@ -57,6 +58,7 @@
this.initCrn();
while (true) {
try {
+ deviceLogCollectTime = Utils.getDeviceLogCollectTime();
int step = 1;
Task task = MessageQueue.poll(SlaveType.Crn, deviceConfig.getDeviceNo());
if (task != null) {
@@ -172,7 +174,7 @@
crnProtocol.setLastCommandTime(System.currentTimeMillis());
}
- if (System.currentTimeMillis() - crnProtocol.getDeviceDataLog() > 200) {
+ if (System.currentTimeMillis() - crnProtocol.getDeviceDataLog() > deviceLogCollectTime) {
//淇濆瓨鏁版嵁璁板綍
DeviceDataLog deviceDataLog = new DeviceDataLog();
deviceDataLog.setOriginData(JSON.toJSONString(crnStatus));
diff --git a/src/main/java/com/zy/core/thread/impl/ZyStationThread.java b/src/main/java/com/zy/core/thread/impl/ZyStationThread.java
index ea8e40f..9552cc0 100644
--- a/src/main/java/com/zy/core/thread/impl/ZyStationThread.java
+++ b/src/main/java/com/zy/core/thread/impl/ZyStationThread.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.zy.asrs.entity.BasDevp;
import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.utils.Utils;
import com.zy.core.network.DeviceConnectPool;
import com.zy.core.thread.StationThread;
import com.alibaba.fastjson.JSON;
@@ -42,6 +43,7 @@
private DeviceConfig deviceConfig;
private RedisUtil redisUtil;
private ZyStationConnectDriver zyStationConnectDriver;
+ private int deviceLogCollectTime = 200;
private long deviceDataLogTime = System.currentTimeMillis();
public ZyStationThread(DeviceConfig deviceConfig, RedisUtil redisUtil) {
@@ -53,6 +55,7 @@
@SuppressWarnings("InfiniteLoopStatement")
public void run() {
this.connect();
+ deviceLogCollectTime = Utils.getDeviceLogCollectTime();
//璁惧璇诲彇
Thread readThread = new Thread(() -> {
@@ -134,7 +137,7 @@
OutputQueue.DEVP.offer(MessageFormat.format("銆恵0}銆慬id:{1}] <<<<< 瀹炴椂鏁版嵁鏇存柊鎴愬姛",DateUtils.convert(new Date()), deviceConfig.getDeviceNo()));
- if (System.currentTimeMillis() - deviceDataLogTime > 1000 * 1) {
+ if (System.currentTimeMillis() - deviceDataLogTime > deviceLogCollectTime) {
//淇濆瓨鏁版嵁璁板綍
DeviceDataLog deviceDataLog = new DeviceDataLog();
deviceDataLog.setOriginData(JSON.toJSONString(zyStationStatusEntities));
--
Gitblit v1.9.1