From 95c6ea9da63330ae9d8936c521fbfb232132e143 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期五, 26 一月 2024 21:37:54 +0800
Subject: [PATCH] #

---
 src/main/resources/mapper/BasRgvMapMapper.xml                    |    4 ++
 src/main/java/com/zy/asrs/service/BasRgvMapService.java          |   10 +++++
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java      |   42 +++++++++++++--------
 src/main/java/com/zy/core/MainProcess.java                       |    2 
 src/main/resources/application.yml                               |    2 
 src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java            |    2 +
 src/main/java/com/zy/asrs/service/impl/BasRgvMapServiceImpl.java |   16 ++++++++
 7 files changed, 60 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java b/src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java
index 9f6ffa2..d96498b 100644
--- a/src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/BasRgvMapMapper.java
@@ -3,10 +3,12 @@
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 import com.zy.asrs.entity.BasRgvMap;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Repository;
 
 @Mapper
 @Repository
 public interface BasRgvMapMapper extends BaseMapper<BasRgvMap> {
 
+    BasRgvMap selectByRgvNo(@Param("rgvNo") Integer rgvNo);
 }
diff --git a/src/main/java/com/zy/asrs/service/BasRgvMapService.java b/src/main/java/com/zy/asrs/service/BasRgvMapService.java
new file mode 100644
index 0000000..8a5a21f
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/BasRgvMapService.java
@@ -0,0 +1,10 @@
+package com.zy.asrs.service;
+
+import com.baomidou.mybatisplus.service.IService;
+import com.zy.asrs.entity.BasRgvErr;
+import com.zy.asrs.entity.BasRgvMap;
+
+public interface BasRgvMapService extends IService<BasRgvMap> {
+
+    BasRgvMap selectByRgvNo(Integer rgvNo);
+}
diff --git a/src/main/java/com/zy/asrs/service/impl/BasRgvMapServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasRgvMapServiceImpl.java
new file mode 100644
index 0000000..578a2ed
--- /dev/null
+++ b/src/main/java/com/zy/asrs/service/impl/BasRgvMapServiceImpl.java
@@ -0,0 +1,16 @@
+package com.zy.asrs.service.impl;
+
+import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.asrs.entity.BasRgvMap;
+import com.zy.asrs.mapper.BasRgvMapMapper;
+import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.service.BasRgvMapService;
+import org.springframework.stereotype.Service;
+
+@Service("basRgvMapService")
+public class BasRgvMapServiceImpl extends ServiceImpl<BasRgvMapMapper, BasRgvMap> implements BasRgvMapService {
+    @Override
+    public BasRgvMap selectByRgvNo(Integer rgvNo) {
+        return this.baseMapper.selectByRgvNo(rgvNo);
+    }
+}
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 6684db3..b74f1e6 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -94,6 +94,8 @@
     private BasRgvMapMapper basRgvMapMapper;
     @Autowired
     private WrkMastService wrkMastService;
+    @Autowired
+    private BasRgvMapService basRgvMapService;
 
     @Value("${wms.url}")
     private String wmsUrl;
@@ -2209,15 +2211,16 @@
     public synchronized void rgvCompleteWrkMastSta() {
         try{
             for (DevpSlave devp : slaveProperties.getDevp()) {
-            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
-                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+                List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
+            for (BasRgvMap rgvSlave:basRgvMaps) {
+                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
                 RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                 if (rgvProtocol == null) {
                     continue;
                 }
-                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
+                BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
                 if (basRgv == null) {
-                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�3", rgvSlave.getId());
+                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�3", rgvSlave.getRgvNo());
                     continue;
                 }
 
@@ -2244,8 +2247,13 @@
                             continue;
                         }
 
-                        DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+                        SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                         StaProtocol staProtocol = devpThread.getStation().get(wrkMastSta.getStaEnd());
+                        if (staProtocol == null) {
+                            continue;
+                        } else {
+                            staProtocol = staProtocol.clone();
+                        }
                         if (!staProtocol.isAutoing() || !staProtocol.isLoading()){
                             continue;
                         }
@@ -2292,15 +2300,16 @@
     public synchronized void rgvRunWrkMastFullSta() {
         boolean wrkEnable = false;
         try{
-            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
-                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+            List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
+            for (BasRgvMap rgvSlave:basRgvMaps) {
+                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
                 RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                 if (rgvProtocol == null) {
                     continue;
                 }
-                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
+                BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
                 if (basRgv == null) {
-                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�4", rgvSlave.getId());
+                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�4", rgvSlave.getRgvNo());
                     continue;
                 }
 
@@ -2490,15 +2499,16 @@
             if (integer==0){
                 return;
             }
-            for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
-                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
+            List<BasRgvMap> basRgvMaps = basRgvMapService.selectList(new EntityWrapper<>());
+            for (BasRgvMap rgvSlave:basRgvMaps) {
+                RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getRgvNo());
                 RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
                 if (rgvProtocol == null) {
                     continue;
                 }
-                BasRgv basRgv = basRgvService.selectById(rgvSlave.getId());
+                BasRgv basRgv = basRgvService.selectById(rgvSlave.getRgvNo());
                 if (basRgv == null) {
-                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�1", rgvSlave.getId());
+                    log.error("{}鍙稲GV灏氭湭鍦ㄦ暟鎹簱杩涜缁存姢锛�1", rgvSlave.getRgvNo());
                     continue;
                 }
 
@@ -2532,9 +2542,10 @@
      * 灏忚溅XY绉诲姩  閬胯
      * */
     public synchronized boolean rgvAvoidanceXY(Integer rgvId){
-        if (rgvId==1){
+        BasRgvMap basRgvMap = basRgvMapService.selectByRgvNo(rgvId);
+        if (basRgvMap.getStartRoute() == 100){
             try{
-                BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvId);
+
                 //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                 RgvCommand rgvCommand = new RgvCommand();
                 rgvCommand.setRgvNo(rgvId); // RGV缂栧彿
@@ -2557,7 +2568,6 @@
             }
         }else {
             try{
-                BasRgvMap basRgvMap = basRgvMapMapper.selectById(rgvId);
                 //  鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
                 RgvCommand rgvCommand = new RgvCommand();
                 rgvCommand.setRgvNo(rgvId); // RGV缂栧彿
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 85c2223..7a40880 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -79,7 +79,7 @@
                     //绌烘墭鐩樿嚜鍔ㄥ嚭搴�
                     mainService.autoEmptyOut();
 //                    //绌烘墭鐩樿嚜鍔ㄥ叆搴�
-                    mainService.autoEmptyIn();
+//                    mainService.autoEmptyIn();
 
                     // 鍏朵粬  ===>> 鍏ュ嚭搴撴ā寮忓垏鎹�
 //                    i++;
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 6f6f450..874489d 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -106,7 +106,7 @@
     crnInStn[0]:
       devpPlcId: ${wcs-slave.devp[0].id}
       staNo: 135
-      row: 12
+      row: 10
       bay: 1
       lev: 1
     # 鍫嗗灈鏈哄嚭搴撶珯鐐�
diff --git a/src/main/resources/mapper/BasRgvMapMapper.xml b/src/main/resources/mapper/BasRgvMapMapper.xml
index a4f5bae..a3ec60c 100644
--- a/src/main/resources/mapper/BasRgvMapMapper.xml
+++ b/src/main/resources/mapper/BasRgvMapMapper.xml
@@ -13,5 +13,9 @@
         <result column="lock_end_route" property="lockEndRoute" />
 
     </resultMap>
+    <select id="selectByRgvNo" resultType="com.zy.asrs.entity.BasRgvMap">
+        select * from asr_bas_rgv_map
+        where rgv_no = #{rgvNo}
+    </select>
 
 </mapper>

--
Gitblit v1.9.1