From d417e332b39e7da99f637e94ebacf199fb158a72 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期五, 31 五月 2024 18:16:50 +0800
Subject: [PATCH] #1

---
 src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java |   47 +++++++++++++++++++++++++++--------------------
 1 files changed, 27 insertions(+), 20 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
index 6db063c..003e38f 100644
--- a/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AgvWrkMastHandler.java
@@ -71,14 +71,18 @@
             agvWrkMastService.updateById(agvWrkMast);
             // 绌烘澘鍏ュ簱 璁剧疆搴撲綅鐘舵�佷负D.绌烘《/绌烘爤鏉�
             String locSts = agvWrkMast.getIoType() == 10 ? "D" : "F";
+
+            if (agvWrkMast.getIoType() != 111) {
+                //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
+                agvWrkMastLogService.save(agvWrkMast);
+                //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
+                agvWrkDetlLogService.save(wrkNo);
+            }
+
             switch (agvWrkMast.getIoType()){
                 case 10:
                     agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
-
-                    //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
-                    agvWrkMastLogService.save(agvWrkMast);
-                    //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
-                    agvWrkDetlLogService.save(wrkNo);
+                    agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
                     break;
                 case 109:
                     // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
@@ -88,12 +92,6 @@
                     } else {
                         agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
                     }
-
-                    //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
-                    agvWrkMastLogService.save(agvWrkMast);
-                    //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
-                    agvWrkDetlLogService.save(wrkNo);
-
                     // 鎺ラ┏浣� -- 搴撲綅
                     if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
                         agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
@@ -123,12 +121,6 @@
                     break;
                 case 113:
                     agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"D",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
-
-                    //鐢熸垚AGV宸ヤ綔鍘嗗彶妗�
-                    agvWrkMastLogService.save(agvWrkMast);
-                    //鐢熸垚AGV宸ヤ綔鏄庣粏鍘嗗彶妗�
-                    agvWrkDetlLogService.save(wrkNo);
-
                     // 鎺ラ┏浣� -- 搴撲綅
                     if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
                         agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
@@ -154,6 +146,7 @@
                     agvLocMastService.updateLocStsByLocNo(agvWrkMast.getSourceLocNo(),"O","",null);
                     break;
                 case 108:
+                case 121:
                     agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
                     //鏇存柊搴撳瓨鏄庣粏
                     agvLocDetlService.updateStock(agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo());
@@ -165,6 +158,7 @@
                     // 鎺ラ┏浣� -- 搴撲綅
                     if (agvWrkMast.getSourceLocNo().substring(0,2).equals("DB")) {
                         agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",(short)0);
+                        agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F","",agvWrkMast.getWhsType().shortValue(),"",(short)0);
                         // 搴撲綅 -- 鎺ラ┏浣� / 搴撲綅
                     } else {
                         //淇敼婧愬簱浣嶇姸鎬佷负O
@@ -175,12 +169,25 @@
                     agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
                     agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
                     break;
+                case 53:
+                    //淇敼宸ヤ綔鍏氭槑缁�
+                    //淇敼搴撳瓨淇℃伅
+                    List<AgvWrkDetl> agvWrkDetlList = agvWrkDetlService.selectList(new EntityWrapper<AgvWrkDetl>().eq("wrk_no", agvWrkMast.getWrkNo()));
+                    agvWrkDetlList.forEach(agvWrkDetl -> {
+                        AgvLocDetl agvLocDetl = agvLocDetlService.selectByMatnrAndBatchAndCsocodeAndisoCode(agvWrkMast.getLocNo(), agvWrkDetl.getMatnr(), agvWrkDetl.getBatch(), agvWrkDetl.getThreeCode(), agvWrkDetl.getDeadTime());
+                        if (!Cools.isEmpty(agvLocDetl)) {
+                            double updateAnfme = agvLocDetl.getAnfme() - agvWrkDetl.getAnfme();
+                            agvLocDetlService.updateAnfme(updateAnfme,agvLocDetl.getLocNo(),agvLocDetl.getMatnr(),agvLocDetl.getBatch(),agvLocDetl.getThreeCode(),agvLocDetl.getDeadTime());
+                        }
+                        //AgvLocDetl agvLocDetl = agvLocDetlService.selectLocdetl(agvWrkMast.getLocNo(),agvWrkDetl.getMatnr(),agvWrkDetl.getBatch(),agvWrkDetl.getThreeCode(),agvWrkDetl.getDeadTime());
+
+                    });
+                    agvLocMastService.updateLocStsByLocNo(agvWrkMast.getLocNo(),"F",agvWrkMast.getBarcode(),agvWrkMast.getWhsType().shortValue());
+                    agvBasDevpService.updateLocStsAndBarcodeByDevNo(agvWrkMast.getSourceLocNo(),"O","",agvWrkMast.getWhsType().shortValue());
+                    break;
                 default:
                     return null;
             }
-
-
-
             if (agvWrkMast.getIoType() != 111) {
                 //鍒犻櫎AGV宸ヤ綔妗�
                 agvWrkMastService.deleteById(wrkNo);

--
Gitblit v1.9.1