From 875a183c5d5a12a4ba5c8d37559295ac1ce6cce3 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期三, 09 七月 2025 21:13:11 +0800
Subject: [PATCH] 播种流程优化

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java |   52 +++++++++++++++++++++++++++-------------------------
 1 files changed, 27 insertions(+), 25 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java
index 939b96d..654aad2 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java
@@ -107,33 +107,36 @@
             if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT_ARRIVED.id
             || task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT_TASK_DONE.id ) {
                 // 鍒拌揪鎷i�変綅锛屾帶鍒舵挱绉嶅浜伅
-                    List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>()
-                            .eq(CacheSite::getBarcode, task.getBarcode()));
-                    if(cacheSites.size() == 0) {
+                CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>()
+                        .eq(CacheSite::getChannel, task.getTargetSite())
+                        .isNull(CacheSite::getOrderId).orderByAsc(CacheSite::getId));
+//                List<CacheSite> cacheSites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>()
+//                            .eq(CacheSite::getBarcode, task.getBarcode()));
+                    if(Objects.isNull(cacheSite)) {
                         log.error("鏉$爜锛歿}锛屾湭鎵惧埌鎾澧欎寒鐏�",task.getBarcode());
                         throw new CoolException("鏈壘鍒版挱绉嶅");
                     }
-                    for (CacheSite cacheSite:cacheSites) {
-                        // 鑾峰彇浠诲姟鏄庣粏鏁伴噺
-                        List<TaskDetl> taskDetlByTaskId = taskDetlService.getTaskDetlByTaskId(task.getId());
-                        int sum = (int)taskDetlByTaskId.stream().mapToDouble(TaskDetl::getAnfme).sum();
-                        SlapLightControlParam slapLightControlParam = new SlapLightControlParam();
-                        slapLightControlParam
-                                .setControllerCode(cacheSite.getMemo())
-                                .setTagCode(cacheSite.getSiteNo())
-                                .setColor("GREEN")
-                                .setIndex(cacheSite.getIndex())
-                                .setMode("LIGHT")
-                                .setDisplay(sum + "");
-                        // 鍙戣捣浜伅璇锋眰
-                        log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅涓嬪彂",task.getTaskNo(), JSONObject.toJSONString(slapLightControlParam));
-                        CommonReponse response = HttpEssUtils.post("鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅", HttpEssUtils.PLT_SEND_COMMAND, slapLightControlParam);
-                        if (response.getCode().equals(0)) {
-                            log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅鎴愬姛",task.getTaskNo(),cacheSite.getSiteNo());
-                        } else {
-                            log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅澶辫触",task.getTaskNo(),cacheSite.getSiteNo());
-                        }
-                    }
+
+                // 鑾峰彇浠诲姟鏄庣粏鏁伴噺
+                List<TaskDetl> taskDetlByTaskId = taskDetlService.getTaskDetlByTaskId(task.getId());
+                int sum = (int)taskDetlByTaskId.stream().mapToDouble(TaskDetl::getAnfme).sum();
+                SlapLightControlParam slapLightControlParam = new SlapLightControlParam();
+                slapLightControlParam
+                        .setControllerCode(cacheSite.getMemo())
+                        .setTagCode(cacheSite.getSiteNo())
+                        .setColor("GREEN")
+                        .setIndex(cacheSite.getIndex())
+                        .setMode("LIGHT")
+                        .setDisplay(sum + "");
+                // 鍙戣捣浜伅璇锋眰
+                log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅涓嬪彂",task.getTaskNo(), JSONObject.toJSONString(slapLightControlParam));
+                CommonReponse response = HttpEssUtils.post("鍒拌揪鎷i�変綅锛屾挱绉嶅浜伅", HttpEssUtils.PLT_SEND_COMMAND, slapLightControlParam);
+                if (response.getCode().equals(0)) {
+                    log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅鎴愬姛",task.getTaskNo(),cacheSite.getSiteNo());
+                } else {
+                    log.info("浠诲姟{}鍒拌揪鎷i�変綅锛屾挱绉嶅{}浜伅澶辫触",task.getTaskNo(),cacheSite.getSiteNo());
+                }
+
                 boolean update = taskService.update(new LambdaUpdateWrapper<Task>()
                         .set(Task::getTaskSts, TaskStsType.WAVE_SEED.id)
                         .set(Task::getOriginSite, arrivedParam.getSlotCode())
@@ -141,7 +144,6 @@
                 if (!update) {
                     throw new CoolException("瀹瑰櫒鍒拌揪浠诲姟鏇存柊澶辫触锛侊紒");
                 }
-
             } else if(task.getTaskSts().equals(TaskStsType.UPDATED_OUT.id)) {
                 ConveyorStarParam conveyorStarParam = new ConveyorStarParam();
                 conveyorStarParam.setSlotCode(task.getOriginSite())

--
Gitblit v1.9.1