From dcb21dfbb8399aadfb5b2df9ba5caa0a065ea7ee Mon Sep 17 00:00:00 2001
From: 野心家 <1051256694@qq.com>
Date: 星期二, 31 十二月 2024 11:05:15 +0800
Subject: [PATCH] 改版2.0: 1.自动出库200站 2.自动出空板100站 3.自动移库

---
 src/main/java/com/zy/asrs/task/handler/AutomaticLibraryTransferHandler.java |   29 ++++++++++++++++++-----------
 1 files changed, 18 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/AutomaticLibraryTransferHandler.java b/src/main/java/com/zy/asrs/task/handler/AutomaticLibraryTransferHandler.java
index 1d73d98..5e78226 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutomaticLibraryTransferHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutomaticLibraryTransferHandler.java
@@ -45,7 +45,6 @@
         List<LocMast> locMastsO=locMastService.selectList(new EntityWrapper<LocMast>()
                 .eq("loc_sts","O").eq("lev1",1).orderBy("bay1",false));
         if(Cools.isEmpty(locMastsO)){
-            log.info("鑷姩绉诲簱娌℃湁绌哄簱浣嶏紝璇峰叧闂嚜鍔ㄥ簱浣嶅姛鑳�");
             return FAIL;
         }
         LocMast locMast1 = locMastsO.get(0);
@@ -136,7 +135,6 @@
         List<LocMast> locMastsO=locMastService.selectList(new EntityWrapper<LocMast>()
                 .eq("loc_sts","O").eq("lev1",2).orderBy("bay1",false));
         if(Cools.isEmpty(locMastsO)){
-            log.info("鑷姩绉诲簱娌℃湁绌哄簱浣嶏紝璇峰叧闂嚜鍔ㄥ簱浣嶅姛鑳�");
             return FAIL;
         }
         LocMast locMast1 = locMastsO.get(0);
@@ -225,7 +223,6 @@
         List<LocMast> locMastsO=locMastService.selectList(new EntityWrapper<LocMast>()
                 .eq("loc_sts","O").eq("lev1",3).orderBy("bay1",true));
         if(Cools.isEmpty(locMastsO)){
-            log.info("鑷姩绉诲簱娌℃湁绌哄簱浣嶏紝璇峰叧闂嚜鍔ㄥ簱浣嶅姛鑳�");
             return FAIL;
         }
         LocMast locMast1 = locMastsO.get(0);
@@ -318,21 +315,24 @@
             List<LocMast> locMastsF=locMastService.selectList(new EntityWrapper<LocMast>()
                     .eq("loc_sts",sts).eq("lev1",i).orderBy("bay1",boo));
             List<LocMast> locMastsO=locMastService.selectList(new EntityWrapper<LocMast>()
-                    .eq("loc_sts",sts).eq("lev1",i).orderBy("bay1",boo));
+                    .eq("loc_sts","O").eq("lev1",i).orderBy("bay1",boo));
             if(Cools.isEmpty(locMastsO)){
-                log.info("鑷姩绉诲簱娌℃湁绌哄簱浣嶏紝璇峰叧闂嚜鍔ㄥ簱浣嶅姛鑳�");
-                return FAIL;
+                continue;
             }
             LocMast locMast1 = locMastsO.get(0);
 
             LocMast locMast2 = locMastsF.get(locMastsF.size()-1);
-            if(locMast2.getBay1()>locMast1.getBay1()){
-                return FAIL;
+            if(i!=3&&locMast2.getBay1()>locMast1.getBay1()){
+                continue;
+            }else if(i==3&&locMast2.getBay1()<locMast1.getBay1()){
+                continue;
             }
 
             String locNo=null;
             for(LocMast locMast:locMastsF){
-                if(locMast.getBay1()<locMast1.getBay1()){
+                if(i!=3&&locMast.getBay1()<locMast1.getBay1()){
+                    locNo=locMast1.getLocNo();
+                }else if(i==3&&locMast.getBay1()>locMast1.getBay1()){
                     locNo=locMast1.getLocNo();
                 }
                 //鐢熸垚绉诲簱浠诲姟
@@ -349,10 +349,16 @@
                     wrkMast.setCrnNo(1);
                     wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣�
                     wrkMast.setLocNo(locNo); // 鐩爣搴撲綅
-                    wrkMast.setFullPlt("Y"); // 婊℃澘
+                    if(i!=3){
+                        wrkMast.setFullPlt("Y"); // 婊℃澘
+                        wrkMast.setEmptyMk("N"); // 绌烘澘
+                    }else{
+                        wrkMast.setFullPlt("N"); // 婊℃澘
+                        wrkMast.setEmptyMk("Y"); // 绌烘澘
+                    }
                     wrkMast.setPicking("N"); // 鎷f枡
                     wrkMast.setExitMk("N"); // 閫�鍑�
-                    wrkMast.setEmptyMk("N"); // 绌烘澘
+
                     wrkMast.setBarcode(locMast.getBarcode()); // 鎵樼洏鐮�
                     wrkMast.setLinkMis("N");
                     wrkMast.setAppeTime(new Date());
@@ -366,6 +372,7 @@
                         List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo()));
                         for (LocDetl locDetl : locDetls) {
                             WrkDetl wrkDetl = new WrkDetl();
+                            wrkDetl.sync(locDetl);
                             wrkDetl.setWrkNo(workNo);
                             wrkDetl.setIoTime(new Date());
                             wrkDetl.setAnfme(locDetl.getAnfme());

--
Gitblit v1.9.1