From 076cb3aa8987b0bb096ddaa50d8b4746af699be9 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期四, 18 五月 2023 18:24:58 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |  316 +++++-----------------------------------------------
 1 files changed, 32 insertions(+), 284 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 0bf23b6..c9afd08 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -102,58 +102,17 @@
             for (DevpSlave.Sta inSta : devp.getInSta()) {
                 // 鑾峰彇鏉$爜鎵弿浠俊鎭�
                 BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode());
-                BarcodeThread barcodeThread1 = null;
-                BarcodeThread barcodeThread2 = null;
                 if (barcodeThread == null) {
                     continue;
                 }
                 String barcode = barcodeThread.getBarcode();
-                String barcode1 = "";
-                String barcode2 = "";
 
-                //101绔欐湁3涓壂鐮佸櫒锛屽綋0鎵爜鍣ㄦ病鏈夋暟鎹椂锛岃幏鍙�9銆�10涓や釜鎵爜鍣ㄦ暟鎹�
-                if((inSta.getStaNo().equals(101) || inSta.getStaNo().equals(104))){
-                    barcodeThread1 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode1());
-                    if (barcodeThread1 != null) {
-                        barcode1 = barcodeThread1.getBarcode();
-                    }
-
-                    barcodeThread2 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, inSta.getBarcode2());
-                    if (barcodeThread2 != null) {
-                        barcode2 = barcodeThread2.getBarcode();
-
-                    }
-
-                    Integer len1=0 , len2=0, len3=0;
-                    if(barcode != null) {
-                        String b[]=barcode.split(";");
-                        barcode=b[b.length-1];
-                        len1 = barcode.length();
-                    }
-                    if(barcode1 != null) {
-                        String b[]=barcode1.split(";");
-                        barcode1=b[b.length-1];
-                        len2 = barcode1.length();
-                    }
-                    if(barcode2 != null) {
-                        String b[]=barcode2.split(";");
-                        barcode2=b[b.length-1];
-                        len3 = barcode2.length();
-                    }
-
-                    if(len2 > len1 && len2 >= len3){
-                        barcode = barcode1;
-                    } else if (len3 > len1 && len3 >= len2){
-                        barcode = barcode2;
-                    }
-
-                }
-                    //鍒ゆ柇101鍜�104鏄惁鏄嫞鏂欍�佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
-                    WrkMast wrkMast1=wrkMastMapper.selectpj(inSta.getStaNo(),barcode);
-                    if((inSta.getStaNo().equals(101) || inSta.getStaNo().equals(104)) &&!Cools.isEmpty(barcode)&&!Cools.isEmpty(wrkMast1)){
-                        log.error("101鎴�104鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱", wrkMast1.getWrkNo());
-                        continue;
-                    }
+                ////鍒ゆ柇101鍜�104鏄惁鏄嫞鏂欍�佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱
+                //WrkMast wrkMast1=wrkMastMapper.selectpj(inSta.getStaNo(),barcode);
+                //if((inSta.getStaNo().equals(101) || inSta.getStaNo().equals(104)) &&!Cools.isEmpty(barcode)&&!Cools.isEmpty(wrkMast1)){
+                //    log.error("101鎴�104鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱", wrkMast1.getWrkNo());
+                //    continue;
+                //}
 
                 if (!Cools.isEmpty(barcode)) {
                     log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
@@ -162,11 +121,11 @@
                     }
                 } else {
                     // led 寮傚父鏄剧ず
-                    LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
-                    if (ledThread != null) {
-                        String errorMsg = "鎵爜澶辫触锛岃閲嶈瘯";
-                        MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
-                    }
+//                    LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
+//                    if (ledThread != null) {
+//                        String errorMsg = "鎵爜澶辫触锛岃閲嶈瘯";
+//                        MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
+//                    }
                     continue;
                 }
 
@@ -184,24 +143,6 @@
                     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;
                 }
 
@@ -253,26 +194,21 @@
                         param.setFull(staProtocol.isFull());
                         String response = new HttpHandler.Builder()
                                 .setUri(wmsUrl)
-                                .setPath("/rpc/ ")
+                                .setPath("/rpc/pakin/loc/v1")
                                 .setJson(JSON.toJSONString(param))
                                 .build()
                                 .doPost();
                         JSONObject jsonObject = JSON.parseObject(response);
-//                        LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
+                        LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
 //                        Integer code = jsonObject.getInteger("code");
                         if (jsonObject.getInteger("code").equals(200)) {
                             StartupDto dto = jsonObject.getObject("data", StartupDto.class);
 
                             barcodeThread.setBarcode("");
-                            if(barcodeThread1 !=null){
-                                barcodeThread1.setBarcode("");
-                            }
-                            if(barcodeThread2 !=null){
-                                barcodeThread2.setBarcode("");
-                            }
                             staProtocol.setWorkNo(dto.getWorkNo().shortValue());
                             staProtocol.setStaNo(dto.getStaNo().shortValue());
                             devpThread.setPakMk(staProtocol.getSiteId(), false);
+                            ledThread.errorReset();
                             boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
                             if (!result) {
                                 throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
@@ -405,28 +341,10 @@
                 }
 
 //                // 鍏ュ嚭搴撴ā寮忓垽鏂�
-                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
+                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
                     continue;
                 }
-                if (inSta.getStaNo() == 101 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
-                    continue;
-                }
-                if (inSta.getStaNo() == 114 && devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
-                    continue;
-                }
-                if (inSta.getStaNo() == 111 && devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
-                    continue;
-                }
-                if (inSta.getStaNo() == 204 && devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
-                    continue;
-                }
-                if (inSta.getStaNo() == 201 && 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) {
+                if (inSta.getStaNo() == 104 && devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
                     continue;
                 }
 
@@ -482,27 +400,9 @@
                 String barcode = barcodeThread.getBarcode();
 
 
-                //101绔欐湁3涓壂鐮佸櫒锛屽綋0鎵爜鍣ㄦ病鏈夋暟鎹椂锛岃幏鍙�9銆�10涓や釜鎵爜鍣ㄦ暟鎹�
-                if((pickSta.getStaNo().equals(101) || pickSta.getStaNo().equals(104)) && ( "NoRead".equals(barcode) || Cools.isEmpty(barcode) )){
-                    BarcodeThread barcodeThread1 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode1());
-                    if (barcodeThread1 != null) {
-                        barcode = barcodeThread1.getBarcode();
-                    }
-
-                    if("NoRead".equals(barcode) || Cools.isEmpty(barcode)) {
-                        BarcodeThread barcodeThread2 = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode2());
-                        if (barcodeThread2 != null) {
-                            barcode = barcodeThread2.getBarcode();
-
-                        }
-                    }
-                }
 
                 if (!Cools.isEmpty(barcode)) {
                     log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", pickSta.getBarcode(), barcode);
-//                    if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
-//                        continue;
-//                    }
                 } else {
                     continue;
                 }
@@ -521,16 +421,26 @@
 //                    WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
                     WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
                     LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, pickSta.getLed());
+                    ledThread.errorReset();
                     if (wrkMast == null) {
                         wrkMast = wrkMastMapper.selectPickStep(barcode);
                     }
                     if (wrkMast == null) {
                         // 鏃犳嫞鏂欐暟鎹�
-
+                        Integer led = pickSta.getLed();
                         if (ledThread != null) {
-                            String errorMsg = "鏆傛棤鎷f枡淇℃伅锛侊紒锛�";
+                            String errorMsg = "鏆傛棤鎷f枡/鐩樼偣淇℃伅锛侊紒锛�";
                             MessageQueue.offer(SlaveType.Led, pickSta.getLed(), new Task(3, errorMsg));
                         }
+//                        // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
+//                        devpThread.ioModeOf1F1 = IoModeType.PAKOUT_BOOTING;
+//                        staProtocol.setWorkNo((short)9999);
+//                        staProtocol.setStaNo((short)(staProtocol.getStaNo()-1));
+//                        devpThread.setPakMk(staProtocol.getSiteId(), false);
+//                        boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+//                        if (!result) {
+//                            log.error("鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+//                        }
                         continue;
                     }
                     if ((wrkMast.getIoType() != 103 && wrkMast.getIoType() != 104 && wrkMast.getIoType() != 107)
@@ -575,24 +485,6 @@
                                 break;
                             case 103:
                                 sourceStaNo = 104;
-                                break;
-                            case 110:
-                                sourceStaNo = 111;
-                                break;
-                            case 113:
-                                sourceStaNo = 114;
-                                break;
-                            case 200:
-                                sourceStaNo = 201;
-                                break;
-                            case 203:
-                                sourceStaNo = 204;
-                                break;
-                            case 300:
-                                sourceStaNo = 301;
-                                break;
-                            case 303:
-                                sourceStaNo = 304;
                                 break;
                         }
 
@@ -986,24 +878,6 @@
                     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;
                 }
 
@@ -1475,9 +1349,8 @@
 
                 // 绔欑偣鏉′欢鍒ゆ柇
                 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable()
-                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() > 9990
+                        && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() >= 9990
                         && staProtocol.getWorkNo() <= 9999) && staProtocol.isPakMk()) {
-
                     try {
                         LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
 
@@ -1623,6 +1496,7 @@
                 }
                 ledCommand.setSourceLocNo(wrkMast.getSourceLocNo());
                 ledCommand.setStaNo(wrkMast.getStaNo());
+                ledCommand.setBarcode(wrkMast.getBarcode());
                 if (wrkMast.getIoType() != 110) {
                     List<WrkDetl> wrkDetls = wrkDetlService.findByWorkNo(wrkMast.getWrkNo());
                     wrkDetls.forEach(wrkDetl -> {
@@ -1698,7 +1572,7 @@
             // led鏄剧ず榛樿鍐呭
             if (reset) {
                 if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(2, new ArrayList<>()))) {
-                    News.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+                    News.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触1565锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
                 }
             }
         }
@@ -2176,25 +2050,7 @@
                             staNo = 102;
                             break;
                         case 104:
-                            staNo = 106;
-                            break;
-                        case 111:
-                            staNo = 112;
-                            break;
-                        case 114:
-                            staNo = 116;
-                            break;
-                        case 201:
-                            staNo = 202;
-                            break;
-                        case 204:
-                            staNo = 205;
-                            break;
-                        case 301:
-                            staNo = 302;
-                            break;
-                        case 304:
-                            staNo = 305;
+                            staNo = 105;
                             break;
                     }
                     WrkMast pakout = wrkMastMapper.selectWorkingPakout(staNo);
@@ -2233,114 +2089,6 @@
                             } else {
                                 // 鍏ュ簱妯″紡
                                 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 204: // 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 304: // 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