From f08dd93e49e8461f362c8f45f17fe10e0fbdebec Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期一, 12 一月 2026 18:54:58 +0800
Subject: [PATCH] #新增和得码入库流程,渝程进仓后续下发货主转换

---
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |  103 +++++++++++++++++++++++++++++++++++----------------
 1 files changed, 71 insertions(+), 32 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 8228748..dfe6818 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -29,6 +29,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
 import javax.annotation.Resource;
 import java.util.*;
@@ -917,44 +918,37 @@
         }
 
         Date now = new Date();
-
+        boolean result = false;
         String orderNo = null;
+        String orderNo1 = null;
         for (CombParam.CombMat combMat : param.getCombMats()) {
             if(combMat.getSupplier().equals("1")){
-                List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
+                List<OrderDetlPakin> orderDetlPakins2 = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
                         .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
-                        .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
-                        .eq("standby3", combMat.getStandby3()).eq("box_type2","BU-00001"));//1鏃舵绱㈠拰寰�
-                if (orderDetlPakins.size() > 0) {
-                    orderNo = orderDetlPakins.get(0).getOrderNo();
-                    combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
-                    combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
-                    combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
-                    combMat.setMemo(orderDetlPakins.get(0).getMemo());
-                    combMat.setSupp(orderDetlPakins.get(0).getSupp());
-                    combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
-                    combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
+                        .eq("box_type2","BU-00001"));
+                if (orderDetlPakins2.size() > 0) {
+                    orderNo1 = orderDetlPakins2.get(0).getOrderNo();
                 } else {
                     throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
                 }
-            }else{
-                //0
-                List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
-                        .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
-                        .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
-                        .eq("standby3", combMat.getStandby3()).eq("box_type2","shyucheng.test"));
-                if (orderDetlPakins.size() > 0) {
-                    orderNo = orderDetlPakins.get(0).getOrderNo();
-                    combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
-                    combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
-                    combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
-                    combMat.setMemo(orderDetlPakins.get(0).getMemo());
-                    combMat.setSupp(orderDetlPakins.get(0).getSupp());
-                    combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
-                    combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
-                } else {
-                    throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
-                }
+                result = true;
+            }
+            //0
+            List<OrderDetlPakin> orderDetlPakins = orderDetlPakinService.selectList(new EntityWrapper<OrderDetlPakin>()
+                    .eq("matnr", combMat.getMatnr()).eq("box_type3", combMat.getOrderNo())
+                    .eq("standby1", combMat.getStandby1()).eq("standby2", combMat.getStandby2())
+                    .eq("standby3", combMat.getStandby3()));
+            if (orderDetlPakins.size() > 0) {
+                orderNo = orderDetlPakins.get(0).getOrderNo();
+                combMat.setBoxType1(orderDetlPakins.get(0).getBoxType1());
+                combMat.setBoxType2(orderDetlPakins.get(0).getBoxType2());
+                combMat.setBoxType3(orderDetlPakins.get(0).getBoxType3());
+                combMat.setMemo(orderDetlPakins.get(0).getMemo());
+                combMat.setSupp(orderDetlPakins.get(0).getSupp());
+                combMat.setSuppCode(orderDetlPakins.get(0).getSuppCode());
+                combMat.setManu(orderDetlPakins.get(0).getManu());//浠撳簱缂栫爜
+            } else {
+                throw new CoolException("鏈煡璇㈠埌鐩稿叧璁㈠崟===>>" + param.getBarcode());
             }
         }
 
@@ -965,10 +959,18 @@
         if (Cools.isEmpty(order) || order.getSettle() > 2) {
             throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
         }
+        Order order1 = orderService.selectByNo(orderNo);
+        if (Cools.isEmpty(order1) || order1.getSettle() > 2) {
+            throw new CoolException("鍗曟嵁缂栧彿宸茶繃鏈�");
+        }
+        if(result){
+            order1.setPayType(1);//  y->h
+            order1.setSalesman(orderNo1);
+            orderService.updateById(order1);
+        }
         // 鐢熸垚鍏ュ簱閫氱煡妗�
         List<DetlDto> detlDtos = new ArrayList<>();
         param.getCombMats().forEach(elem -> {
-
             // 璁㈠崟鏄庣粏鏁伴噺鏍¢獙
 //                OrderDetl orderDetl = orderDetlService.selectItem(order.getId(), elem.getMatnr(), elem.getBatch());
             OrderDetl orderDetl = OrderInAndOutUtil.selectItem(Boolean.TRUE, order.getId(), elem.getMatnr(), elem.getBatch(),elem.getBrand(),elem.getStandby1(),elem.getStandby2(),elem.getStandby3(),
@@ -1679,4 +1681,41 @@
             throw new CoolException(locDetl.getLocNo() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
         }
     }
+    @Override
+    public void agvUnlockLoc(AgvUnlockLoc agvUnlockLoc){
+        Date now = new Date();
+        if(agvUnlockLoc.getFloorNo().equals(1)){
+            LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",agvUnlockLoc.getPositionCode()));
+            if(locMast != null){
+                locMast.setLocSts("O");
+                locMast.setBarcode("");
+                locMast.setIoTime(now);
+                locMast.setModiTime(now);
+                if (!locMastService.updateById(locMast)) {
+                    throw new CoolException(agvUnlockLoc.getPositionCode() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+                }
+            }
+        }else{
+            LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",agvUnlockLoc.getPositionCode()));
+            AgvBindCtnrAndBinTwoParam agvBindCtnrAndBinTwoParam = new AgvBindCtnrAndBinTwoParam();
+            agvBindCtnrAndBinTwoParam.setReqCode(String.valueOf(snowflakeIdWorker.nextId()));
+            agvBindCtnrAndBinTwoParam.setPodcode(agvUnlockLoc.getPodcode());
+            agvBindCtnrAndBinTwoParam.setPositionCode(agvUnlockLoc.getPositionCode());
+            agvBindCtnrAndBinTwoParam.setIndBind("0");;
+            ReturnT<String> resultBind = new PostMesDataUtils().postMesDataArmGrating("AGV搴撲綅瑙g粦",
+                    AgvConstant.AGV_URL+"/"+AgvConstant.AGV_hikRpcService,AgvConstant.getAGVADAPTOR(2), agvBindCtnrAndBinTwoParam);
+            if (resultBind.getCode()!=1){
+                if(locMast != null){
+                    locMast.setLocSts("O");
+                    locMast.setBarcode("");
+                    locMast.setIoTime(now);
+                    locMast.setModiTime(now);
+                    if (!locMastService.updateById(locMast)) {
+                        throw new CoolException(agvUnlockLoc.getPositionCode() + "搴撲綅涓嶆槸鍦ㄥ簱鐘舵��");
+                    }
+                }
+            }
+        }
+
+    }
 }

--
Gitblit v1.9.1