From 10a43f2d14a1a161bc624b9fe2f70febc9776ac8 Mon Sep 17 00:00:00 2001
From: skyouc <958836976@qq.com>
Date: 星期五, 05 九月 2025 09:42:19 +0800
Subject: [PATCH] 1

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java |   32 +++++++++-------
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java     |    2 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AutoRunSchedules.java   |   15 ++++---
 rsf-open-api/pom.xml                                                                      |   25 +++++++++++-
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java      |   15 +++++--
 5 files changed, 60 insertions(+), 29 deletions(-)

diff --git a/rsf-open-api/pom.xml b/rsf-open-api/pom.xml
index 3136260..7a6ca0a 100644
--- a/rsf-open-api/pom.xml
+++ b/rsf-open-api/pom.xml
@@ -8,15 +8,13 @@
         <artifactId>rsf</artifactId>
         <version>1.0.0</version>
     </parent>
-
     <artifactId>rsf-open-api</artifactId>
-
+    <packaging>jar</packaging>
     <properties>
         <maven.compiler.source>17</maven.compiler.source>
         <maven.compiler.target>17</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     </properties>
-
     <dependencies>
         <dependency>
             <groupId>com.vincent</groupId>
@@ -24,5 +22,26 @@
             <version>1.0.0</version>
         </dependency>
     </dependencies>
+    <build>
+        <finalName>rsf-open-api</finalName>
+        <plugins>
+            <plugin>
+                <groupId>org.springframework.boot</groupId>
+                <artifactId>spring-boot-maven-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <configuration>
+                    <encoding>UTF-8</encoding>
+                    <nonFilteredFileExtensions>
+                        <nonFilteredFileExtension>xls</nonFilteredFileExtension>
+                        <nonFilteredFileExtension>xlsx</nonFilteredFileExtension>
+                        <nonFilteredFileExtension>zip</nonFilteredFileExtension>
+                    </nonFilteredFileExtensions>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
 
 </project>
\ No newline at end of file
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
index 6d24142..a850147 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java
@@ -477,15 +477,19 @@
                     || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_IN.type)
                     || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type)
                     || task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
-                if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode())
+                if (!taskService.update(new LambdaUpdateWrapper<Task>()
+                        .lt(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id)
+                        .eq(Task::getTaskCode, task.getTaskCode())
                         .set(Task::getTaskStatus, TaskStsType.COMPLETE_IN.id))) {
                     throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                 }
 
-                if (!basStationService.update(new LambdaUpdateWrapper<BasStation>()
-                        .eq(BasStation::getStationName, task.getOrgSite())
-                        .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_O.type))) {
-                    throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+                if (!Objects.isNull(task.getOrgSite())) {
+                    if (!basStationService.update(new LambdaUpdateWrapper<BasStation>()
+                            .eq(BasStation::getStationName, task.getOrgSite())
+                            .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_O.type))) {
+                        throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+                    }
                 }
             } else if (task.getTaskType().equals(TaskType.TASK_TYPE_OUT.type)
                     || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_AGAIN_OUT.type)
@@ -493,6 +497,7 @@
                     || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_OUT.type)
                     || task.getTaskType().equals(TaskType.TASK_TYPE_EMPITY_OUT.type)) {
                 if (!taskService.update(new LambdaUpdateWrapper<Task>().eq(Task::getTaskCode, task.getTaskCode())
+                        .lt(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id)
                         .set(Task::getTaskStatus, TaskStsType.COMPLETE_OUT.id))) {
                     throw new CoolException("浠诲姟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
index fb2daf9..e68e8c8 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocController.java
@@ -73,7 +73,7 @@
         Loc loc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, locCode),false);
         List<Loc> list = locService.list(new LambdaQueryWrapper<Loc>()
                 .eq(Loc::getAreaId, loc.getAreaId())
-                .eq(Loc::getChannel,loc.getChannel())
+                .eq(!Objects.isNull(loc.getChannel()), Loc::getChannel,loc.getChannel())
                 .eq(Loc::getUseStatus, LocStsType.LOC_STS_TYPE_O.type)
         );
         List<String> list1 = list.stream().map(obj -> obj.getCode()).collect(Collectors.toList());
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 b7c426b..e934e40 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
@@ -104,10 +104,10 @@
     @Scheduled(cron = "0/35 * * * * ?")
     @Transactional(rollbackFor = Exception.class)
     public void autoCheckComplete() {
-        Boolean autoRunArea = configService.getVal("AUTO_RUN_CHECK_ORDERS", Boolean.class);
-        if (!autoRunArea) {
-            return;
-        }
+//        Boolean autoRunArea = configService.getVal("AUTO_RUN_CHECK_ORDERS", Boolean.class);
+//        if (!autoRunArea) {
+//            return;
+//        }
         //鑾峰彇浠诲姟鍒楄〃涓紝涓虹洏鐐瑰嚭搴撶殑浠诲姟
         List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>()
                 .in(Task::getTaskType, Arrays.asList(TaskType.TASK_TYPE_CHECK_OUT.type, TaskType.TASK_TYPE_CHECK_IN.type)));
@@ -123,7 +123,8 @@
                         if (!stationService.update(new LambdaUpdateWrapper<BasStation>()
                                 .eq(BasStation::getStationName, task.getTargSite())
                                 .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_F.type))) {
-                            throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+                            log.error("绔欑偣鐘舵�佷慨鏀瑰畬鎴愬け璐�,褰撳墠浠诲姟鐘舵�侊細", task.getTaskStatus());
+//                            throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                         }
                         try {
                             taskService.pickOrCheckTask(task.getId(), Constants.TASK_TYPE_OUT_CHECK);
@@ -131,7 +132,8 @@
                             if (!stationService.update(new LambdaUpdateWrapper<BasStation>()
                                     .eq(BasStation::getStationName, task.getTargSite())
                                     .set(BasStation::getUseStatus, LocStsType.LOC_STS_TYPE_R.type))) {
-                                throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
+                                log.error("绔欑偣鐘舵�佷慨鏀瑰畬鎴愬け璐�,褰撳墠浠诲姟鐘舵�侊細", task.getTaskStatus());
+//                                throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                             }
                         } catch (Exception e) {
                             log.error("error====>", e);
@@ -150,6 +152,7 @@
      * @version 1.0
      */
     @Scheduled(cron = "0/25 * * * * ?")
+//    @Scheduled(cron = "0 0/05 * * * ?  ")
     public void genRun() {
         Boolean flagAuto = configService.getVal("AUTO_RUN_CHECK_ORDERS", Boolean.class);
         if (!flagAuto) {
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
index 601c72a..d299f77 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/TaskServiceImpl.java
@@ -23,6 +23,7 @@
 import com.vincent.rsf.server.system.utils.SerialRuleUtils;
 import com.vincent.rsf.server.system.utils.SystemAuthUtils;
 import lombok.Synchronized;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -34,6 +35,7 @@
 import java.util.*;
 import java.util.stream.Collectors;
 
+@Slf4j
 @Service("taskService")
 public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService {
 
@@ -406,22 +408,24 @@
      */
     @Synchronized
     @Override
-    @Transactional(rollbackFor = Exception.class)
     public void complateInTask(List<Task> tasks) throws Exception {
         Long loginUserId = SystemAuthUtils.getLoginUserId();
         for (Task task : tasks) {
-            if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type)) {
-                //1.鍏ュ簱
-                complateInstock(task, loginUserId);
-            } else if (task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) {
-                //53.鎷f枡鍐嶅叆搴�
-                //57.鐩樼偣鍐嶅叆搴�
-                pickComplateInStock(task, loginUserId);
-            } else if (task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
-                //绉诲簱
-                moveInStock(task, loginUserId);
+            try {
+                if (task.getTaskType().equals(TaskType.TASK_TYPE_IN.type)) {
+                    //1.鍏ュ簱
+                    complateInstock(task, loginUserId);
+                } else if (task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type) || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)) {
+                    //53.鎷f枡鍐嶅叆搴�
+                    //57.鐩樼偣鍐嶅叆搴�
+                    pickComplateInStock(task, loginUserId);
+                } else if (task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
+                    //绉诲簱
+                    moveInStock(task, loginUserId);
+                }
+            } catch (Exception ex) {
+                log.error(ex.getMessage(), ex);
             }
-
         }
     }
 
@@ -635,7 +639,6 @@
      */
     @Synchronized
     @Override
-    @Transactional(rollbackFor = Exception.class)
     public void completeTask(List<Task> tasks) {
         Long loginUserId = SystemAuthUtils.getLoginUserId();
         for (Task task : tasks) {
@@ -643,7 +646,8 @@
             try {
                 complateOutStock(task, loginUserId);
             } catch (Exception e) {
-                throw new CoolException(e.getMessage());
+                log.error(e.getMessage(), e);
+//                throw new CoolException(e.getMessage());
             }
         }
     }

--
Gitblit v1.9.1