From bcb19e8c93c3cabf0d8eb3ee34ed819b3c5a10ef Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期一, 25 十一月 2024 13:14:11 +0800
Subject: [PATCH] #优化地图

---
 src/main/java/com/zy/asrs/controller/AgvMobileController.java |   42 +++++++++++++++++++++++++++++++++++-------
 1 files changed, 35 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
index 33a4f1e..bcd4567 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMobileController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
@@ -10,6 +10,7 @@
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.*;
 import com.zy.asrs.service.*;
+import com.zy.asrs.service.impl.OrderServiceImpl;
 import com.zy.common.web.BaseController;
 import io.swagger.models.auth.In;
 import lombok.Synchronized;
@@ -52,6 +53,8 @@
     private SnowflakeIdWorker snowflakeIdWorker;
     @Autowired
     private FlowLogService flowLogService;
+    @Autowired
+    private OrderServiceImpl orderService;
 
 
     /*
@@ -403,6 +406,9 @@
                 agvLocMastByContainerCode.setBarcode(barcode1);
                 agvLocMastService.updateById(agvLocMastByContainerCode);
             }
+            // 淇濆瓨璋冩暣璁板綍
+            AdjDetl adjDetl = new AdjDetl();
+
 
             return R.ok("缁存姢鎴愬姛");
         }
@@ -523,6 +529,7 @@
         List<HashMap<String,String>> dbList = (List<HashMap<String, String>>) params.get("dbList");
         params.get("dbList");
         Object mT = params.get("moveType");
+        String orderNo = params.get("orderNo").toString();
         String moveType = "";
         Integer ioType = 0;
         if (mT.equals("unAuto")) {
@@ -557,6 +564,7 @@
                 wrkDetl.setWrkNo(wrkMast.getWrkNo());
                 wrkDetl.sync(agvLocDetl);
                 wrkDetl.setSuppCode(agvLocDetl.getSuppCode());
+                wrkDetl.setModel(orderNo);
                 wrkDetl.setIoTime(now);
                 wrkDetl.setAppeUser(getUserId());
                 wrkDetl.setAppeTime(now);
@@ -565,10 +573,13 @@
                 if (!agvWrkDetlService.insert(wrkDetl)) {
                     throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
                 }
-
                 // 鏇存柊璁㈠崟
-                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
-//                FlowLog flowLog = new FlowLog();
+                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no",orderNo).eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
+                // 鍒ゆ柇璁㈠崟鏄惁瓒呴噺
+                if (orderDetl.getQty() >= orderDetl.getAnfme()) {
+                    throw new CoolException("璋冩嫧鍗�:" + orderNo + "鐨�<" + agvLocDetl.getMatnr() + ">宸插畬鎴愯皟鎷ㄦ暟閲�,璇锋鏌�!");
+                }
+                //                FlowLog flowLog = new FlowLog();
 //                flowLog.setFid(String.valueOf(flowId));
 //                flowLog.setSpare2(wrkMast.getWrkNo().toString());
 //                flowLog.setLocNo(wrkMast.getSourceLocNo());
@@ -595,8 +606,16 @@
 //                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
 //                }
                 orderDetl.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
-                if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
-                    throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
+                if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("order_no",orderNo).eq("source",33).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
+                    throw new CoolException("璁㈠崟鍙凤細{"+orderNo+"}鏇存柊璁㈠崟鏄庣粏澶辫触锛� 寮傚父鐗╂枡:"+agvLocDetl.getMatnr()+"(鍗婃垚鍝佽皟鎷ㄥ崟浠诲姟)" );
+                }
+                // 鏇存柊璁㈠崟鐘舵��
+                Order order = orderService.selectByNo(orderDetl.getOrderNo());
+                Long settle = order.getSettle();
+                if (settle == 1L) {
+                    if (!orderService.updateSettle(order.getId(),2L,getUserId())) {
+                        throw new CoolException("璁㈠崟鍙凤細{"+order.getOrderNo()+"}鏇存柊璁㈠崟鐘舵�侊細1-->2 澶辫触锛�(鍗婃垚鍝佽皟鎷ㄥ崟浠诲姟)" );
+                    }
                 }
             }
             // 鏇存柊婧愬簱浣�
@@ -615,6 +634,7 @@
         Date now = new Date();
         List<HashMap<String,String>> dbList = (List<HashMap<String, String>>) params.get("dbList");
         params.get("dbList");
+        String orderNo = params.get("orderNo").toString();
         for (HashMap<String, String> map : dbList) {
             String locNo = map.get("locNo");
             String barcode = map.get("suppCode");
@@ -645,11 +665,19 @@
                 // 鏇存柊璁㈠崟
                 // 鍏堟煡璇㈠簱璁㈠崟鏄庣粏 鎵�灞炵殑璁㈠崟
 
-                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("source",36).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
+                OrderDetl orderDetl = orderDetlService.selectOne(new EntityWrapper<OrderDetl>().eq("order_no",orderNo).eq("source",17).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()));
                 orderDetl.setQty(orderDetl.getQty() + agvLocDetl.getAnfme());
-                if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("source",36).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
+                if (!orderDetlService.update(orderDetl,new EntityWrapper<OrderDetl>().eq("order_no",orderNo).eq("source",17).eq("matnr", agvLocDetl.getMatnr()).eq("three_code",agvLocDetl.getThreeCode()))){
                     throw new CoolException("淇敼璁㈠崟鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"+agvLocDetl.getOrderNo()+agvLocDetl.getMatnr());
                 }
+                // 鏇存柊璁㈠崟鐘舵��
+                Order order = orderService.selectByNo(orderNo);
+                Long settle = order.getSettle();
+                if (settle == 1L) {
+                    if (!orderService.updateSettle(order.getId(),2L,getUserId())) {
+                        throw new CoolException("璁㈠崟鍙凤細{"+order.getOrderNo()+"}鏇存柊璁㈠崟鐘舵�侊細1-->2 澶辫触锛�(鍗婃垚鍝佽皟鎷ㄥ崟浠诲姟)" );
+                    }
+                }
             }
             // 鏇存柊婧愬簱浣�
             AgvLocMast locMast = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", locNo));

--
Gitblit v1.9.1