From a6b762e09d8a7de57a7a76d3dfc3dd23b969ae1e Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期三, 15 五月 2024 21:10:14 +0800
Subject: [PATCH] #二楼

---
 src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java |    7 +
 src/main/java/com/zy/asrs/utils/Utils.java                        |    1 
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java       |  200 +++++++++++++++++++++++++++++-----------
 src/main/java/com/zy/asrs/service/WrkMastStaService.java          |    4 
 src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java            |    4 
 src/main/resources/application.yml                                |   26 +++++
 src/main/resources/mapper/WrkMastStaMapper.xml                    |    4 
 7 files changed, 190 insertions(+), 56 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
index c5872f3..f0f36ec 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastStaMapper.java
@@ -5,6 +5,8 @@
 import org.apache.ibatis.annotations.Mapper;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Mapper
 @Repository
 public interface WrkMastStaMapper extends BaseMapper<WrkMastSta> {
@@ -12,4 +14,6 @@
     WrkMastSta selectByRgvNoandWrkNo(Integer rgvNo, Integer taskNo);
 
     WrkMastSta selectByRgvNoandWrkNo2(Integer rgvNo, Integer taskNo2);
+
+    List<WrkMastSta> selectBywrkNoHistoricalTasks(Integer rgvNo, Integer taskNo1, Integer taskNo2);
 }
diff --git a/src/main/java/com/zy/asrs/service/WrkMastStaService.java b/src/main/java/com/zy/asrs/service/WrkMastStaService.java
index 9ba65e2..24cbb0a 100644
--- a/src/main/java/com/zy/asrs/service/WrkMastStaService.java
+++ b/src/main/java/com/zy/asrs/service/WrkMastStaService.java
@@ -3,8 +3,12 @@
 import com.zy.asrs.entity.WrkMastSta;
 import com.baomidou.mybatisplus.service.IService;
 
+import java.util.List;
+
 public interface WrkMastStaService extends IService<WrkMastSta> {
 
     WrkMastSta selectByRgvNoandWrkNo(Integer rgvNo, Integer taskNo1);
     WrkMastSta selectByRgvNoandWrkNo2(Integer rgvNo, Integer taskNo2);
+
+    List<WrkMastSta> selectBywrkNoHistoricalTasks(Integer rgvNo, Integer taskNo1,Integer taskNo2);
 }
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 c8e653d..08a9a18 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2521,6 +2521,9 @@
 
                 //宸ヤ綅涓�浠诲姟
                 for (RgvSlave.Sta inStn :  rgvSlave.getInStn()){
+                    if (rgvSlave.getId() == 1 && inStn.getSourceStaNo() == 2114){
+                        continue;
+                    }
                     SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, inStn.getSourcePlcId());
                     StaProtocol staProtocol = devpThread.getStation().get(inStn.getSourceStaNo());
                     if (staProtocol == null) {
@@ -2553,6 +2556,9 @@
                         if (souSta1 == inStn.getSourceStaNo()){
                             continue;
                         }
+                        if (rgvSlave.getId() == 1 && inStn.getSourceStaNo() == 1014){
+                            continue;
+                        }
                         SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, inStn.getSourcePlcId());
                         StaProtocol staProtocol = devpThread.getStation().get(inStn.getSourceStaNo());
                         if (staProtocol == null) {
@@ -2569,7 +2575,7 @@
                                     continue;
                                 }
                                 workNo2 = wrkMast.getWrkNo();
-                                souSta2 = inStn.getSourceStaNo().shortValue();
+                                souSta2 = Utils.getRgvStaNo(rgvSlave.getId(),staProtocol.getSiteId());
                                 sta2 = Utils.getRgvEndStaNo(rgvSlave.getId(),wrkMast.getStaNo());
                                 work2 = true;
                                 devpThread.setPakMk(inStn.getSourceStaNo(),false);
@@ -2646,16 +2652,37 @@
             if (rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getStatusType() == RgvStatusType.WAITING && rgvProtocol.getLoaded1() == 0) {
 
                 try {
-                    Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo1());
-                    WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
-                    if (Cools.isEmpty(wrkMastSta1)){
-                        log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
-                    }else {
-                        if (wrkMastSta1.getWrkType() == 8 ){
-                            wrkMastSta1.setWrkSts(3);
-                            wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                    boolean offer = MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(3, new RgvCommand()));
+                    log.info("{}鍙穜gv宸ヤ綅涓�宸ヤ綔瀹屾垚澶嶄綅,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
+                    if (offer){
+                        //瀹屾垚rgv浠诲姟
+                        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo1());
+                        WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
+                        if (Cools.isEmpty(wrkMastSta1)){
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
+                        }else {
+                            if (wrkMastSta1.getWrkType() == 8 ){
+                                wrkMastSta1.setWrkSts(3);
+                                wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                            }
+                        }
+
+                        //瀹屾垚宸ヤ綔妗d换鍔�
+                        if (rgvSlave.getId() != 1){
+                            WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo1());
+                            if (Cools.isEmpty(wrkMast)){
+                                log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
+                            }else {
+                                if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 101){
+                                    Date date = new Date();
+                                    wrkMast.setWrkSts(14L);
+                                    wrkMast.setModiTime(date);
+                                    wrkMastService.updateById(wrkMast);
+                                }
+                            }
                         }
                     }
+
 
                 }catch (Exception e){
                     log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鍑洪敊!!!!!!!!!!!!!!!!,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
@@ -2663,26 +2690,47 @@
                 }
 
 
-                MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(3,new RgvCommand()));
-                log.info("{}鍙穜gv宸ヤ綅涓�宸ヤ綔瀹屾垚澶嶄綅,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
+
             }
 
             //宸ヤ綅浜屼换鍔″畬鎴�
             if (rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getStatusType() == RgvStatusType.WAITING2 && rgvProtocol.getLoaded2() == 0) {
                 try {
-                    Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo2());
-                    WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
-                    if (Cools.isEmpty(wrkMastSta1)){
-                        log.error("瀹屾垚{}鍙疯溅宸ヤ綅浜屼换鍔℃湭鎵惧埌瀵瑰簲宸ヤ綔浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
-                    }else {
-                        if (wrkMastSta1.getWrkType() == 9 ){
-                            wrkMastSta1.setWrkSts(3);
-                            wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
-                        }else if (wrkMastSta1.getWrkType() == 1){
-                            wrkMastSta1.setWrkSts(3);
-                            wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                    boolean offer = MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(4, new RgvCommand()));
+                    log.info("{}鍙穜gv宸ヤ綅浜屽伐浣滃畬鎴愬浣�,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo2());
+                    if (offer){
+                        //瀹屾垚rgv浠诲姟
+                        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no2", rgvProtocol.getTaskNo2());
+                        WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
+                        if (Cools.isEmpty(wrkMastSta1)){
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅浜屼换鍔℃湭鎵惧埌瀵瑰簲宸ヤ綔浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
+                        }else {
+                            if (wrkMastSta1.getWrkType() == 9 ){
+                                wrkMastSta1.setWrkSts(3);
+                                wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                            }else if (wrkMastSta1.getWrkType() == 1){
+                                wrkMastSta1.setWrkSts(3);
+                                wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                            }
                         }
+
+                        //瀹屾垚宸ヤ綔妗d换鍔�
+                        if (rgvSlave.getId() != 1){
+                            WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo2());
+                            if (Cools.isEmpty(wrkMast)){
+                                log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
+                            }else {
+                                if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 101){
+                                    Date date = new Date();
+                                    wrkMast.setWrkSts(14L);
+                                    wrkMast.setModiTime(date);
+                                    wrkMastService.updateById(wrkMast);
+                                }
+                            }
+                        }
+
                     }
+
                 }catch (Exception e){
                     log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鍑洪敊!!!!!!!!!!!!!!!!,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
                     continue;
@@ -2690,8 +2738,7 @@
 
 
 
-                MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(4,new RgvCommand()));
-                log.info("{}鍙穜gv宸ヤ綅浜屽伐浣滃畬鎴愬浣�,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo2());
+
             }
         }
     }
@@ -2712,7 +2759,7 @@
 
             //宸ヤ綅涓�浠诲姟瀹屾垚
             if (rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getStatusType() == RgvStatusType.OUTSTN1 && rgvProtocol.getLoaded1() == 1) {
-                WrkMastSta wrkMastSta = wrkMastStaService.selectByRgvNoandWrkNo(rgvProtocol.getRgvNo(), rgvProtocol.getTaskNo1());
+                WrkMastSta wrkMastSta = wrkMastStaService.selectByRgvNoandWrkNo(rgvSlave.getId(), rgvProtocol.getTaskNo1());
                 WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo1());
                 if (Cools.isEmpty(wrkMastSta)){
                     log.error("鏈煡璇㈠埌rgv宸ヤ綔浠诲姟锛宺gv缂栧彿{},宸ヤ綔鍙穥}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
@@ -2731,7 +2778,12 @@
                     }
                     if (staProtocol.isAutoing() && !staProtocol.isLoading()  && staProtocol.isPakMk()){
                         staProtocol.setWorkNo(wrkMastSta.getWrkNo().shortValue());
-                        staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                        if (rgvSlave.getId() == 3 && outStn.getStaPlcId() == 6){
+                            staProtocol.setStaNo((short)2401);
+                        }else {
+                            staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                        }
+
                         MessageQueue.offer(SlaveType.Devp, outStn.getStaPlcId(), new Task(2, staProtocol));
                     }
                 }
@@ -2739,16 +2791,16 @@
 
             //宸ヤ綅浜屼换鍔″畬鎴�
             if (rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getStatusType() == RgvStatusType.OUTSTN8 && rgvProtocol.getLoaded2() == 1) {
-                WrkMastSta wrkMastSta = wrkMastStaService.selectByRgvNoandWrkNo(rgvProtocol.getRgvNo(), rgvProtocol.getTaskNo2());
+                WrkMastSta wrkMastSta = wrkMastStaService.selectByRgvNoandWrkNo2(rgvProtocol.getRgvNo(), rgvProtocol.getTaskNo2());
                 WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo2());
                 if (Cools.isEmpty(wrkMastSta)){
                     log.error("鏈煡璇㈠埌rgv宸ヤ綔浠诲姟锛宺gv缂栧彿{},宸ヤ綔鍙穥}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
                     continue;
                 }
                 for (RgvSlave.Sta outStn :rgvSlave.getOutStn()){
-                    if (wrkMastSta.getStaEnd() != outStn.getStaNo()){
+                    if (!Objects.equals(Utils.getStaNo(rgvSlave.getId(), wrkMastSta.getStaEnd()), outStn.getStaNo())){
                         continue;
-                    }
+                    }//鍒ゆ柇鏄惁涓哄伐浣滄。绔欑偣
                     SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, outStn.getStaPlcId());
                     StaProtocol staProtocol = devpThread.getStation().get(outStn.getStaNo());
                     if (staProtocol == null) {
@@ -2868,16 +2920,37 @@
             if (rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getStatusType() == RgvStatusType.WAITING && rgvProtocol.getLoaded1() == 0) {
 
                 try {
-                    Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo1());
-                    WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
-                    if (Cools.isEmpty(wrkMastSta1)){
-                        log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
-                    }else {
-                        if (wrkMastSta1.getWrkType() == 8 ){
-                            wrkMastSta1.setWrkSts(3);
-                            wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                    boolean offer = MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(3, new RgvCommand()));
+                    log.info("{}鍙穜gv宸ヤ綅涓�宸ヤ綔瀹屾垚澶嶄綅,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
+                    if (offer){
+
+                        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo1());
+                        WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
+                        if (Cools.isEmpty(wrkMastSta1)){
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
+                        }else {
+                            if (wrkMastSta1.getWrkType() == 8 ){
+                                wrkMastSta1.setWrkSts(3);
+                                wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                            }
                         }
+
+                        //瀹屾垚宸ヤ綔妗d换鍔�
+                        WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo1());
+                        if (Cools.isEmpty(wrkMast)){
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
+                        }else {
+                            if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 101){
+                                Date date = new Date();
+                                wrkMast.setWrkSts(14L);
+                                wrkMast.setModiTime(date);
+                                wrkMastService.updateById(wrkMast);
+                            }
+                        }
+
+
                     }
+
 
                 }catch (Exception e){
                     log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鍑洪敊!!!!!!!!!!!!!!!!,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
@@ -2885,26 +2958,44 @@
                 }
 
 
-                MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(3,new RgvCommand()));
-                log.info("{}鍙穜gv宸ヤ綅涓�宸ヤ綔瀹屾垚澶嶄綅,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
+
             }
 
             //宸ヤ綅浜屼换鍔″畬鎴�
             if (rgvProtocol.getModeType() == RgvModeType.AUTO && rgvProtocol.getStatusType() == RgvStatusType.WAITING2 && rgvProtocol.getLoaded2() == 0) {
                 try {
-                    Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo2());
-                    WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
-                    if (Cools.isEmpty(wrkMastSta1)){
-                        log.error("瀹屾垚{}鍙疯溅宸ヤ綅浜屼换鍔℃湭鎵惧埌瀵瑰簲宸ヤ綔浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
-                    }else {
-                        if (wrkMastSta1.getWrkType() == 9 ){
-                            wrkMastSta1.setWrkSts(3);
-                            wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
-                        }else if (wrkMastSta1.getWrkType() == 1){
-                            wrkMastSta1.setWrkSts(3);
-                            wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                    boolean offer = MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(4, new RgvCommand()));
+                    log.info("{}鍙穜gv宸ヤ綅浜屽伐浣滃畬鎴愬浣�,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo2());
+                    if (offer){
+                        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo2());
+                        WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
+                        if (Cools.isEmpty(wrkMastSta1)){
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅浜屼换鍔℃湭鎵惧埌瀵瑰簲宸ヤ綔浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
+                        }else {
+                            if (wrkMastSta1.getWrkType() == 9 ){
+                                wrkMastSta1.setWrkSts(3);
+                                wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                            }else if (wrkMastSta1.getWrkType() == 1){
+                                wrkMastSta1.setWrkSts(3);
+                                wrkMastStaService.update(wrkMastSta1,wrkMastStaWrapper);
+                            }
                         }
+
+                        //瀹屾垚宸ヤ綔妗d换鍔�
+                        WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo2());
+                        if (Cools.isEmpty(wrkMast)){
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo2());
+                        }else {
+                            if (wrkMast.getIoType() == 110 || wrkMast.getIoType() == 101){
+                                Date date = new Date();
+                                wrkMast.setWrkSts(14L);
+                                wrkMast.setModiTime(date);
+                                wrkMastService.updateById(wrkMast);
+                            }
+                        }
+
                     }
+
 
                 }catch (Exception e){
                     log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鍑洪敊!!!!!!!!!!!!!!!!,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
@@ -2913,17 +3004,16 @@
 
 
 
-                MessageQueue.offer(SlaveType.Rgv, rgvSlave.getId(), new Task(4,new RgvCommand()));
-                log.info("{}鍙穜gv宸ヤ綅浜屽伐浣滃畬鎴愬浣�,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo2());
+
             }
         }
     }
 
     public boolean rgvTaskSave(RgvCommand command){
-        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", command.getRgvNo()).eq("wrk_no", command.getTaskNo1());
-        WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
+//        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", command.getRgvNo()).eq("wrk_no", command.getTaskNo1());
+        List<WrkMastSta> wrkMastSta1 = wrkMastStaService.selectBywrkNoHistoricalTasks(command.getRgvNo(),command.getTaskNo1(),command.getTaskNo2());
         if (!Cools.isEmpty(wrkMastSta1)){
-            wrkMastStaService.delete(wrkMastStaWrapper);
+            wrkMastStaService.deleteBatchIds(wrkMastSta1);
         }
         WrkMastSta wrkMastSta = new WrkMastSta();
         wrkMastSta.setWrkNo(Long.valueOf(command.getTaskNo1()));
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java
index ba5c3e0..811525c 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkMastStaServiceImpl.java
@@ -6,6 +6,8 @@
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 @Service("wrkMastStaService")
 public class WrkMastStaServiceImpl extends ServiceImpl<WrkMastStaMapper, WrkMastSta> implements WrkMastStaService {
 
@@ -18,4 +20,9 @@
     public WrkMastSta selectByRgvNoandWrkNo2(Integer rgvNo, Integer taskNo2) {
         return this.baseMapper.selectByRgvNoandWrkNo2(rgvNo,taskNo2);
     }
+
+    @Override
+    public List<WrkMastSta> selectBywrkNoHistoricalTasks(Integer rgvNo, Integer taskNo1, Integer taskNo2) {
+        return this.baseMapper.selectBywrkNoHistoricalTasks(rgvNo,taskNo1,taskNo2);
+    }
 }
diff --git a/src/main/java/com/zy/asrs/utils/Utils.java b/src/main/java/com/zy/asrs/utils/Utils.java
index 3ea9a06..0ce21f2 100644
--- a/src/main/java/com/zy/asrs/utils/Utils.java
+++ b/src/main/java/com/zy/asrs/utils/Utils.java
@@ -75,6 +75,7 @@
         rgv1Map.put(4002,2013); rgv1Map.put(4011,2013);
         rgv1Map.put(2101,2013);rgv1Map.put(2001,2013);
         rgv1Map.put(1022,1020);rgv1Map.put(1025,1023);
+        rgv1Map.put(1016,1014);rgv1Map.put(1019,1017);
         Map<Integer, Integer> rgv2Map = new HashMap<>();
         rgv2Map.put(4002,4001); rgv2Map.put(4011,4010);
         rgv2Map.put(2101,2102);rgv2Map.put(2001,2002);
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 47fb6bf..f7dec4f 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -147,7 +147,7 @@
   # 杈撻�佺嚎1
   devp[0]:
     id: 1
-    ip: 10.10.10.111
+    ip: 10.10.10.1
     port: 102
     rack: 0
     slot: 0
@@ -318,6 +318,30 @@
     port: 102
     rack: 0
     slot: 0
+    inStn[0]:
+      sourceStaNo: 2114
+      sourcePlcId: 6
+    inStn[1]:
+      sourceStaNo: 2401
+      sourcePlcId: 6
+    inStn[2]:
+      sourceStaNo: 1014
+      sourcePlcId: 1
+    inStn[3]:
+      sourceStaNo: 1017
+      sourcePlcId: 1
+    outStn[0]:
+      staNo: 1020
+      staPlcId: 1
+    outStn[1]:
+      staNo: 1023
+      staPlcId: 1
+    outStn[2]:
+      staNo: 2013
+      staPlcId: 6
+    outStn[3]:
+      staNo: 2401
+      staPlcId: 6
   # RGV1
   rgv[2]:
     id: 3
diff --git a/src/main/resources/mapper/WrkMastStaMapper.xml b/src/main/resources/mapper/WrkMastStaMapper.xml
index 8027a6b..3516652 100644
--- a/src/main/resources/mapper/WrkMastStaMapper.xml
+++ b/src/main/resources/mapper/WrkMastStaMapper.xml
@@ -36,5 +36,9 @@
         select * from asr_wrk_mast_sta
         where wrk_crn = #{rgvNo} and wrk_no2 = #{taskNo2} and wrk_sts = 1
     </select>
+    <select id="selectBywrkNoHistoricalTasks" resultMap="BaseResultMap">
+        select * from asr_wrk_mast_sta
+        where wrk_crn = #{rgvNo} and (wrk_no = #{taskNo1} or wrk_no2 = #{taskNo2})
+    </select>
 
 </mapper>

--
Gitblit v1.9.1