From 4e8b7012320bd30c1acfb36d20d7564c22890aa9 Mon Sep 17 00:00:00 2001
From: pjb <123456>
Date: 星期一, 10 三月 2025 12:57:58 +0800
Subject: [PATCH] 出库修改

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/apis/wcs/services/Impl/WcsApiServiceImpl.java |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 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 9d767e8..250c15d 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
@@ -88,7 +88,7 @@
             taskService.update(new LambdaUpdateWrapper<Task>()
                     .set(Task::getTaskSts, TaskStsType.WCS_CONTAINER_RECEIVE.id)
                     //杈撻�佺嚎鑺傜偣缂栫爜锛屼笉鏄簮搴撲綅
-//                    .set(Task::getOriginLoc, arrivedParam.getSlotCode())
+                    .set(Task::getOriginLoc, arrivedParam.getSlotCode())
                     .eq(Task::getBarcode, arrivedParam.getContainerCode()));
         } else {
             //瀹瑰櫒鍒拌揪鏃舵洿鏂颁换鍔$姸鎬佷负锛氬叆搴撳畬鎴愶紝瀹氭椂浠诲姟鏍规嵁鐘舵�佺爜鏇存柊搴撳瓨
@@ -126,8 +126,10 @@
                 .eq(Task::getTaskNo, callbackParam.getTaskCode()));
         if (!Collections.isEmpty(list)) {
             list.forEach(task -> {
+                // ESS鍙兘閰嶇疆涓�涓姸鎬佷笂鎶ユ帴鍙o紝鏍规嵁浠诲姟鍙峰垽鏂槸鍏ュ簱浠诲姟鎴栧嚭搴撲换鍔�
+                String taskType = task.getTaskType() > 100 ? "outStock":"inStock";
                 TaskStsType taskStsType = null;
-                if (stockType.equals("inStock")) { //鍏ュ簱浠诲姟
+                if (taskType.equals("inStock")) { //鍏ュ簱浠诲姟
                     if (callbackParam.getEventType().equals(EssTaskStatus.TASK_EVENT_TOTE_LOAD.event)) { //涓婃姤鍙栫鐘舵��
                         if (task.getTaskSts() == TaskStsType.WCS_CONVEYOR_START.id) {
                             taskStsType = TaskStsType.WCS_TOTE_LOAD;
@@ -169,8 +171,7 @@
                     }
                 } else { //鍑哄簱浠诲姟
                     if (callbackParam.getEventType().equals(EssTaskStatus.TASK_EVENT_TOTE_LOAD.event)) { //涓婃姤鍙栫鐘舵��
-                        //TODO 瀹氭椂鍣ㄥ紑鍚悗锛岃鍒犻櫎 || task.getTaskType() == TaskStsType.GENERATE_OUT.id
-                        if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT.id || task.getTaskSts() == TaskStsType.GENERATE_OUT.id) {
+                        if (task.getTaskSts() == TaskStsType.WCS_EXECUTE_OUT.id ) {
                             taskStsType = TaskStsType.WCS_EXECUTE_OUT_TOTE_LOAD;
                         } else {
                             String errMsg = "浠诲姟缂栧彿锛�" + task.getTaskNo() + "鐘舵�佷负涓嶅尮閰嶏紝" + "涓嶈兘鎵ц锛�" + TaskStsType.WCS_EXECUTE_OUT_TOTE_LOAD.desc + "浠诲姟";
@@ -197,7 +198,7 @@
                     }
 
                     //鏇存柊鍑哄簱鐘舵�佸強鐩稿叧瀛楁
-                    taskService.update(new LambdaUpdateWrapper<Task>()
+                    boolean update = taskService.update(new LambdaUpdateWrapper<Task>()
                             .set(Task::getRobotCode, callbackParam.getRobotCode())
                             .set(Task::getSysTaskCode, callbackParam.getSysTaskCode())
                             .set(Task::getTaskSts, taskStsType.id)
@@ -205,6 +206,10 @@
                             .set(Task::getTaskDesc, callbackParam.getMessage())
                             .eq(Task::getBarcode, callbackParam.getContainerCode())
                             .eq(Task::getTaskNo, callbackParam.getTaskCode()));
+
+                    if (!update) {
+                        throw new CoolException("浠诲姟鏇存柊澶辫触锛侊紒");
+                    }
 
                 }
 
@@ -300,10 +305,16 @@
      * @param request
      */
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void slapLightLogic(Map<String, Object> request) {
         String taskNo = request.get("taskNo").toString();
         String orderNo = request.get("orderNo").toString();
 
+        List<CacheSite> performs = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>().eq(CacheSite::getOrderNo, orderNo));
+        if (Objects.isNull(performs.stream().findFirst().get().getPlatformId())) {
+            throw new CoolException("璇锋墦鍗版槑缁嗭紝骞剁粦瀹氱洰鏍囬泦璐у尯");
+        }
+
         //* 1. 鍒ゆ柇褰撳墠瀹瑰櫒鏄惁杩樻湁鐗╂枡鏈嫞锛屾湭鎷e畬闂伅锛屾嫞瀹岄�氱煡瀹瑰櫒娴佸姩锛屽苟鐏伅
         SlapLightControlParam slapParam = new SlapLightControlParam();
         MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();

--
Gitblit v1.9.1