From 3c52f39678034ce21c1158a01b4885e3afde4443 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 04 一月 2025 17:08:00 +0800
Subject: [PATCH] #平库入库功能

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java |   39 +++++++++++++++++++++++++++++----------
 1 files changed, 29 insertions(+), 10 deletions(-)

diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
index 8b8387f..d01778e 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
@@ -1,11 +1,16 @@
 package com.zy.asrs.wms.asrs.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.zy.asrs.framework.exception.CoolException;
+import com.zy.asrs.wms.asrs.entity.Order;
 import com.zy.asrs.wms.asrs.entity.WaitPakin;
 import com.zy.asrs.wms.asrs.entity.enums.LocTypeHeightType;
+import com.zy.asrs.wms.asrs.entity.enums.OrderType;
 import com.zy.asrs.wms.asrs.entity.enums.TaskStsType;
 import com.zy.asrs.wms.asrs.entity.param.BatchMergeOrdersParam;
 import com.zy.asrs.wms.asrs.entity.param.GeneratePakInParam;
 import com.zy.asrs.wms.asrs.service.MobileService;
+import com.zy.asrs.wms.asrs.service.OrderService;
 import com.zy.asrs.wms.asrs.service.WaitPakinService;
 import com.zy.asrs.wms.asrs.service.WorkService;
 import com.zy.asrs.wms.system.entity.Host;
@@ -16,6 +21,7 @@
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
 
 @Service
 public class MobileServiceImpl implements MobileService {
@@ -27,9 +33,17 @@
     @Autowired
     private HostService hostService;
 
+    @Autowired
+    private OrderService orderService;
+
+
     @Override
-    @Transactional
+    @Transactional(rollbackFor = Exception.class)
     public boolean batchMergeOrders(BatchMergeOrdersParam ordersParam) {
+        Order order = orderService.getOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderNo, ordersParam.getOrderNo()));
+        if (Objects.isNull(order)) {
+            throw new CoolException("璁㈠崟涓嶅瓨鍦紒锛�");
+        }
 
         ArrayList<WaitPakin> waitPakins = new ArrayList<>();
         ordersParam.getOrderDetls().forEach(orderdetl -> {
@@ -44,20 +58,25 @@
             waitPakins.add(waitPakin);
         });
 
-        /*** 椤圭洰涓嬪彂娴佺▼ * 1. PDA缁勬嫋閫氱煡妗�* 2. 鐢熸垚浠诲姟妗�* 3. 閫氳繃瀹氭椂浠诲姟涓嬪彂鑷矱SS** */
         //缁勬嫋閫氱煡妗�
         waitPakins.forEach(pakin -> {
             waitPakinService.comb(pakin);
         });
 
-        //鐢熸垚浠诲姟妗�
-        GeneratePakInParam generatePakInParam = new GeneratePakInParam();
-        //褰撳墠娌℃湁璧峰绔欑偣锛岄粯璁�101锛� 楂樹綆浣嶉粯璁や紶浣庡簱浣�
-        generatePakInParam.setBarcode(ordersParam.getMergeNo())
-                .setOriginSite("101")
-                .setTaskType(TaskStsType.GENERATE_IN.id).setLocTypeHeight(LocTypeHeightType.LOW.id);
-        if (workService.generatePakIn(generatePakInParam)) {
-            return true;
+        // UTC鍏ュ簱鍗曟嵁(闈炲钩搴撳叆搴撳崟鎹�)
+        if (order.getOrderType() != OrderType.PK_IN_ORDER.id) {
+            /*** 椤圭洰涓嬪彂娴佺▼ * 1. PDA缁勬嫋閫氱煡妗�* 2. 鐢熸垚浠诲姟妗�* 3. 閫氳繃瀹氭椂浠诲姟涓嬪彂鑷矱SS** */
+            //鐢熸垚浠诲姟妗�
+            GeneratePakInParam generatePakInParam = new GeneratePakInParam();
+            //褰撳墠娌℃湁璧峰绔欑偣锛岄粯璁�101锛� 楂樹綆浣嶉粯璁や紶浣庡簱浣�
+            generatePakInParam.setBarcode(ordersParam.getMergeNo())
+                    .setOriginSite("101")
+                    .setTaskType(TaskStsType.GENERATE_IN.id).setLocTypeHeight(LocTypeHeightType.LOW.id);
+            if (workService.generatePakIn(generatePakInParam)) {
+                return true;
+            }
+        } else {
+            //fixme 骞冲簱鏄惁闇�瑕侀绾﹀叆搴�
         }
         return false;
     }

--
Gitblit v1.9.1