From 5d0f7a5aa4ee994782f3f3bcc66e23653a6ac40a Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 19 七月 2024 10:07:46 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   39 ++++++++++++++++++++++++---------------
 1 files changed, 24 insertions(+), 15 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 021c443..7194c24 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -296,9 +296,12 @@
                 if (rgvComplete){
                     rgvThread.setPakMk(true);
                 }
-                WrkMastSta wrkMastSta = wrkMastStaMapper.selectById(rgvProtocol.getTaskNo1());
-                wrkMastSta.setWrkSts(3);
-                wrkMastStaMapper.updateById(wrkMastSta);
+                List<WrkMastSta> wrkMastStas = wrkMastStaMapper.selectList(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", rgvProtocol.getTaskNo1()));
+                if (!Cools.isEmpty(wrkMastStas) || wrkMastStas.size()<=0){
+                    WrkMastSta wrkMastSta = wrkMastStas.get(0);
+                    wrkMastSta.setWrkSts(3);
+                    wrkMastStaMapper.updateById(wrkMastSta);
+                }
             }
 
         }
@@ -396,7 +399,7 @@
 //                    System.out.println(JSON.toJSONString(staProtocol));
                     if (staProtocol.isAutoing()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),2,1);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -404,7 +407,7 @@
                         }
                     }else if (staProtocol.isLoading()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),2,3);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -412,7 +415,7 @@
                         }
                     }else if (staProtocol.isInEnable()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),2,5);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -420,7 +423,7 @@
                         }
                     }else if (staProtocol.isOutEnable()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),2,7);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -429,7 +432,7 @@
                     }
                     if (staProtocol.isEmptyMk()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),1,10);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -438,7 +441,7 @@
                     }
                     if (staProtocol.isFullPlt()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),3,10);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -447,7 +450,7 @@
                     }
                     if (staProtocol.isCar()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),5,10);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -456,7 +459,7 @@
                     }
                     if (staProtocol.isLow()){
                         WrkMastSta wrkMastSta = new WrkMastSta(new Date(),7,10);
-                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().eq("wrk_no", wrkMastSta.getWrkNo()));
+                        Integer count = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts",3).eq("wrk_no", wrkMastSta.getWrkNo()));
                         if (count==0){
                             wrkMastSta.setType(1);
                             wrkMastSta.setWrkType(3);
@@ -484,15 +487,21 @@
                 return;
             }
             // 鍙湁褰揜GV绌洪棽銆佽嚜鍔�,宸ヤ綅涓�鏃犵墿//rgv鍙敤
-            if (rgvProtocol.getStatusType() == RgvStatusType.IDLE
+            if (rgvProtocol.getStatusType1() == RgvStatusType.IDLE
                     && rgvProtocol.getModeType() == RgvModeType.AUTO
                     && rgvProtocol.getLoaded1()==0
                     && rgvProtocol.getTaskNo1() == 0
                     && rgvThread.isPakMk()
             ) {
-                List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectList(new EntityWrapper<WrkMastSta>());
+                Integer selectCount = wrkMastStaMapper.selectCount(new EntityWrapper<WrkMastSta>().ne("wrk_sts", 3).ne("wrk_sts", 0));
+                if (selectCount>0){
+                    log.error("瀛樺湪鎵цRGV涓换鍔★紝浣嗘槸灏忚溅鐘舵�佺┖闂诧紒锛侊紒");
+                    return;
+                }
+
+                List<WrkMastSta> wrkMastStaList = wrkMastStaMapper.selectList(new EntityWrapper<WrkMastSta>().eq("wrk_sts",0));
                 for (WrkMastSta wrkMastSta : wrkMastStaList){
-                    if (wrkMastSta.getType()!=0 || wrkMastSta.getWrkType()!=3){//1:婊$増   3锛氬彇鏀�
+                    if (wrkMastSta.getType()!=1 || wrkMastSta.getWrkType()!=3){//1:婊$増   3锛氬彇鏀�
                         continue;
                     }
                     boolean sign = rgvTakeFullAll(1, wrkMastSta); //鍛戒护涓嬪彂
@@ -523,7 +532,7 @@
             rgvCommand.setTaskMode1(RgvTaskModeType.FETCH_PUT); // 宸ヤ綅1浠诲姟妯″紡:  鍙栨斁璐�
             rgvCommand.setSourceStaNo1(wrkMastSta.getStaStart().shortValue());   //宸ヤ綅1璧风偣
             rgvCommand.setDestinationStaNo1(wrkMastSta.getStaEnd().shortValue());   //宸ヤ綅1鐩爣绔欑偣
-            rgvCommand.setCommand((short) 1);   //宸ヤ綅1浠诲姟纭
+            rgvCommand.setCommand((short) 0);   //宸ヤ綅1浠诲姟纭
             if (!MessageQueue.offer(SlaveType.Rgv, rgvId, new Task(4, rgvCommand))) {
                 //step=2,宸ヤ綅1銆�2鍐欎换鍔★紱   step=4锛屽伐浣�1鍐欎换鍔★紱     step=5锛屽伐浣�2鍐欎换鍔�
                 log.error("RGV鍛戒护涓嬪彂澶辫触锛孯GV鍙�={}锛屼换鍔℃暟鎹�={}", rgvId, JSON.toJSON(rgvCommand));

--
Gitblit v1.9.1