From c3434b1fe0132372b34ff0a46d84e6129a094bfc Mon Sep 17 00:00:00 2001
From: L <L@132>
Date: 星期四, 28 八月 2025 08:43:15 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/core/cache/TaskProtocolCache.java | 66 +++++++++++++++++++++++++++++++++
1 files changed, 66 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/core/cache/TaskProtocolCache.java b/src/main/java/com/zy/core/cache/TaskProtocolCache.java
index 6e9c11f..f2f01c6 100644
--- a/src/main/java/com/zy/core/cache/TaskProtocolCache.java
+++ b/src/main/java/com/zy/core/cache/TaskProtocolCache.java
@@ -117,4 +117,70 @@
}
}
+
+
+ /**
+ * 鏌ヨ鏄惁鏈夊彲鎵ц浠诲姟
+ */
+ public boolean isNowPosRun(Long targetPosition) {
+// lock.readLock().lock(); // 鍔犺閿�
+ try {
+ List<TaskProtocol> allWalkTaskProtocol = new ArrayList<>();
+ for (TaskProtocol task : cache.values()) {
+ long runPos = Math.abs(task.getTargetPosition() - targetPosition);
+ if (runPos<50) {
+ return true;
+ }
+ }
+ return false; // 杩斿洖鍓湰
+ } finally {
+// lock.readLock().unlock(); // 閲婃斁璇婚攣
+ }
+ }
+ /**
+ * 鏌ヨ鏄惁鏈夊彲鎵ц浠诲姟
+ */
+ public TaskProtocol getNowPosRunTask(Long targetPosition) {
+// lock.readLock().lock(); // 鍔犺閿�
+ try {
+ for (TaskProtocol task : cache.values()) {
+ long runPos = Math.abs(task.getTargetPosition() - targetPosition);
+ if (runPos<50) {
+ return task;
+ }
+ }
+ return null; // 杩斿洖鍓湰
+ } finally {
+// lock.readLock().unlock(); // 閲婃斁璇婚攣
+ }
+ }
+
+
+ /**
+ * 鏌ヨ鏄惁鏈夊彲鎵ц浠诲姟
+ */
+ public TaskProtocol getNowPosRunTask2() {
+// lock.readLock().lock(); // 鍔犺閿�
+ try {
+ for (TaskProtocol task : cache.values()) {
+ if (task.getTaskStatus()==1) {
+ return task;
+ }
+ }
+ for (TaskProtocol task : cache.values()) {
+ if (task.getTaskStatus()==2) {
+ return task;
+ }
+ }
+ for (TaskProtocol task : cache.values()) {
+ if (task.getTaskStatus()==3) {
+ return task;
+ }
+ }
+ return null; // 杩斿洖鍓湰
+ } finally {
+// lock.readLock().unlock(); // 閲婃斁璇婚攣
+ }
+ }
+
}
--
Gitblit v1.9.1