From 2ba05033837f468ba9d3f8fc60855dacbf527cb2 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期三, 17 九月 2025 15:00:30 +0800
Subject: [PATCH] 跑酷

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java |   55 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 30 insertions(+), 25 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java
index 252a556..8b3ec26 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java
@@ -2,7 +2,6 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.vincent.rsf.framework.common.Cools;
 import com.vincent.rsf.framework.exception.CoolException;
 import com.vincent.rsf.server.common.constant.Constants;
@@ -10,16 +9,15 @@
 import com.vincent.rsf.server.manager.constant.StaGroupConstant;
 import com.vincent.rsf.server.manager.controller.params.LocToTaskParams;
 import com.vincent.rsf.server.manager.entity.*;
-import com.vincent.rsf.server.manager.enums.*;
+import com.vincent.rsf.server.manager.enums.LocStsType;
+import com.vincent.rsf.server.manager.enums.TaskResouceType;
+import com.vincent.rsf.server.manager.enums.TaskStsType;
+import com.vincent.rsf.server.manager.enums.TaskType;
 import com.vincent.rsf.server.manager.service.*;
-import com.vincent.rsf.server.manager.service.impl.BasStationServiceImpl;
 import com.vincent.rsf.server.system.constant.GlobalConfigCode;
-import com.vincent.rsf.server.system.constant.SerialRuleCode;
 import com.vincent.rsf.server.system.entity.Config;
 import com.vincent.rsf.server.system.service.ConfigService;
-import com.vincent.rsf.server.system.utils.SerialRuleUtils;
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Scheduled;
@@ -128,7 +126,7 @@
 //                                throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                         }
                         try {
-                            taskService.pickOrCheckTask(task.getId(),  task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type) ? Constants.TASK_TYPE_OUT_CHECK : "");
+                            taskService.pickOrCheckTask(task.getId(), task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type) ? Constants.TASK_TYPE_OUT_CHECK : "");
 
                         } catch (Exception e) {
                             log.error("error====>", e);
@@ -275,6 +273,7 @@
 
     /**
      * 鐢熸垚绉诲簱浠诲姟
+     *
      * @param
      * @param
      */
@@ -286,19 +285,7 @@
         if (!Boolean.parseBoolean(config.getVal())) {
             return;
         }
-        Integer maxThread = 50;
-        Config confNum = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.AUTO_RUN_MOVE_THEAD_MAX));
-        if (!Objects.isNull(confNum)) {
-            maxThread = Integer.valueOf(confNum.getVal());
-        }
 
-        List<Integer> locGroupList = new ArrayList<>();
-        //鑾峰彇浠诲姟鍒楄〃涓紝涓虹洏鐐瑰嚭搴撶殑浠诲姟
-        List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>()
-                .eq(Task::getTaskType, TaskType.TASK_TYPE_LOC_MOVE.type));
-        if (!tasks.isEmpty() && tasks.size() >= maxThread) {
-            return;
-        }
         String autoRunArea = configService.getVal("AUTO_RUN_AREA", String.class);
         if (Cools.isEmpty(autoRunArea)) {
             return;
@@ -306,29 +293,48 @@
         for (char c : autoRunArea.toCharArray()) {
             switch (c) {
                 case '1':
-                    locGroupList = LocGroupConstant.FAR_RIGHT_LOC_ROW_LIST;
+                    xx(LocGroupConstant.FAR_RIGHT_LOC_ROW_LIST);
                     break;
                 case '2':
-                    locGroupList = LocGroupConstant.RIGHT_LOC_ROW_LIST;
+                    xx(LocGroupConstant.RIGHT_LOC_ROW_LIST);
                     break;
                 case '3':
-                    locGroupList = LocGroupConstant.MIDDLE_LOC_ROW_LIST;
+                    xx(LocGroupConstant.MIDDLE_LOC_ROW_LIST);
                     break;
                 case '4':
-                    locGroupList = LocGroupConstant.LEFT_LOC_ROW_LIST;
+                    xx(LocGroupConstant.LEFT_LOC_ROW_LIST);
                     break;
                 case '5':
-                    locGroupList = LocGroupConstant.FAR_LEFT_LOC_ROW_LIST;
+                    xx(LocGroupConstant.FAR_LEFT_LOC_ROW_LIST);
                     break;
                 default:
                     break;
             }
         }
 
+
+    }
+
+
+    private void xx(List<Integer> locGroupList) {
         Integer startRow = Collections.min(locGroupList);
         Integer endRow = Collections.max(locGroupList);
 
         String memo = "DEMO_LOC_" + startRow + "-" + endRow;
+
+
+        Integer maxThread = 40;
+        Config confNum = configService.getOne(new LambdaQueryWrapper<Config>().eq(Config::getFlag, GlobalConfigCode.AUTO_RUN_MOVE_THEAD_MAX));
+        if (!Objects.isNull(confNum)) {
+            maxThread = Integer.valueOf(confNum.getVal());
+        }
+
+        List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>()
+                .eq(Task::getMemo,memo));
+        if (!tasks.isEmpty() && tasks.size() >= maxThread) {
+            return;
+        }
+
         // STOCK
         LambdaQueryWrapper<Loc> stockWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_F.type);
         if (null != startRow) {
@@ -371,7 +377,6 @@
         } catch (Exception e) {
             log.info("鐢熸垚鍑哄簱浠诲姟澶辫触", e);
         }
-
     }
 
     public static List<String> getStaPrefixes(List<String> staGroupList) {

--
Gitblit v1.9.1