From 5ce79fd4dfb30c75ac48bb0d4a6e7e0518f668ff Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期一, 09 三月 2026 14:18:10 +0800
Subject: [PATCH] lsh#

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/WcsServiceImpl.java |   17 ++++++++++++++---
 1 files changed, 14 insertions(+), 3 deletions(-)

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 fc647cb..ddc64fd 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
@@ -523,8 +523,7 @@
                     || task.getTaskType().equals(TaskType.TASK_TYPE_PICK_IN.type)
                     || task.getTaskType().equals(TaskType.TASK_TYPE_CHECK_IN.type)
                     || task.getTaskType().equals(TaskType.TASK_TYPE_EMPTY_IN.type)
-                    || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type)
-                    || task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)) {
+                    || task.getTaskType().equals(TaskType.TASK_TYPE_MERGE_IN.type)) {
                 /**淇敼鍑哄簱绔欑偣鐘舵��*/
                 BasStation station = basStationService.getOne(new LambdaQueryWrapper<BasStation>()
                         .eq(BasStation::getStationName, task.getOrgSite()));
@@ -556,6 +555,10 @@
 //                        throw new CoolException("绔欑偣鐘舵�佷慨鏀瑰け璐ワ紒锛�");
 //                    }
 //                }
+            } else if (task.getTaskType().equals(TaskType.TASK_TYPE_LOC_MOVE.type)){
+                //鏌ヨ姝ラ  娓呮婧愬簱浣嶆垨鑰呬腑闂寸珯鐐规暟鎹�
+                //寰呬慨鏀�  鍏堥粯璁ゆ竻闄ゆ簮搴撲綅
+
             }
             /**鍙栫瀹屾垚锛� 淇敼浠诲姟鐘舵��*/
         } else if (params.getEventType().equals(CallBackEvent.CALL_BACK_EVENT_END.event)) {
@@ -573,6 +576,7 @@
         if (flowStepInstance.getWmsNextTaskStatus() != 9999) {
             FlowStepInstance nextFlowStepInstance = flowStepInstanceService.getOne(new LambdaQueryWrapper<FlowStepInstance>()
                     .eq(FlowStepInstance::getStatus, (short)0)
+                    .eq(FlowStepInstance::getTaskNo, flowStepInstance.getTaskNo())
                     .eq(FlowStepInstance::getStepOrder, flowStepInstance.getStepOrder() + 1)
                     .eq(FlowStepInstance::getWmsNowTaskStatus, flowStepInstance.getWmsNextTaskStatus()));
             if (Cools.isEmpty(nextFlowStepInstance)) {
@@ -698,7 +702,7 @@
                     }
                     String shallowLocNo = LocUtils.getShallowLoc(loc1.getCode());
                     // 妫�娴嬬洰鏍囧簱浣嶆槸鍚︿负绌哄簱浣�
-                    Loc shallowLoc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, shallowLocNo));
+                    Loc shallowLoc = locService.getOne(new LambdaQueryWrapper<Loc>().eq(Loc::getCode, shallowLocNo).last("limit 1"));
                     if (shallowLoc != null && shallowLoc.getUseStatus().equals(LocStsType.LOC_STS_TYPE_O.type)) {
                         if (LocUtils.locMoveCheckLocTypeComplete(shallowLoc, locTypeDto)) {
                             loc = shallowLoc;
@@ -1079,9 +1083,16 @@
 
                 flowStepInstanceService.updateById(flowStepInstance);
                 taskService.updateById(task);
+                // 鐩樼偣鍐嶅叆搴撲换鍔$粡 WCS 涓婃姤鍙樹负 100锛堝簱瀛樻洿鏂板畬鎴愶級鏃讹紝鍚屾灏嗙洏鐐瑰樊寮傚崟缃负宸插鏍�
+                if (TaskType.TASK_TYPE_CHECK_IN.type.equals(task.getTaskType())
+                        && flowStepInstance.getWmsNextTaskStatus() != null
+                        && flowStepInstance.getWmsNextTaskStatus().equals(TaskStsType.UPDATED_IN.id)) {
+                    taskService.markCheckDiffApprovedWhenCheckInDone(task);
+                }
                 if (flowStepInstance.getWmsNextTaskStatus() != 9999) {
                     FlowStepInstance nextFlowStepInstance = flowStepInstanceService.getOne(new LambdaQueryWrapper<FlowStepInstance>()
                             .eq(FlowStepInstance::getStatus, (short)0)
+                            .eq(FlowStepInstance::getTaskNo, flowStepInstance.getTaskNo())
                             .eq(FlowStepInstance::getStepOrder, flowStepInstance.getStepOrder() + 1)
                             .eq(FlowStepInstance::getWmsNowTaskStatus, flowStepInstance.getWmsNextTaskStatus()));
                     if (Cools.isEmpty(nextFlowStepInstance)) {

--
Gitblit v1.9.1