From 5a8efb144853cf4221d2e0396b2315f108b7212d Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期四, 10 三月 2022 15:40:14 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   75 ++++++++++++++++++++++++-------------
 1 files changed, 48 insertions(+), 27 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 5fd8ffb..04b7ef9 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -661,6 +661,8 @@
                     if (wrkMast.getWrkSts() == 3L) {
                         this.carMoveIn(wrkMast, wrkMast.getSteNo());
                     }
+                    // 4.鍫嗗灈鏈烘惉杩愯揣鐗�
+
                 }
 
             }
@@ -712,7 +714,7 @@
             if (!MessageQueue.offer(SlaveType.Ste, steNo, new Task(2, steCommand))) {
                 log.error("绌挎杞﹀懡浠や笅鍙戝け璐ワ紝绌挎杞﹀彿={}锛屼换鍔℃暟鎹�={}", steNo, JSON.toJSON(steCommand));
             } else {
-                // 淇敼宸ヤ綔妗g姸鎬� 2.璁惧涓婅蛋 => 3.灏忚溅寰呮惉
+                // 淇敼宸ヤ綔妗g姸鎬� 缁戝畾绌挎杞�
                 wrkMast.setSteNo(steNo);
                 wrkMast.setModiTime(new Date());
                 if (wrkMastMapper.updateById(wrkMast) == 0) {
@@ -732,37 +734,39 @@
         if (steProtocol == null) { return; }
         if (steProtocol.getStatusType().equals(SteStatusType.IDLE)) {
 
-            String locNo = Utils.append(steProtocol.getRow(), steProtocol.getBay(), steProtocol.getLev());
-            LocMast locMast = locMastService.selectById(locNo);
+            LocMast locMast;
+            if (wrkMast.getWrkSts() <= 10) {
+                locMast = locMastService.selectById(wrkMast.getLocNo());
+                // 鍫嗗灈鏈哄懡浠や笅鍙戝尯 --------------------------------------------------------------------------
+                CrnCommand crnCommand = new CrnCommand();
+                crnCommand.setCrnNo(locMast.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
+                crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
+                crnCommand.setAckFinish((short) 0);  // 浠诲姟瀹屾垚纭浣�
+                crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡:  搴撲綅绉昏浆
+                crnCommand.setSourcePosX(steProtocol.getRow());     // 婧愬簱浣嶆帓
+                crnCommand.setSourcePosY(steProtocol.getBay());     // 婧愬簱浣嶅垪
+                crnCommand.setSourcePosZ(steProtocol.getLev());     // 婧愬簱浣嶅眰
+                crnCommand.setDestinationPosX(Utils.getGroupRow(locMast.getLocNo()).shortValue());     // 鐩爣搴撲綅鎺�
+                crnCommand.setDestinationPosY(locMast.getBay1().shortValue());     // 鐩爣搴撲綅鍒�
+                crnCommand.setDestinationPosZ(locMast.getLev1().shortValue());     // 鐩爣搴撲綅灞�
+                if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) {
+                    log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand));
+                } else {
 
-            // 鍫嗗灈鏈哄懡浠や笅鍙戝尯 --------------------------------------------------------------------------
-            CrnCommand crnCommand = new CrnCommand();
-            crnCommand.setCrnNo(locMast.getCrnNo()); // 鍫嗗灈鏈虹紪鍙�
-            crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
-            crnCommand.setAckFinish((short) 0);  // 浠诲姟瀹屾垚纭浣�
-            crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡:  搴撲綅绉昏浆
-            crnCommand.setSourcePosX(steProtocol.getRow());     // 婧愬簱浣嶆帓
-            crnCommand.setSourcePosY(steProtocol.getBay());     // 婧愬簱浣嶅垪
-            crnCommand.setSourcePosZ(steProtocol.getLev());     // 婧愬簱浣嶅眰
-            crnCommand.setDestinationPosX(locMast.getRow1().shortValue());     // 鐩爣搴撲綅鎺�
-            crnCommand.setDestinationPosY(locMast.getBay1().shortValue());     // 鐩爣搴撲綅鍒�
-            crnCommand.setDestinationPosZ(locMast.getLev1().shortValue());     // 鐩爣搴撲綅灞�
-            if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) {
-                log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand));
-            } else {
-
-                // 淇敼宸ヤ綔妗g姸鎬� 3.灏忚溅寰呮惉 => 4.杩佸叆灏忚溅
-                Date now = new Date();
-                wrkMast.setWrkSts(4L);
-                wrkMast.setCrnStrTime(now);
-                wrkMast.setModiTime(now);
-                if (wrkMastMapper.updateById(wrkMast) == 0) {
-                    log.error("淇敼宸ヤ綔妗g姸鎬� 3.灏忚溅寰呮惉 => 4.杩佸叆灏忚溅 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
+                    // 淇敼宸ヤ綔妗g姸鎬� 3.灏忚溅寰呮惉 => 4.杩佸叆灏忚溅
+                    Date now = new Date();
+                    wrkMast.setWrkSts(4L);
+                    wrkMast.setCrnStrTime(now);
+                    wrkMast.setModiTime(now);
+                    if (wrkMastMapper.updateById(wrkMast) == 0) {
+                        log.error("淇敼宸ヤ綔妗g姸鎬� 3.灏忚溅寰呮惉 => 4.杩佸叆灏忚溅 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
+                    }
                 }
+
             }
 
-        }
 
+        }
     }
 
     /**
@@ -1086,6 +1090,23 @@
                             }
                         }
                     }
+                // 杩佸叆灏忚溅 瀹屾垚
+                } else if (wrkMast.getWrkSts() == 4) {
+                    // 4.杩佸叆灏忚溅 ==> 6.灏忚溅寰呭叆
+                    wrkMast.setWrkSts(6L);
+                    Date now = new Date();
+                    wrkMast.setCrnEndTime(now);
+                    wrkMast.setModiTime(now);
+                    // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満
+                    if (wrkMastMapper.updateById(wrkMast) > 0) {
+                        // 鍫嗗灈鏈哄浣�
+                        crnThread.setResetFlag(true);
+                    } else {
+                        log.error("淇敼宸ヤ綔妗g姸鎬� 4.杩佸叆灏忚溅 => 6.灏忚溅寰呭叆 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
+                    }
+                // 杩佸嚭灏忚溅 瀹屾垚
+                } else if (wrkMast.getWrkSts() == 5) {
+
                 }
             }
         }

--
Gitblit v1.9.1