From 52805a2308f901610e3c2e26ad2212138bca8070 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期五, 28 六月 2024 14:50:24 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/phyzwms2' into phyzwms2

---
 src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 52 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
index 1a40d13..0207985 100644
--- a/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
+++ b/src/main/java/com/zy/asrs/task/handler/AutoMoveHandler.java
@@ -56,6 +56,12 @@
         return SUCCESS;
     }
 
+    public ReturnT<String> start4(AgvWrkMast agvWrkMast) {
+        // locType 1. 鑷姩锛� 2. 鎵嬪姩
+        doAutoMove3(agvWrkMast);
+        return SUCCESS;
+    }
+    //鏍规嵁搴撲綅鐨刲octype鍊煎彂閫佷换鍔�--寮冪敤
     private ReturnT<String> doAutoMove(AgvLocMast agvLocMast) {
         Date now = new Date();
         //鏌ヨ宸ヤ綔妗�
@@ -64,7 +70,7 @@
             throw new CoolException("褰撳墠"+agvLocMast.getBarcode()+"璐ф灦鐮佸凡鍦ㄥ伐浣滄。涓�");
         }
         //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
-        AgvLocMast LocMast = agvCommonService.getLocNo(3,agvLocMast.getLocType3());
+        AgvLocMast LocMast = agvCommonService.getLocNo(3,agvLocMast.getLocType3(),false,true);
         //鐢熸垚宸ヤ綔妗�
         AgvWrkMast mast = new AgvWrkMast();
         //宸ヤ綔鐘舵��
@@ -87,6 +93,7 @@
         mast.setAppeTime(now);
         mast.setModiUser(9527L);
         mast.setModiTime(now);
+        mast.setLogErrMemo("doAutoMove");
         if (!agvWrkMastService.insertByIncrease(mast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
         }
@@ -182,26 +189,58 @@
     private ReturnT<String> doAutoMove2(AgvWrkMast agvWrkMast) {
         Date now = new Date();
         //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
-        AgvLocMast locMast = agvCommonService.getLocNo(3,agvWrkMast.getCrnNo());
+        AgvLocMast locMast = agvCommonService.getLocNo(3,agvWrkMast.getCrnNo(),false,true);
         if (Cools.isEmpty(locMast)) {
             throw new CoolException("鏆傛棤搴撲綅");
+        }
+        AgvWrkMast workingMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", locMast.getLocNo()));
+        if (!Cools.isEmpty(workingMast)) {
+            throw new CoolException("褰撳墠搴撲綅姝e湪杩涜鍏ュ簱锛岃繘琛屼笅涓�娆¤疆璇�");
         }
         agvWrkMast.setWrkSts(201L);
         agvWrkMast.setLocNo(locMast.getLocNo());
         agvWrkMastService.updateById(agvWrkMast);
         //鏇存柊鐩爣搴撲綅鐘舵��
         updateAgvLocMast(locMast,"S");
+        AgvLocMast locMast1 = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", locMast.getLocNo()));
+        log.info("鑷姩璋冩嫧浠诲姟 ==> 婧愬簱浣嶏細{}锛岀洰鏍囧簱浣嶏細{},搴撲綅鐘舵�亄}",agvWrkMast.getSourceLocNo(),agvWrkMast.getLocNo(),locMast1.getLocSts());
 
         return SUCCESS;
     }
+
+    private ReturnT<String> doAutoMove3(AgvWrkMast agvWrkMast) {
+        Date now = new Date();
+        //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
+        AgvLocMast locMast = agvCommonService.getLocNo(3,agvWrkMast.getCrnNo(),false,false);
+        if (Cools.isEmpty(locMast)) {
+            throw new CoolException("鏆傛棤搴撲綅");
+        }
+        agvWrkMast.setWrkSts(201L);
+        agvWrkMast.setLocNo(locMast.getLocNo());
+        agvWrkMast.setLogErrMemo("start2-doAutoMove2");
+        agvWrkMastService.updateById(agvWrkMast);
+        //鏇存柊鐩爣搴撲綅鐘舵��
+        updateAgvLocMast(locMast,"S");
+
+        return SUCCESS;
+    }
+
     private ReturnT<String> doHandMove2(AgvWrkMast agvWrkMast) {
         Date now = new Date();
-        AgvBasDevp devpNo = agvCommonService.getDevpNo(3, 1, "Y", "Y");
+        String lev1 = agvWrkMast.getSourceLocNo().substring(agvWrkMast.getSourceLocNo().length() - 4).substring(0, 2);
+        AgvBasDevp devpNo = new AgvBasDevp();
+        if ("01".equals(lev1)) {
+            devpNo = agvCommonService.getDevpNo(3, 1, "Y", "Y");
+        } else {
+            devpNo = agvCommonService.getDevpNo(3, 4, "Y", "Y");
+        }
+
         if (Cools.isEmpty(devpNo)) {
             throw new CoolException("鏆傛棤绌洪棽鎺ラ┏浣�");
         }
         agvWrkMast.setWrkSts(201L);
         agvWrkMast.setLocNo(devpNo.getDevNo());
+        agvWrkMast.setLogErrMemo("start3-doHandMove2");
         agvWrkMastService.updateById(agvWrkMast);
         updateAgvBasDevp(devpNo,"S",null,agvWrkMast.getBarcode());
         return SUCCESS;
@@ -261,6 +300,7 @@
         mast.setAppeTime(now);
         mast.setModiUser(9527L);
         mast.setModiTime(now);
+        mast.setLogErrMemo("autoEmptyBack");
         if (!agvWrkMastService.insertByIncrease(mast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
         }
@@ -274,7 +314,7 @@
         Date now = new Date();
         AgvBasDevp agvBasDevp = agvBasDevpService.selectByDevNo(agvWrkMast.getSourceLocNo());
         //妫�绱㈢┖闂叉帴椹充綅锛岄�夋嫨鍚堥�傜殑鎺ラ┏浣�
-        AgvLocMast locMast = agvCommonService.getLocNo(3, 1);
+        AgvLocMast locMast = agvCommonService.getLocNo(3, 1,true,true);
         if (Cools.isEmpty(locMast)) {
             throw new CoolException("1妤兼殏鏃犵┖搴撲綅");
         }
@@ -283,6 +323,7 @@
         agvWrkMast.setLocNo(locMast.getLocNo());
         agvWrkMast.setModiUser(9527L);
         agvWrkMast.setModiTime(now);
+        agvWrkMast.setLogErrMemo("autoEmptyBack3");
         if (!agvWrkMastService.updateById(agvWrkMast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
         }
@@ -299,7 +340,7 @@
             throw new CoolException("褰撳墠"+agvLocMast.getBarcode()+"璐ф灦鐮佸凡鍦ㄥ伐浣滄。涓�");
         }
         //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
-        AgvLocMast LocMast = agvCommonService.getLocNo(3,1);
+        AgvLocMast LocMast = agvCommonService.getLocNo(3,1,true,true);
         //鐢熸垚宸ヤ綔妗�
         AgvWrkMast mast = new AgvWrkMast();
         //宸ヤ綔鐘舵��
@@ -322,6 +363,7 @@
         mast.setAppeTime(now);
         mast.setModiUser(9527L);
         mast.setModiTime(now);
+        mast.setLogErrMemo("autoEmptyBack2");
         if (!agvWrkMastService.insertByIncrease(mast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
         }
@@ -361,7 +403,7 @@
             ioType = 109;
         } else {
             //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
-            locMast = agvCommonService.getLocNo(3,1);
+            locMast = agvCommonService.getLocNo(3,1,true,true);
             locNo = locMast.getLocNo();
             wrkSts = 201L;
             ioType = 109;
@@ -389,6 +431,7 @@
         mast.setAppeTime(now);
         mast.setModiUser(9527L);
         mast.setModiTime(now);
+        mast.setLogErrMemo("autoEmptyBack4");
         if (!agvWrkMastService.insertByIncrease(mast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
         }
@@ -427,6 +470,7 @@
         mast.setAppeTime(now);
         mast.setModiUser(9527L);
         mast.setModiTime(now);
+        mast.setLogErrMemo("autoEmptyBack5");
         // 鍒ゆ柇 鎺ラ┏鐐规槸鍚﹁嚜鍔�
         if ("Y".equals(agvBasDevp.getAutoing())) {
             //宸ヤ綔鐘舵��
@@ -434,7 +478,7 @@
             //鍏ュ嚭搴撶被鍨�
             mast.setIoType(109);
             //妫�绱㈠簱浣嶏紝閫夋嫨鍚堥�傜殑搴撲綅
-            AgvLocMast locMast = agvCommonService.getLocNo(3,1);
+            AgvLocMast locMast = agvCommonService.getLocNo(3,1,true,true);
             mast.setLocNo(locMast.getLocNo());
             updateAgvLocMast(locMast,"S");
         } else {
@@ -483,6 +527,7 @@
         mast.setAppeTime(now);
         mast.setModiUser(9527L);
         mast.setModiTime(now);
+        mast.setLogErrMemo("autoEmptyBack6");
         if (!agvWrkMastService.insertByIncrease(mast)) {
             throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
         }

--
Gitblit v1.9.1