From ef65fdf19ef8e0f2e75ee1f25710f008634f98d3 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期三, 26 十月 2022 13:09:41 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  136 ++++-----------------------------------------
 1 files changed, 13 insertions(+), 123 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 c4be203..20bbaa4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1336,7 +1336,7 @@
             steCommand.setTaskNo(wrkMast.getWrkNo()); // 宸ヤ綔鍙�
             steCommand.setTaskMode(SteTaskModeType.findWaiting(steProtocol.getRow().intValue())); // 浠诲姟妯″紡:  鍘昏繎鐐� 绛夊緟鍫嗗灈鏈哄弶鍙�
 
-            steCommand.setRow(Utils.getGroupRow(steProtocol.getRow().intValue()).shortValue());
+            steCommand.setRow(Utils.getGroupRow(steProtocol.getRow().intValue(), true).shortValue());
             steCommand.setBay(steProtocol.getBay());
             steCommand.setLev(steProtocol.getLev());
 
@@ -1656,7 +1656,7 @@
                             }
                         } else {
                             // 鍒ゆ柇鏄惁闇�瑕佸皬杞﹀叆搴�
-                            if (locMastService.isOutMost(wrkMast.getLocNo())) {
+                            if (locMastService.isOutMost(wrkMast.getLocNo(), true)) {
                                 // ==> 9.鍏ュ簱瀹屾垚
                                 wrkMast.setWrkSts(9L);
                                 Date now = new Date();
@@ -1797,128 +1797,16 @@
                     }
                 // 搴撲綅绉昏浆
                 } else {
-                    if (wrkMast.getWrkSts() == 16) {
-                        Date now = new Date();
-                        if (locMastService.isOutMost(wrkMast.getLocNo())) {
-                            // 16.鍚婅溅鍑哄簱涓� ==> 9.鍏ュ簱瀹屾垚
-                            wrkMast.setWrkSts(9L);
-                            wrkMast.setCrnEndTime(now);
-                        } else {
-                            // 16.鍚婅溅鍑哄簱涓� ==> 9.鍏ュ簱瀹屾垚
-                            wrkMast.setWrkSts(9L);
-                        }
-                        wrkMast.setModiTime(now);
-                        // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満
-                        if (wrkMastMapper.updateById(wrkMast) > 0) {
-                            // 鍫嗗灈鏈哄浣�
-                            crnThread.setResetFlag(true);
-                        } else {
-                            log.error("淇敼宸ヤ綔妗g姸鎬� 16.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
-                        }
-                    } 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);
-                            // 绌挎杞﹂噸鏂板畾浣嶆帓鍒楀眰
-                            SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, wrkMast.getSteNo());
-                            if (!steThread.confirmPos()) {
-                                log.error("{}鍙风┛姊溅閲嶆柊瀹氫綅澶辫触锛佷綔涓氬伐浣滄。浠诲姟鍙凤細{}", wrkMast.getSteNo(), wrkMast.getWrkNo());
-                            }
-                            // 绌挎杞﹀幓寰呮満浣�
-                            BasSte basSte = basSteService.selectById(wrkMast.getSteNo());
-                            SteCommand steCommand = new SteCommand();
-                            steCommand.setSteNo(wrkMast.getSteNo()); // 绌挎杞︾紪鍙�
-                            steCommand.setTaskNo(9999); // 宸ヤ綔鍙�
-                            steCommand.setTaskMode(SteTaskModeType.findWaiting(basSte.getRow())); // 浠诲姟妯″紡:  鍘昏繎鐐� 绛夊緟鍫嗗灈鏈哄弶鍙�
-//                        steCommand.setRow(Utils.getGroupRow(steProtocol.getRow().intValue()).shortValue());
-//                        steCommand.setBay(steProtocol.getBay());
-//                        steCommand.setLev(steProtocol.getLev());
-                            if (!MessageQueue.offer(SlaveType.Ste, wrkMast.getSteNo(), new Task(2, steCommand))) {
-                                log.error("绌挎杞﹀緟鏈轰綅鍛戒护涓嬪彂澶辫触锛岀┛姊溅鍙�={}锛屼换鍔℃暟鎹�={}", wrkMast.getSteNo(), JSON.toJSON(steCommand));
-                            }
-                        } else {
-                            log.error("淇敼宸ヤ綔妗g姸鎬� 4.杩佸叆灏忚溅 => 6.灏忚溅寰呭叆 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
-                        }
-                        // 鍏ュ簱 ===>> 杩佸嚭灏忚溅 瀹屾垚
-                    } else if (wrkMast.getWrkSts() == 7){
-                        // 鍒ゆ柇鏄惁闇�瑕佸皬杞﹀叆搴�
-                        if (locMastService.isOutMost(wrkMast.getLocNo())) {
-                            // ==> 9.鍏ュ簱瀹屾垚
-                            wrkMast.setWrkSts(9L);
-                            Date now = new Date();
-                            wrkMast.setCrnEndTime(now);
-                            wrkMast.setModiTime(now);
-                            // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満
-                            if (wrkMastMapper.updateById(wrkMast) > 0) {
-                                // 鍫嗗灈鏈哄浣�
+                    if (!locMastService.isShuttle(wrkMast.getLocNo())) {
+                        if (wrkMast.getWrkSts() == 16 && wrkMast.getIoType() == 11){
+                            // 鏇存柊宸ヤ綔妗g姸鎬佷负 17.鍑哄簱瀹屾垚
+                            wrkMast.setWrkSts(17L);
+                            wrkMast.setCrnEndTime(new Date());
+                            if (wrkMastMapper.updateById(wrkMast) != 0) {
+                                // 澶嶄綅鍫嗗灈鏈�
                                 crnThread.setResetFlag(true);
                             } else {
-                                log.error("淇敼宸ヤ綔妗g姸鎬� 7.鍚婅溅鍏ュ簱涓� => 9.鍏ュ簱瀹屾垚 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
-                            }
-                        } else {
-                            // 缁欑┛姊溅涓嬪彂鍛戒护
-                            Integer steNo = wrkMast.getSteNo();
-                            SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, steNo);
-                            SteProtocol steProtocol = steThread.getSteProtocol();
-                            if (steProtocol == null) { continue; }
-                            if (steProtocol.isIdle()) {
-                                // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
-                                SteCommand steCommand = new SteCommand();
-                                steCommand.setSteNo(steNo); // 绌挎杞︾紪鍙�
-                                steCommand.setTaskNo(wrkMast.getWrkNo()); // 宸ヤ綔鍙�
-                                steCommand.setTaskMode(SteTaskModeType.findInByLoc(wrkMast.getLocNo())); // 浠诲姟妯″紡: 鎼叆搴�
-                                if (!MessageQueue.offer(SlaveType.Ste, steNo, new Task(2, steCommand))) {
-                                    log.error("绌挎杞﹀懡浠や笅鍙戝け璐ワ紝绌挎杞﹀彿={}锛屼换鍔℃暟鎹�={}", steNo, JSON.toJSON(steCommand));
-                                } else {
-                                    // 淇敼宸ヤ綔妗g姸鎬� 7.鍚婅溅鍏ュ簱涓� => 8.灏忚溅鎼叆搴�
-                                    wrkMast.setWrkSts(8L);
-                                    Date now = new Date();
-                                    wrkMast.setCrnEndTime(now);
-                                    wrkMast.setModiTime(now);
-                                    if (wrkMastMapper.updateById(wrkMast) > 0) {
-                                        // 鍫嗗灈鏈哄浣�
-                                        crnThread.setResetFlag(true);
-                                    } else {
-                                        log.error("淇敼宸ヤ綔妗g姸鎬� 7.鍚婅溅鍏ュ簱涓� => 8.灏忚溅鎼叆搴� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
-                                    }
-                                }
-                            }
-                        }
-                    } else if (wrkMast.getWrkSts() == 13) {
-                        // 缁欑┛姊溅涓嬪彂鍛戒护
-                        Integer steNo = wrkMast.getSteNo();
-                        SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, steNo);
-                        SteProtocol steProtocol = steThread.getSteProtocol();
-                        if (steProtocol == null) { continue; }
-                        // 绌挎杞﹂噸鏂板畾浣嶆帓鍒楀眰
-                        if (!steThread.confirmPos()) {
-                            log.error("{}鍙风┛姊溅閲嶆柊瀹氫綅澶辫触锛佷綔涓氬伐浣滄。浠诲姟鍙凤細{}", wrkMast.getSteNo(), wrkMast.getWrkNo());
-                        }
-                        // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
-                        SteCommand steCommand = new SteCommand();
-                        steCommand.setSteNo(steNo); // 绌挎杞︾紪鍙�
-                        steCommand.setTaskNo(wrkMast.getWrkNo()); // 宸ヤ綔鍙�
-                        steCommand.setTaskMode(SteTaskModeType.findOutByLoc(wrkMast.getSourceLocNo())); // 浠诲姟妯″紡:  鎼嚭搴�
-                        if (!MessageQueue.offer(SlaveType.Ste, steNo, new Task(2, steCommand))) {
-                            log.error("绌挎杞﹀懡浠や笅鍙戝け璐ワ紝绌挎杞﹀彿={}锛屼换鍔℃暟鎹�={}", steNo, JSON.toJSON(steCommand));
-                        } else {
-                            // 13.杩佸叆灏忚溅 ==> 14.灏忚溅鎼嚭搴�
-                            wrkMast.setWrkSts(14L);
-                            Date now = new Date();
-                            wrkMast.setCrnEndTime(now);
-                            wrkMast.setModiTime(now);
-                            // 淇敼鎴愬姛鍚庡浣嶅爢鍨涙満
-                            if (wrkMastMapper.updateById(wrkMast) > 0) {
-                                // 鍫嗗灈鏈哄浣�
-                                crnThread.setResetFlag(true);
-                            } else {
-                                log.error("淇敼宸ヤ綔妗g姸鎬� 13.杩佸叆灏忚溅 ==> 14.灏忚溅鎼嚭搴� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
+                                log.error("鏇存柊宸ヤ綔妗g殑宸ヤ綔鐘舵�佷负 17.鍑哄簱瀹屾垚 澶辫触锛侊紒锛� [宸ヤ綔鍙�:{}]", wrkMast.getWrkNo());
                             }
                         }
                     }
@@ -2017,7 +1905,9 @@
                                 } else {
                                     if (wrkMast.getMk().equals("I")) {
                                         String locNo = wrkMast.getLocNo();
-                                        if (Utils.getGroupRow(locNo).equals(Utils.getGroupRow(steProtocol.getRow().intValue())) && steProtocol.getBay() == Utils.getBay(locNo) && steProtocol.getLev() == Utils.getLev(locNo)) {
+                                        if (Utils.getGroupRow(locNo, false).equals(Utils.getGroupRow(steProtocol.getRow().intValue(), false))
+                                                && steProtocol.getBay() == Utils.getBay(locNo)
+                                                && steProtocol.getLev() == Utils.getLev(locNo)) {
                                             // 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 6.灏忚溅寰呭叆
                                             wrkMast.setWrkSts(6L);
                                         } else {

--
Gitblit v1.9.1