From 25bf31e883fc8b02d14ad342ed1e5a955661ffd7 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期日, 19 二月 2023 13:06:05 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  227 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 207 insertions(+), 20 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 86e9aab..470bae4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -101,10 +101,27 @@
             for (DevpSlave.Sta inSta : devp.getInSta()) {
                 // 鑾峰彇鏉$爜鎵弿浠俊鎭�
                 BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode());
+
                 if (barcodeThread == null) {
                     continue;
                 }
                 String barcode = barcodeThread.getBarcode();
+
+                //101绔欐湁3涓壂鐮佸櫒锛屽綋0鎵爜鍣ㄦ病鏈夋暟鎹椂锛岃幏鍙�9銆�10涓や釜鎵爜鍣ㄦ暟鎹�
+                if(inSta.getStaNo().equals(101) && !Cools.isEmpty(barcode)){
+                    BarcodeThread barcodeThread1 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode1());
+                    if (barcodeThread1 != null) {
+                        barcode = barcodeThread1.getBarcode();
+                    }
+
+                    if(!Cools.isEmpty(barcode)) {
+                        BarcodeThread barcodeThread2 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode2());
+                        if (barcodeThread2 != null) {
+                            barcode = barcodeThread2.getBarcode();
+                        }
+                    }
+                }
+
                 if (!Cools.isEmpty(barcode)) {
                     log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
                     if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
@@ -124,8 +141,28 @@
                 }
 
                 // 鍏ュ嚭搴撴ā寮忓垽鏂�
-//                if ( inSta.getStaNo()==203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) { continue; }
-                if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F == IoModeType.PAKOUT_MODE) {
+                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F1 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F2 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F3 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F4 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 201 && devpThread.ioModeOf2F1 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F2 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 301 && devpThread.ioModeOf3F1 == IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 304 && devpThread.ioModeOf3F2 == IoModeType.PAKOUT_MODE) {
                     continue;
                 }
 
@@ -282,7 +319,28 @@
                 }
 
 //                // 鍏ュ嚭搴撴ā寮忓垽鏂�
-                if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) {
+                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 201 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 301 && devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (inSta.getStaNo() == 304 && devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                     continue;
                 }
 
@@ -783,8 +841,28 @@
                 }
 
 //            // 鍏ュ嚭搴撴ā寮忓垽鏂�
-//            if (devpThread.ioMode != IoModeType.PAKOUT_MODE) { continue; }
-                if (wrkMast.getStaNo() == 204 && devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) {
+                if (wrkMast.getStaNo() == 100 && devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 103 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 110 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 113 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 200 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 203 && devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 300 && devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
+                    continue;
+                }
+                if (wrkMast.getStaNo() == 303 && devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
                     continue;
                 }
 
@@ -1253,7 +1331,8 @@
 
                 // 绔欑偣鏉′欢鍒ゆ柇
                 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable()
-                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() > 9990 && staProtocol.getWorkNo() <= 9999) && staProtocol.isPakMk()) {
+                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() > 9990
+                        && staProtocol.getWorkNo() <= 9999) && staProtocol.isPakMk()) {
 
                     try {
                         LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
@@ -1895,40 +1974,148 @@
                     }
                     WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getStaNo());
                     switch (inSta.getStaNo()) {
-                        case 203://1F
+                        case 101: // 1F1
                             if (pakout != null) {
-                                if (devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) {
+                                if (devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
                                     // 鍑哄簱鍒囨崲涓�
-                                    devpThread.ioModeOf2F = IoModeType.PAKOUT_BOOTING;
+                                    devpThread.ioModeOf1F1 = IoModeType.PAKOUT_BOOTING;
                                     WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                     if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
-                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
-                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                         // 鍑哄簱妯″紡
-                                        devpThread.ioModeOf2F = IoModeType.PAKOUT_MODE;
+                                        devpThread.ioModeOf1F1 = IoModeType.PAKOUT_MODE;
                                     }
                                 }
                             } else {
                                 // 鍏ュ簱妯″紡
-                                devpThread.ioModeOf2F = IoModeType.PAKIN_MODE;
+                                devpThread.ioModeOf1F1 = IoModeType.PAKIN_MODE;
                             }
                             break;
-                        case 401://1F
+                        case 104: // 1F2
                             if (pakout != null) {
-                                if (devpThread.ioModeOf4F != IoModeType.PAKOUT_MODE) {
+                                if (devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                                     // 鍑哄簱鍒囨崲涓�
-                                    devpThread.ioModeOf4F = IoModeType.PAKOUT_BOOTING;
+                                    devpThread.ioModeOf1F2 = IoModeType.PAKOUT_BOOTING;
                                     WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
                                     if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
-                                            && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
-                                            && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
                                         // 鍑哄簱妯″紡
-                                        devpThread.ioModeOf4F = IoModeType.PAKOUT_MODE;
+                                        devpThread.ioModeOf1F2 = IoModeType.PAKOUT_MODE;
                                     }
                                 }
                             } else {
                                 // 鍏ュ簱妯″紡
-                                devpThread.ioModeOf4F = IoModeType.PAKIN_MODE;
+                                devpThread.ioModeOf1F2 = IoModeType.PAKIN_MODE;
+                            }
+                            break;
+                        case 111: // 1F3
+                            if (pakout != null) {
+                                if (devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
+                                    // 鍑哄簱鍒囨崲涓�
+                                    devpThread.ioModeOf1F3 = IoModeType.PAKOUT_BOOTING;
+                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
+                                        // 鍑哄簱妯″紡
+                                        devpThread.ioModeOf1F3 = IoModeType.PAKOUT_MODE;
+                                    }
+                                }
+                            } else {
+                                // 鍏ュ簱妯″紡
+                                devpThread.ioModeOf1F3 = IoModeType.PAKIN_MODE;
+                            }
+                            break;
+                        case 114: // 1F4
+                            if (pakout != null) {
+                                if (devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
+                                    // 鍑哄簱鍒囨崲涓�
+                                    devpThread.ioModeOf1F4 = IoModeType.PAKOUT_BOOTING;
+                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
+                                        // 鍑哄簱妯″紡
+                                        devpThread.ioModeOf1F4 = IoModeType.PAKOUT_MODE;
+                                    }
+                                }
+                            } else {
+                                // 鍏ュ簱妯″紡
+                                devpThread.ioModeOf1F4 = IoModeType.PAKIN_MODE;
+                            }
+                            break;
+                        case 201: // 2F1
+                            if (pakout != null) {
+                                if (devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
+                                    // 鍑哄簱鍒囨崲涓�
+                                    devpThread.ioModeOf2F1 = IoModeType.PAKOUT_BOOTING;
+                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
+                                        // 鍑哄簱妯″紡
+                                        devpThread.ioModeOf2F1 = IoModeType.PAKOUT_MODE;
+                                    }
+                                }
+                            } else {
+                                // 鍏ュ簱妯″紡
+                                devpThread.ioModeOf2F1 = IoModeType.PAKIN_MODE;
+                            }
+                            break;
+                        case 203: // 2F2
+                            if (pakout != null) {
+                                if (devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
+                                    // 鍑哄簱鍒囨崲涓�
+                                    devpThread.ioModeOf2F2 = IoModeType.PAKOUT_BOOTING;
+                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
+                                        // 鍑哄簱妯″紡
+                                        devpThread.ioModeOf2F2 = IoModeType.PAKOUT_MODE;
+                                    }
+                                }
+                            } else {
+                                // 鍏ュ簱妯″紡
+                                devpThread.ioModeOf2F2 = IoModeType.PAKIN_MODE;
+                            }
+                            break;
+                        case 301: // 3F1
+                            if (pakout != null) {
+                                if (devpThread.ioModeOf3F1 != IoModeType.PAKOUT_MODE) {
+                                    // 鍑哄簱鍒囨崲涓�
+                                    devpThread.ioModeOf3F1 = IoModeType.PAKOUT_BOOTING;
+                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
+                                        // 鍑哄簱妯″紡
+                                        devpThread.ioModeOf3F1 = IoModeType.PAKOUT_MODE;
+                                    }
+                                }
+                            } else {
+                                // 鍏ュ簱妯″紡
+                                devpThread.ioModeOf3F1 = IoModeType.PAKIN_MODE;
+                            }
+                            break;
+                        case 303: // 3F2
+                            if (pakout != null) {
+                                if (devpThread.ioModeOf3F2 != IoModeType.PAKOUT_MODE) {
+                                    // 鍑哄簱鍒囨崲涓�
+                                    devpThread.ioModeOf3F2 = IoModeType.PAKOUT_BOOTING;
+                                    WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+                                    if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
+                                            && !devpThread.getStation().get(inSta.getStaNo() - 1).isLoading()
+                                            && devpThread.getStation().get(inSta.getStaNo() - 1).getWorkNo() == 0) {
+                                        // 鍑哄簱妯″紡
+                                        devpThread.ioModeOf3F2 = IoModeType.PAKOUT_MODE;
+                                    }
+                                }
+                            } else {
+                                // 鍏ュ簱妯″紡
+                                devpThread.ioModeOf3F2 = IoModeType.PAKIN_MODE;
                             }
                             break;
                     }

--
Gitblit v1.9.1