From ffc4d0526bf02e7e00a7872d05a1e67e520e59d6 Mon Sep 17 00:00:00 2001
From: yangyang
Date: 星期一, 02 六月 2025 12:06:40 +0800
Subject: [PATCH] 新增自动盘点功能

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WorkServiceImpl.java |   19 ++++++++++++++-----
 1 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WorkServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WorkServiceImpl.java
index 6b9e1eb..a4255b7 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WorkServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WorkServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.framework.exception.CoolException;
 import com.zy.asrs.wms.asrs.entity.*;
@@ -440,13 +441,12 @@
         } else {
             //鍑哄簱
             TaskDetl taskDetl = taskDetls.get(0); //TODO  鍑哄簱娴佺▼寰呯‘璁わ紝ESS鍙栬揣鍚庯紝杈撻�佺嚎娴佽浆鍒版壂鐮佸鐘舵��
-            if (taskDetl.getWaveId() == null) {
+            if (taskDetl.getWaveId() == null && task.getTaskType() != 103 && task.getTaskType() != 107) {
                 task.setTaskSts(TaskStsType.COMPLETE_OUT.id);//199.鍑哄簱瀹屾垚
             } else {
                 task.setTaskSts(TaskStsType.WAVE_SEED.id);//198.鎾涓�
             }
         }
-
         task.setUpdateTime(new Date());
         if (!taskService.updateById(task)) {
             throw new CoolException("浠诲姟鏇存柊澶辫触");
@@ -638,7 +638,7 @@
             throw new CoolException("浠诲姟涓嶅瓨鍦�");
         }
 
-        if (task.getTaskType() != 103) {
+        if (task.getTaskType() != 103 && task.getTaskType() != 107) {
             throw new CoolException("浠诲姟绫诲瀷涓嶅彲鎷f枡");
         }
 
@@ -653,7 +653,9 @@
         }
 
         //鑾峰彇婧愬簱浣嶉珮搴�
-        LocTypeBind locTypeBind = locTypeBindService.getOne(new LambdaQueryWrapper<LocTypeBind>().eq(LocTypeBind::getLocId, originLoc.getId()).in(LocTypeBind::getTypeId, LocBindType.HEIGHT.list()));
+        LocTypeBind locTypeBind = locTypeBindService.getOne(new LambdaQueryWrapper<LocTypeBind>()
+                .eq(LocTypeBind::getLocId, originLoc.getId())
+                .in(LocTypeBind::getTypeId, LocBindType.HEIGHT.list()));
         if (locTypeBind == null) {
             throw new CoolException("搴撲綅绫诲瀷涓嶅瓨鍦�");
         }
@@ -684,8 +686,12 @@
         if (loc == null) {
             throw new CoolException("娌℃湁绌哄簱浣�");
         }
+        // 鑾峰彇鏂颁换鍔″彿
+        String taskNo = generateTaskNo(53L);
+        // 璁剧疆鏂颁换鍔″彿
+        task.setTaskNo(taskNo);
         //102鎷f枡姝ゅ闇�淇敼涓篧CS_CONTAINER_RECEIVE,瀹氭椂浠诲姟鏌ヨ鍚庯紝鑷姩涓嬪彂鍏ュ簱浠诲姟鑷矱SS
-        task.setTaskSts(TaskStsType.WCS_CONTAINER_RECEIVE.id);//1.鐢熸垚鍏ュ簱浠诲姟
+        task.setTaskSts(TaskStsType.GENERATE_IN.id);//1.鐢熸垚鍏ュ簱浠诲姟
         task.setTaskType(taskType);
         //鍘熷簱浣嶅彉鐩爣搴撲綅, 鍘熺珯鐐瑰彉鐩爣绔欑偣
         //todo 闇�纭鍘熺珯鐐逛负绌猴紝璇ユ�庝箞澶勭悊
@@ -694,6 +700,9 @@
         if (!taskService.updateById(task)) {
             throw new CoolException("鎷f枡澶辫触");
         }
+        // 鏇存柊浠诲姟鏄庣粏鏂颁换鍔″彿
+        UpdateWrapper<TaskDetl> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.set("task_no",taskNo).eq("task_id",task.getId());
         //搴撲綅鐘舵�佹敼涓洪绾﹀叆搴� R => S
         loc.setLocStsId(LocStsType.S.val());
         loc.setUpdateTime(new Date());

--
Gitblit v1.9.1