From ac2cb6a654d6de15ca8c9c0bafd5acfb25680748 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期三, 24 四月 2024 16:56:24 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  131 ++++++++++++++------------------
 src/main/java/com/zy/asrs/mapper/WrkMastMapper.java         |    2 
 src/main/resources/mapper/WrkMastMapper.xml                 |    2 
 src/main/resources/application.yml                          |   88 +++++++++++----------
 4 files changed, 108 insertions(+), 115 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
index 8b7222b..84197df 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkMastMapper.java
@@ -13,7 +13,7 @@
 public interface WrkMastMapper extends BaseMapper<WrkMast> {
 
 
-    WrkMast selectCrn5Task2(@Param("sourceLocNo") Integer sourceStaNo);
+    WrkMast selectCrn5Task2();
 
     WrkMast selectByLocNo( @Param("sourceLocNo") String staNo);
 
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 8e7cadd..41c240f 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -524,13 +524,15 @@
                             && crnProtocol.forkPosType == CrnForkPosType.HOME) {
 
                         // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
-
-                        // 涓嬪彂绔欑偣淇℃伅
-                        staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
-                        staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
-                        if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) {
-                            continue;
+                        if (crnProtocol.getCrnNo() !=5){
+                            // 涓嬪彂绔欑偣淇℃伅
+                            staProtocol.setWorkNo(wrkMast.getWrkNo().shortValue());
+                            staProtocol.setStaNo(wrkMast.getStaNo().shortValue());
+                            if (!MessageQueue.offer(SlaveType.Devp, crnStn.getDevpPlcId(), new Task(2, staProtocol))) {
+                                continue;
+                            }
                         }
+
 
                         if (crnStn.getStaNo() == 1016 || crnStn.getStaNo() == 1019) {
                             // 鏇存柊宸ヤ綔妗g姸鎬佷负13.RGV鎼繍涓�
@@ -582,6 +584,9 @@
                 // 濡傛灉鏈�杩戜竴娆℃槸鍏ュ簱妯″紡
                 if (crnProtocol.getLastIo().equals("I")) {
                     if (basCrnp.getInEnable().equals("Y")) {
+                        if (crn.getId() == 5){
+                            continue;
+                        }
                         this.crnStnToLoc(crn, crnProtocol); //  鍏ュ簱
                         crnProtocol.setLastIo("O");
                     } else if (basCrnp.getOutEnable().equals("Y")) {
@@ -595,6 +600,9 @@
                         this.locToCrnStn(crn, crnProtocol); //  鍑哄簱
                         crnProtocol.setLastIo("I");
                     } else if (basCrnp.getInEnable().equals("Y")) {
+                        if (crn.getId() == 5){
+                            continue;
+                        }
                         this.crnStnToLoc(crn, crnProtocol); //  鍏ュ簱
                         crnProtocol.setLastIo("O");
                     }
@@ -2437,78 +2445,57 @@
         }
     }
     public void Crn5InTaskSta(CrnSlave slave, CrnProtocol crnProtocol){
-        // 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯
         for (CrnSlave.CrnStn crnStn : slave.getCrnInStn()) {
-            // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
-            DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
-            StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
-            if (staProtocol == null) {
-                continue;
-            } else {
-                staProtocol = staProtocol.clone();
+            // 鏌ヨ宸ヤ綔妗�
+            WrkMast wrkMast = wrkMastMapper.selectCrn5Task2();
+            if (wrkMast == null) {
+                return;
             }
-            if (staProtocol.isAutoing()
-                    && staProtocol.isLoading()
-                    && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == null)) {
-                // 鏌ヨ宸ヤ綔妗�
-                WrkMast wrkMast = wrkMastMapper.selectCrn5Task2(staProtocol.getSiteId());
-                if (wrkMast == null) {
-                    continue;
-                }
-                // 鏌ヨ绔欑偣璇︾粏淇℃伅
-                BasDevp staDetl = basDevpService.selectById(crnStn.getStaNo());
-                if (staDetl == null) {
-                    log.error("鍏ュ簱 ===>> 鍫嗗灈鏈虹珯鐐瑰湪鏁版嵁搴撲笉瀛樺湪, 绔欑偣缂栧彿={}", crnStn.getStaNo());
-                    continue;
-                }
-                // 鑾峰彇搴撲綅淇℃伅
-                LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
-                if (locMast == null) {
-                    log.error("鏌ヨ搴撳瓨鏃犳暟鎹�--搴撲綅鍙穥}", wrkMast.getLocNo());
-                    continue;
-                }
-                if (!locMast.getLocSts().equals("S") && !locMast.getLocSts().equals("Q")) {
-                    log.error("鍏ュ簱鎿嶄綔搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), locMast.getLocSts());
-                    continue;
-                }
-                // 鍫嗗灈鏈烘帶鍒惰繃婊�
-                if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) {
-                    continue;
-                }
-                if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0 && staProtocol.isInEnable()
-                        && staDetl.getCanining() != null && staDetl.getCanining().equals("Y")) {
+            // 鑾峰彇搴撲綅淇℃伅
+            LocMast locMast = locMastService.selectById(wrkMast.getLocNo());
+            if (locMast == null) {
+                log.error("鏌ヨ搴撳瓨鏃犳暟鎹�--搴撲綅鍙穥}", wrkMast.getLocNo());
+                return;
+            }
+            if (!locMast.getLocSts().equals("S") && !locMast.getLocSts().equals("Q")) {
+                log.error("鍏ュ簱鎿嶄綔搴撲綅鐘舵�佷笉绗﹀悎--鐘舵��, 搴撲綅鍙�={}锛屽簱浣嶇姸鎬�={}", wrkMast.getLocNo(), locMast.getLocSts());
+                return;
+            }
+            // 鍫嗗灈鏈烘帶鍒惰繃婊�
+            if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) {
+                return;
+            }
 
-                    // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
-                    CrnCommand crnCommand = new CrnCommand();
-                    crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙�
-                    crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
-                    crnCommand.setAckFinish((short) 0);  // 浠诲姟瀹屾垚纭浣�
-                    crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡:  搴撲綅绉昏浆
-                    crnCommand.setSourcePosX(crnStn.getRow().shortValue());     // 婧愬簱浣嶆帓
-                    crnCommand.setSourcePosY(crnStn.getBay().shortValue());     // 婧愬簱浣嶅垪
-                    crnCommand.setSourcePosZ(crnStn.getLev().shortValue());     // 婧愬簱浣嶅眰
-                    crnCommand.setDestinationPosX(locMast.getRow1().shortValue());     // 鐩爣搴撲綅鎺�
-                    crnCommand.setDestinationPosY(locMast.getBay1().shortValue());     // 鐩爣搴撲綅鍒�
-                    crnCommand.setDestinationPosZ(locMast.getLev1().shortValue());     // 鐩爣搴撲綅灞�
-                    crnCommand.setLocType1(locMast.getLocType1().shortValue());     // 璐х墿绫诲瀷
-                    if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) {
-                        log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand));
-                    } else {
-                        // 淇敼宸ヤ綔妗g姸鎬� 2.璁惧涓婅蛋 => 3.鍚婅溅鍏ュ簱涓�
-                        Date now = new Date();
-                        wrkMast.setWrkSts(3L);
-                        wrkMast.setCrnStrTime(now);
-                        wrkMast.setModiTime(now);
-                        if (wrkMastMapper.updateById(wrkMast) == 0) {
-                            log.error("淇敼宸ヤ綔妗g姸鎬� 2.璁惧涓婅蛋 => 3.鍚婅溅鍏ュ簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
-                        }
-                    }
-
-
+            // 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
+            CrnCommand crnCommand = new CrnCommand();
+            crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙�
+            crnCommand.setTaskNo(wrkMast.getWrkNo().shortValue()); // 宸ヤ綔鍙�
+            crnCommand.setAckFinish((short) 0);  // 浠诲姟瀹屾垚纭浣�
+            crnCommand.setTaskMode(CrnTaskModeType.LOC_MOVE); // 浠诲姟妯″紡:  搴撲綅绉昏浆
+            crnCommand.setSourcePosX(crnStn.getRow().shortValue());     // 婧愬簱浣嶆帓
+            crnCommand.setSourcePosY(crnStn.getBay().shortValue());     // 婧愬簱浣嶅垪
+            crnCommand.setSourcePosZ(crnStn.getLev().shortValue());     // 婧愬簱浣嶅眰
+            crnCommand.setDestinationPosX(locMast.getRow1()==9?(short)4:(short)5);     // 鐩爣搴撲綅鎺�
+            crnCommand.setDestinationPosY(locMast.getBay1().shortValue());     // 鐩爣搴撲綅鍒�
+            crnCommand.setDestinationPosZ(locMast.getLev1().shortValue());     // 鐩爣搴撲綅灞�
+            crnCommand.setLocType1(locMast.getLocType1().shortValue());     // 璐х墿绫诲瀷
+            if (!MessageQueue.offer(SlaveType.Crn, wrkMast.getCrnNo(), new Task(2, crnCommand))) {
+                log.error("鍫嗗灈鏈哄懡浠や笅鍙戝け璐ワ紝鍫嗗灈鏈哄彿={}锛屼换鍔℃暟鎹�={}", wrkMast.getCrnNo(), JSON.toJSON(crnCommand));
+            } else {
+                // 淇敼宸ヤ綔妗g姸鎬� 2.璁惧涓婅蛋 => 3.鍚婅溅鍏ュ簱涓�
+                Date now = new Date();
+                wrkMast.setWrkSts(3L);
+                wrkMast.setCrnStrTime(now);
+                wrkMast.setModiTime(now);
+                if (wrkMastMapper.updateById(wrkMast) == 0) {
+                    log.error("淇敼宸ヤ綔妗g姸鎬� 2.璁惧涓婅蛋 => 3.鍚婅溅鍏ュ簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", wrkMast.getWrkNo());
                 }
-
             }
         }
+
+
+
+
     }
 
 }
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 1a007fe..993049b 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -8,7 +8,7 @@
     name: @pom.build.finalName@
   datasource:
     driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
-    url: jdbc:sqlserver://10.10.10.200:1433;databasename=mdqdasrs
+    url: jdbc:sqlserver://127.0.0.1:1433;databasename=mdqdasrs
     username: sa
     password: sa@123
   mvc:
@@ -47,7 +47,7 @@
   # 鍫嗗灈鏈�1
   crn[0]:
     id: 1
-    ip: 10.10.10.100
+    ip: 10.10.10.120
     port: 102
     rack: 0
     slot: 0
@@ -120,44 +120,30 @@
       row: 6
       bay: 1
       lev: 3
-  # 鍫嗗灈鏈�2
-#  crn[2]:
-#    id: 3
-#    ip: 10.10.10.110
-#    port: 102
-#    rack: 0
-#    slot: 0
-#    # 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
-#    offset: 2
-#    demo: false
-#    # 鍫嗗灈鏈哄叆搴撶珯1
-#    crnInStn[0]:
-#      devpPlcId: ${wcs-slave.devp[0].id}
-#      staNo: 1013
-#      row: 7
-#      bay: 1
-#      lev: 1
-#    # 鍫嗗灈鏈哄叆搴撶珯2
-#    crnInStn[1]:
-#      devpPlcId: ${wcs-slave.devp[0].id}
-#      staNo: 1025
-#      row: 6
-#      bay: 1
-#      lev: 3
-#    # 鍫嗗灈鏈哄嚭搴撶珯鐐�1
-#    crnOutStn[0]:
-#      devpPlcId: ${wcs-slave.devp[0].id}
-#      staNo: 1010
-#      row: 6
-#      bay: 1
-#      lev: 1
-#    # 鍫嗗灈鏈哄嚭搴撶珯鐐�2
-#    crnOutStn[1]:
-#      devpPlcId: ${wcs-slave.devp[0].id}
-#      staNo: 1019
-#      row: 6
-#      bay: 1
-#      lev: 3
+  # 鍫嗗灈鏈�3
+  crn[2]:
+    id: 5
+    ip: 10.10.10.100
+    port: 102
+    rack: 0
+    slot: 0
+    # 鍋忕Щ閲忥紝褰撳爢鍨涙満绔欑偣鍒楀彿=1鏃讹紝鍋忕Щ閲�=2
+    offset: 2
+    demo: false
+    # 鍫嗗灈鏈哄叆搴撶珯1
+    crnInStn[0]:
+      devpPlcId: ${wcs-slave.devp[0].id}
+      staNo: 1013
+      row: 4
+      bay: 2
+      lev: 1
+    # 鍫嗗灈鏈哄嚭搴撶珯鐐�1
+    crnOutStn[0]:
+      devpPlcId: ${wcs-slave.devp[0].id}
+      staNo: 1010
+      row: 4
+      bay: 1
+      lev: 1
   # 杈撻�佺嚎1
   devp[0]:
     id: 1
@@ -232,7 +218,27 @@
     # 鎷嗙洏鏈哄叆绌烘墭
     autoEmptyIn[0]:
       staNo: 1007
-
+  # 杈撻�佺嚎2
+#  devp[1]:
+#    id: 1
+#    ip: 10.10.10.10
+#    port: 102
+#    rack: 0
+#    slot: 0
+#    # 杈撻�佺嚎3
+#  devp[2]:
+#    id: 1
+#    ip: 10.10.10.20
+#    port: 102
+#    rack: 0
+#    slot: 0
+#  # 杈撻�佺嚎4
+#  devp[3]:
+#    id: 1
+#    ip: 10.10.10.20
+#    port: 102
+#    rack: 0
+#    slot: 0
   # RGV1
 #  rgv[0]:
 #    id: 1
diff --git a/src/main/resources/mapper/WrkMastMapper.xml b/src/main/resources/mapper/WrkMastMapper.xml
index 5d2a478..cd06b5a 100644
--- a/src/main/resources/mapper/WrkMastMapper.xml
+++ b/src/main/resources/mapper/WrkMastMapper.xml
@@ -208,6 +208,6 @@
         select top 1 * from dbo.asr_wrk_mast where wrk_no = #{wrkNo} order by io_pri desc,io_time,wrk_no asc
     </select>
     <select id="selectCrn5Task2" resultMap="BaseResultMap">
-        select * from dbo.asr_wrk_mast where wrk_sts=2 and io_type=1 and crn_no=5 and source_sta_no=#{sourceLocNo} order by io_pri desc,io_time,wrk_no ASC
+        select * from dbo.asr_wrk_mast where wrk_sts=1 and io_type=1 and crn_no=5 order by io_pri desc,io_time,wrk_no ASC
     </select>
 </mapper>

--
Gitblit v1.9.1