From 75bd6db4408e4e7dd40e0ebcc7f6afa074dffbe6 Mon Sep 17 00:00:00 2001
From: L <L@132>
Date: 星期六, 12 七月 2025 15:25:14 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  183 +++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 164 insertions(+), 19 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 eda3cf8..abdb05f 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2356,7 +2356,10 @@
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
-                        && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
+                        && rgvProtocol.getTaskNo2()==0
 //                        &&  (rgvProtocol.getLoaded2()==2  || rgvProtocol.getLoaded2()==3 ) ////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗�  锛�2涓�灞傛湁鐗╀簩灞傛棤鐗� 锛堝彧鑳芥弧鏀撅級锛�3  1銆�2灞傞兘鏈夌墿  4锛氾紙锛夊彧鍏佽鎷嗙洏
                         &&  rgvProtocol.getLoaded2()==3 ////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗�  锛�2涓�灞傛湁鐗╀簩灞傛棤鐗� 锛堝彧鑳芥弧鏀撅級锛�3  1銆�2灞傞兘鏈夌墿  4锛氾紙锛夊彧鍏佽鎷嗙洏
                 ) {
@@ -3632,7 +3635,7 @@
                         rgvMapUpdate(basRgvMap,basRgvMap.getStartRoute(),basRgvMap.getStartRoute());
                     }else if (rgvProtocol.getTaskNo2()!=0 && (rgvProtocol.getStatusType2()==RgvStatusType.WAITING || rgvProtocol.getStatusType2()==RgvStatusType.FETCHWAITING)){
                         if (rgvProtocol.getTaskNo2()==(short)32222){
-                            boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo());
+                            boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
                             if (!rgvComplete){
                                 log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{}锛�",rgvProtocol.getRgvNo());
                             }
@@ -3678,7 +3681,7 @@
 //
 //                            }
                         }*/
-                        boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo());
+                        boolean rgvComplete = rgvComplete(rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
                         if (!rgvComplete){
                             log.error("灏忚溅澶嶄綅澶辫触锛屽皬杞﹀彿{}锛�",rgvProtocol.getRgvNo());
                             break;
@@ -3720,10 +3723,11 @@
                 // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤
                 if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
-                        && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                        && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && (rgvProtocol.getLoaded1()==0 || (rgvProtocol.getLoaded1()==1 && rgvProtocol.getTaskNo1()!=0) )
-                        && (rgvProtocol.getTaskNo1()==0 || (rgvProtocol.getLoaded1()==1 && rgvProtocol.getTaskNo1()!=0) )
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
                         && rgvProtocol.getTaskNo2()==0
                 ) {
                     switch (sign){
@@ -3755,6 +3759,7 @@
                             break;
                         case 6:////鎻愬崌
 //                            signWork = qwe();
+                            signWork = rgvRunWrkMastMove(rgvSlave);
                             break;
                         default:
                             break;
@@ -3829,7 +3834,8 @@
                 // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤
                 if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
-                        && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                        && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                        || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
                         && rgvProtocol.getLoaded1()==0
                         && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
@@ -3943,7 +3949,8 @@
             // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤
             if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                     && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
-                    && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
                     && rgvProtocol.getModeType() == RgvModeType.AUTO
                     && rgvProtocol.getLoaded1()==0
                     && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
@@ -4024,7 +4031,8 @@
                 }
             } else if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
-                        && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
                         && rgvProtocol.getLoaded1()==1
                         && rgvProtocol.getTaskNo1()!=0 && rgvProtocol.getTaskNo2()==0
@@ -4110,7 +4118,10 @@
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
+                        && rgvProtocol.getTaskNo2()==0
                         && (rgvProtocol.getLoaded2()==3  || rgvProtocol.getLoaded2()==1 || rgvProtocol.getLoaded2()==4)////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗� 锛堝彧鑳芥媶鍙狅級 锛�2涓�灞傛湁鐗╀簩灞傛棤鐗�() 锛�3  1銆�2灞傞兘鏈夌墿  4锛氾紙锛夊彧鍏佽鎷嗙洏
                 ) {
                     BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
@@ -4215,7 +4226,8 @@
             // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅浜屾湁鐗�//rgv鍙敤//鎷嗙洏
             if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                     && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
-                    && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
                     && rgvProtocol.getModeType() == RgvModeType.AUTO
                     && rgvProtocol.getLoaded1()==1
                     && rgvProtocol.getTaskNo1()!=0 && rgvProtocol.getTaskNo2()==0
@@ -4327,7 +4339,10 @@
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
+                        && rgvProtocol.getTaskNo2()==0
                         &&  (rgvProtocol.getLoaded2()==2  || rgvProtocol.getLoaded2()==3 ) ////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗�  锛�2涓�灞傛湁鐗╀簩灞傛棤鐗� 锛堝彧鑳芥弧鏀撅級锛�3  1銆�2灞傞兘鏈夌墿  4锛氾紙锛夊彧鍏佽鎷嗙洏
                 ) {
                     BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
@@ -4432,7 +4447,10 @@
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
+                        && rgvProtocol.getTaskNo2()==0
                         &&  (rgvProtocol.getLoaded2()==0  || rgvProtocol.getLoaded2()==1 ) //鐜板満淇敼锛氬彔鐩樻満锛�////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗╋紙鍙兘鎷嗗彔锛�   锛�2涓�灞傛湁鐗╀簩灞傛棤鐗� 锛堝彧鑳芥弧鏀撅級锛�3  1銆�2灞傞兘鏈夌墿  4锛氾紙锛夊彧鍏佽鎷嗙洏
                 ) {
                     BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
@@ -4525,7 +4543,8 @@
             // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅浜屾棤鐗�//rgv鍙敤
             if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                     && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
-                    && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                    || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
                     && rgvProtocol.getModeType() == RgvModeType.AUTO
                     && rgvProtocol.getLoaded1() == 0
                     && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
@@ -4613,7 +4632,10 @@
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && rgvProtocol.getTaskNo1()==0 && rgvProtocol.getTaskNo2()==0
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
+                        && rgvProtocol.getTaskNo2()==0
                         &&  rgvProtocol.getLoaded2()==0  //鐜板満淇敼锛氬彔鐩樻満锛�////0 鏃犵墿锛�1 涓�灞傛棤鐗╀簩灞傛湁鐗╋紙鍙兘鎷嗗彔锛�   锛�2涓�灞傛湁鐗╀簩灞傛棤鐗� 锛堝彧鑳芥弧鏀撅級锛�3  1銆�2灞傞兘鏈夌墿  4锛氾紙锛夊彧鍏佽鎷嗙洏
                 ) {
                     BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
@@ -4685,6 +4707,75 @@
         }
         return false;
     }
+    public synchronized boolean rgvRunWrkMastMove(RgvSlave rgvSlave) {//婊″彇
+        try{
+//            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
+                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+                RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+                if (rgvProtocol == null) {
+                    return false;
+                }
+                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
+                if (basRgv == null) {
+                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�", rgvSlave.getId());
+                    return false;
+                }
+
+                // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅浜屾棤鐗�//rgv鍙敤
+                if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
+                        && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
+                        && (rgvProtocol.getStatusType2() == RgvStatusType.IDLE
+                        || (rgvProtocol.getStatusType2() == RgvStatusType.SOS100 && rgvProtocol.getTaskNo2()==0))
+                        && rgvProtocol.getModeType() == RgvModeType.AUTO
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
+                        && rgvProtocol.getTaskNo2()==0
+                ) {
+                    BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvProtocol.getRgvNo());
+                    if (basRgvMap == null) {
+                        log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱鍦板浘涓繘琛岀淮鎶わ紒", rgvProtocol.getRgvNo());
+                        return false;
+                    }
+                    List<Integer> route = RouteUtils.getRoute(basRgvMap.getStartRoute(), basRgvMap.getEndRoute());
+                    basRgvMap.setNowRoute(rgvProtocol.getRgvPosI()); //鏇存柊灏忚溅褰撳墠浣嶇疆绔欑偣鍙�
+                    List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectNoInterfereList(route, route);
+                    for (WrkMastSta wrkMastSta : wrkMastStaList){
+                        if (wrkMastSta.getWrkType()!=4){// 2:绌烘澘  || 宸ヤ綔绫诲瀷  1:鍙栵紙鍙犵洏锛�  2锛氭媶鐩�  5锛氭弧鍙�  6锛氭弧鏀�  4 绉诲姩
+                            continue;
+                        }
+                        boolean sign = false;
+                        if ( wrkMastSta.getStaEnd()!=0){//鏀�
+                            sign = rgvAvoidanceXY(rgvProtocol.getRgvNo(),wrkMastSta);//鎷嗙洏
+                        }else {
+                            continue;
+                        }
+                        if (sign){
+                            boolean signMap = rgvMapUpdate(basRgvMap, basRgvMap.getStartRoute(), wrkMastSta.getStaEnd());
+                            if (signMap){
+                                wrkMastSta.setWrkSts(3);
+                                try{
+                                    wrkMastStaMapper.updateById(wrkMastSta);
+                                }catch (Exception e){
+                                    log.error("鏇存柊灏忚溅浠诲姟澶辫触");
+                                }
+                                return true;
+                            }else {
+                                log.error("3857琛岋紝璐х墿鎼繍浠诲姟锛氬伐浣滃彿{}鎵�灞炰换鍔′笅鍙戝悗鍦板浘鍚屾澶辫触",wrkMastSta.getWrkNo());
+                            }
+                        }else {
+                            log.error("宸ヤ綔鍙穥}鎵�灞炰换鍔′笅鍙戝け璐�",wrkMastSta.getWrkNo());
+                        }
+                        break;
+                    }
+                }
+//            }
+        }catch (Exception e){
+            log.error("3989琛屾墽琛屽皬杞﹀彇绌烘澘浠诲姟涓嬪彂澶辫触");
+            log.error("3989琛�"+e);
+        }
+        return false;
+    }
 
     /*
     * 鏈変换鍔′絾鏈墽琛�  姝ゆ椂闇�瑕佽皟鏁村皬杞︿綅缃�
@@ -4717,8 +4808,9 @@
                 // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤
                 if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && rgvProtocol.getLoaded1()==0  //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
-                        && rgvProtocol.getTaskNo1()==0
+                        //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
                         && rgvProtocol.getTaskNo2()==0
                         && rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                         && rgvProtocol.getStatusType2() == RgvStatusType.IDLE
@@ -4828,8 +4920,9 @@
                 // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤
                 if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
                         && rgvProtocol.getModeType() == RgvModeType.AUTO
-                        && rgvProtocol.getLoaded1()==0  //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
-                        && rgvProtocol.getTaskNo1()==0
+                          //鐜板満淇敼锛氬彔鐩樻満锛屼笉婊¢兘绠楁棤鐗╋紝鎬庝箞鍒ゆ柇闇�瑕佽窡鐢垫帶瀵规帴
+                        && ((rgvProtocol.getTaskNo1()==0 && rgvProtocol.getLoaded1()==0)
+                        || (rgvProtocol.getTaskNo1()>0 && rgvProtocol.getLoaded1()==1))
                         && rgvProtocol.getTaskNo2()==0
                 ) {
                     BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvSlave.getId());
@@ -4946,6 +5039,58 @@
         }
     }
 
+    /*
+     * 灏忚溅XY绉诲姩  閬胯
+     * */
+    public synchronized boolean rgvAvoidanceXY(Integer rgvId,WrkMastSta wrkMastSta){
+        if (rgvId==1){
+            try{
+                BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvId);
+                //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+                RgvCommand rgvCommand = new RgvCommand();
+                rgvCommand.setRgvNo(rgvId); // RGV缂栧彿
+                rgvCommand.setAckFinish1((short) 0);  // 宸ヤ綅1浠诲姟瀹屾垚纭浣�
+                rgvCommand.setTaskNo1((short)32222); // 宸ヤ綅1宸ヤ綔鍙�
+                rgvCommand.setTaskMode1(RgvTaskModeType.X_MOVE); // 宸ヤ綅1浠诲姟妯″紡:  鍥炲師鐐�
+                //basRgvMap.getLockStartRoute().shortValue()
+                rgvCommand.setSourceStaNo1( wrkMastSta.getStaEnd().shortValue());
+                rgvCommand.setCommand((short) 1);   //宸ヤ綅1浠诲姟纭
+                if (!MessageQueue.offer(SlaveType.Rgv, rgvId, new Task(4, rgvCommand))) {
+                    //step=2,宸ヤ綅1銆�2鍐欎换鍔★紱   step=4锛屽伐浣�1鍐欎换鍔★紱     step=5锛屽伐浣�2鍐欎换鍔�   step=9锛屽洖鍘熺偣 9999浠诲姟鍙�
+                    log.error("RGV鍛戒护涓嬪彂澶辫触锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvId, JSON.toJSON(rgvCommand));
+                    return false;
+                } else {
+                    return true;
+                }
+            }catch (Exception e){
+                return false;
+
+            }
+        }else {
+            try{
+                BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvId);
+                //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+                RgvCommand rgvCommand = new RgvCommand();
+                rgvCommand.setRgvNo(rgvId); // RGV缂栧彿
+                rgvCommand.setAckFinish2((short) 0);  // 宸ヤ綅2浠诲姟瀹屾垚纭浣�
+                rgvCommand.setTaskNo2((short)32222); // 宸ヤ綅2宸ヤ綔鍙�
+                rgvCommand.setTaskMode2(RgvTaskModeType.X_MOVE); // 宸ヤ綅2浠诲姟妯″紡:  鍥炲師鐐�
+                rgvCommand.setSourceStaNo2( wrkMastSta.getStaEnd().shortValue());
+                rgvCommand.setCommand((short) 2);   //宸ヤ綅2浠诲姟纭
+                if (!MessageQueue.offer(SlaveType.Rgv, rgvId, new Task(5, rgvCommand))) {
+                    //step=2,宸ヤ綅1銆�2鍐欎换鍔★紱   step=4锛屽伐浣�1鍐欎换鍔★紱     step=5锛屽伐浣�2鍐欎换鍔�   step=9锛屽洖鍘熺偣 9999浠诲姟鍙�
+                    log.error("RGV鍛戒护涓嬪彂澶辫触锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvId, JSON.toJSON(rgvCommand));
+                    return false;
+                } else {
+                    return true;
+                }
+            }catch (Exception e){
+                return false;
+
+            }
+        }
+    }
+
 
     /*
     * 灏忚溅鍙栬揣鑷冲伐浣嶄换鍔�

--
Gitblit v1.9.1