From c9dd6d06513365d464eb5c87d602ee2ac775f4a3 Mon Sep 17 00:00:00 2001
From: lsh <lsh123456>
Date: 星期日, 08 一月 2023 19:23:32 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   89 +++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 78 insertions(+), 11 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 85b2613..d280b4d 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -105,14 +105,6 @@
                     continue;
                 }
                 String barcode = barcodeThread.getBarcode();
-                if (!Cools.isEmpty(barcode)) {
-                    log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
-                    if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
-                        continue;
-                    }
-                } else {
-                    continue;
-                }
 
                 // 鑾峰彇鍏ュ簱绔欎俊鎭�
                 SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
@@ -121,6 +113,38 @@
                     continue;
                 } else {
                     staProtocol = staProtocol.clone();
+                }
+
+                if (!Cools.isEmpty(barcode)) {
+                    log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
+                    if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
+                        if (inSta.getStaNo()==101 || inSta.getStaNo()==109 || inSta.getStaNo()==117){
+                            staProtocol.setWorkNo((short)9999);
+                            staProtocol.setStaNo((short)100);
+                            devpThread.setPakMk(staProtocol.getSiteId(), false);
+                            boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                            if (!result) {
+                                throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+                            }
+                        }else if (inSta.getStaNo()==201 || inSta.getStaNo()==207 || inSta.getStaNo()==213){
+                            staProtocol.setWorkNo((short)9999);
+                            if (inSta.getStaNo()==201){
+                                staProtocol.setStaNo((short)200);
+                            }else if (inSta.getStaNo()==207){
+                                staProtocol.setStaNo((short)206);
+                            }else if (inSta.getStaNo()==213){
+                                staProtocol.setStaNo((short)212);
+                            }
+                            devpThread.setPakMk(staProtocol.getSiteId(), false);
+                            boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                            if (!result) {
+                                throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+                            }
+                        }
+                        continue;
+                    }
+                } else {
+                    continue;
                 }
 
                 // 鍏ュ嚭搴撴ā寮忓垽鏂�
@@ -150,11 +174,31 @@
 
                     // 鍒ゆ柇閲嶅宸ヤ綔妗�
                     WrkMast wrkMast = wrkMastMapper.selectPakInStep1(inSta.getStaNo(), barcode);
+                    WrkMast wrkMast1 = wrkMastMapper.selectPakInStepBarcode(barcode);
+                    if (wrkMast1 !=null){
+                        if (wrkMast1.getIoType()==103 || wrkMast1.getIoType()==107 || wrkMast1.getIoType()==104){
+                            continue;
+                        }
+                    }
                     if (wrkMast != null) {
                         log.error("宸ヤ綔妗d腑宸插瓨鍦ㄨ绔欑姸鎬佷负锛� 2.璁惧涓婅蛋 锛夌殑鏁版嵁,宸ヤ綔鍙�={}", wrkMast.getWrkNo());
-                        if (inSta.getStaNo()==100 || inSta.getStaNo()==108 || inSta.getStaNo()==116){
+                        if (inSta.getStaNo()==101 || inSta.getStaNo()==109 || inSta.getStaNo()==117){
                             staProtocol.setWorkNo((short)9999);
                             staProtocol.setStaNo((short)100);
+                            devpThread.setPakMk(staProtocol.getSiteId(), false);
+                            boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                            if (!result) {
+                                throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+                            }
+                        }else if (inSta.getStaNo()==201 || inSta.getStaNo()==207 || inSta.getStaNo()==213){
+                            staProtocol.setWorkNo((short)9999);
+                            if (inSta.getStaNo()==201){
+                                staProtocol.setStaNo((short)200);
+                            }else if (inSta.getStaNo()==207){
+                                staProtocol.setStaNo((short)206);
+                            }else if (inSta.getStaNo()==213){
+                                staProtocol.setStaNo((short)212);
+                            }
                             devpThread.setPakMk(staProtocol.getSiteId(), false);
                             boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
                             if (!result) {
@@ -199,6 +243,29 @@
                             }
                         } else {
                             log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response);
+                            if (inSta.getStaNo()==101 || inSta.getStaNo()==109 || inSta.getStaNo()==117){
+                                staProtocol.setWorkNo((short)9999);
+                                staProtocol.setStaNo((short)100);
+                                devpThread.setPakMk(staProtocol.getSiteId(), false);
+                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                                if (!result) {
+                                    throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+                                }
+                            }else if (inSta.getStaNo()==201 || inSta.getStaNo()==207 || inSta.getStaNo()==213){
+                                staProtocol.setWorkNo((short)9999);
+                                if (inSta.getStaNo()==201){
+                                    staProtocol.setStaNo((short)200);
+                                }else if (inSta.getStaNo()==207){
+                                    staProtocol.setStaNo((short)206);
+                                }else if (inSta.getStaNo()==213){
+                                    staProtocol.setStaNo((short)212);
+                                }
+                                devpThread.setPakMk(staProtocol.getSiteId(), false);
+                                boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                                if (!result) {
+                                    throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+                                }
+                            }
                         }
 
 
@@ -366,8 +433,8 @@
 //                if (devpThread.ioMode != IoModeType.PAKIN_MODE) { continue; }
 
                 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk()) {
-//                    WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
-                    WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
+                    WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
+//                    WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
                     if (wrkMast == null) {
                         // 鏃犳嫞鏂欐暟鎹�
                         continue;

--
Gitblit v1.9.1