From dea9852bb63dd54331819ac18d623143fc086b0c Mon Sep 17 00:00:00 2001
From: zhangchao <zc857179121@qq.com>
Date: 星期二, 05 十一月 2024 09:11:57 +0800
Subject: [PATCH] Excel导出优化

---
 src/main/java/com/zy/asrs/controller/AgvMobileController.java |   90 +++++++++++++++++++++++++++++---------------
 1 files changed, 59 insertions(+), 31 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
index e1f9782..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,38 +573,49 @@
                 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();
-                flowLog.setFid(String.valueOf(flowId));
-                flowLog.setSpare2(wrkMast.getWrkNo().toString());
-                flowLog.setLocNo(wrkMast.getSourceLocNo());
-                flowLog.setSpare1(barcode);
-                flowLog.setOpType(5L);
-                flowLog.setOrderNo(orderDetl.getOrderNo());
-                flowLog.setThreeCode(orderDetl.getThreeCode());
-                flowLog.setMatnr(agvLocDetl.getMatnr());
-                flowLog.setMaktx(agvLocDetl.getMaktx());
-                flowLog.setOrderPrevious(orderDetl.getAnfme());
-                flowLog.setOrderCurrent(orderDetl.getAnfme());
-                flowLog.setOrderChanged(0.0);
-
-                flowLog.setQtyPrevious(orderDetl.getQty());
-                flowLog.setQtyCurrent(orderDetl.getQty() + agvLocDetl.getAnfme());
-                flowLog.setQtyChanged(agvLocDetl.getAnfme());
-
-                flowLog.setLocPrevious(agvLocDetl.getAnfme());
-                flowLog.setLocCurrent(0.0d);
-                flowLog.setLocChanged(agvLocDetl.getAnfme());
-                flowLog.setUserId(getUserId());
-                flowLog.setAppeTime(now);
-                if (!flowLogService.insert(flowLog)) {
-                    throw new CoolException("鍚屾鍗婃垚鍝佽皟鎷ㄥ崟娴佹按璁板綍澶辫触");
+                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());
+//                flowLog.setSpare1(barcode);
+//                flowLog.setOpType(5L);
+//                flowLog.setOrderNo(orderDetl.getOrderNo());
+//                flowLog.setThreeCode(orderDetl.getThreeCode());
+//                flowLog.setMatnr(agvLocDetl.getMatnr());
+//                flowLog.setMaktx(agvLocDetl.getMaktx());
+//                flowLog.setOrderPrevious(orderDetl.getAnfme());
+//                flowLog.setOrderCurrent(orderDetl.getAnfme());
+//                flowLog.setOrderChanged(0.0);
+//
+//                flowLog.setQtyPrevious(orderDetl.getQty());
+//                flowLog.setQtyCurrent(orderDetl.getQty() + agvLocDetl.getAnfme());
+//                flowLog.setQtyChanged(agvLocDetl.getAnfme());
+//
+//                flowLog.setLocPrevious(agvLocDetl.getAnfme());
+//                flowLog.setLocCurrent(0.0d);
+//                flowLog.setLocChanged(agvLocDetl.getAnfme());
+//                flowLog.setUserId(getUserId());
+//                flowLog.setAppeTime(now);
+//                if (!flowLogService.insert(flowLog)) {
+//                    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