From f9c94d8ed81d4897f063fbf0e2d36cdfeda79456 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期三, 09 十月 2024 13:40:05 +0800
Subject: [PATCH] #并板超重

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   66 +++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 16 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 c821507..1d21dc6 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -40,14 +40,16 @@
 import com.zy.core.thread.LedThread;
 import com.zy.core.thread.SiemensDevpThread;
 import lombok.extern.slf4j.Slf4j;
-import net.bytebuddy.asm.Advice;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Set;
 import java.util.stream.Collectors;
 
 /**
@@ -118,6 +120,7 @@
                 if (barcodeThread == null) {
                     continue;
                 }
+
                 String barcode = barcodeThread.getBarcode();
                 // 灏哄妫�娴嬪紓甯�
                 boolean back = false;
@@ -150,10 +153,18 @@
                     errMsg = "鎵爜澶辫触";
                     back = true;
                 }
+
+                //鎷f枡銆佺洏鐐逛换鍔★紝涓嶈繘鍏ユ柊鏉垮叆搴撴柟娉曪紝鐩存帴璺冲嚭
+                if(staProtocol.getWorkNo()>=3001 && staProtocol.getWorkNo()<=6000){
+                    continue;
+                }
+
                 // 閫�鍥�
                 if (back) {
 //                        News.warn("鎵爜鍏ュ簱澶辫触锛寋}鍏ュ簱绔欏洜{}寮傚父锛屾墭鐩樺凡琚��鍥�", inSta.getStaNo(), errMsg);
-                    MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errMsg));
+                    if(!staProtocol.isOutEnable()){
+                        continue;
+                    }
 
                     if (!staProtocol.isLoading()){
                         continue;
@@ -169,8 +180,6 @@
                     MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
                     MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errMsg));
                 }
-
-
 
                 // 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢
                 if (staProtocol.isAutoing()
@@ -192,17 +201,17 @@
                         }
                         continue;
                     }
-                    //鍒ゆ柇101鍜�104鏄惁鏄嫞鏂欍�佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱   璁惧鏆備笉鏀寔101銆�104绔欑洏鐐�/鎷f枡鍏ュ簱
-                    WrkMast wrkMast1=wrkMastMapper.selectpj(inSta.getStaNo(),barcode);
-                    if(!Cools.isEmpty(wrkMast1)){
-                        if (wrkMast1.getIoType()!=1){
-                            continue;
-                        }
-                    }
-                    if( !Cools.isEmpty(barcode)&&!Cools.isEmpty(wrkMast1)){
-                        log.error("101鎴�104鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱", wrkMast1.getWrkNo());
-                        continue;
-                    }
+//                    //鍒ゆ柇101鍜�104鏄惁鏄嫞鏂欍�佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱   璁惧鏆備笉鏀寔101銆�104绔欑洏鐐�/鎷f枡鍏ュ簱
+//                    WrkMast wrkMast1=wrkMastMapper.selectpj(inSta.getStaNo(),barcode);
+//                    if(!Cools.isEmpty(wrkMast1)){
+//                        if (wrkMast1.getIoType()!=1){
+//                            continue;
+//                        }
+//                    }
+//                    if( !Cools.isEmpty(barcode)&&!Cools.isEmpty(wrkMast1)){
+//                        log.error("101鎴�104鎷f枡銆佸苟鏉裤�佺洏鐐瑰啀鍏ュ簱", wrkMast1.getWrkNo());
+//                        continue;
+//                    }
                     // 鍒ゆ柇閲嶅宸ヤ綔妗�
                     WrkMast wrkMast = wrkMastMapper.selectPakInStep1(inSta.getStaNo(), barcode);
                     if (wrkMast != null) {
@@ -498,6 +507,28 @@
                             || Cools.isEmpty(wrkMast.getStaNo()) || Cools.isEmpty(wrkMast.getSourceStaNo())) {
                         continue;
                     }
+                    LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>().eq("barcode", barcode));
+                    if (Cools.isEmpty(locMast1)) {
+                        continue;
+                    } else {
+                        if (locMast1.getLocType1().equals((short)2)) {
+                            if (staProtocol.isWeight()) {
+                                staProtocol.setWorkNo(wrkNo);
+                                wrkNo++;
+                                staProtocol.setStaNo(pickSta.getBackSta().shortValue());
+                                devpThread.setPakMk(staProtocol.getSiteId(), false);
+                                MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+                                // led 寮傚父鏄剧ず
+                                if (ledThread != null) {
+                                    String errorMsg = "骞舵澘鍏ュ簱閲嶉噺澶т簬搴撲綅閲嶉噺锛岃閲嶆柊璋冩暣";
+                                    News.error(methodName + ":骞舵澘鍏ュ簱閲嶉噺澶т簬搴撲綅閲嶉噺锛岃閲嶆柊璋冩暣");
+                                    MessageQueue.offer(SlaveType.Led, pickSta.getLed(), new Task(3, errorMsg));
+                                }
+                                continue;
+                            }
+                        }
+                    }
+
 
                     // 鎷c�佺洏銆佸苟 浣滀笟绔欒浆鎹�
 //                    int stnNo = 0;
@@ -1890,6 +1921,8 @@
                 if (!MessageQueue.offer(SlaveType.Led, led.getId(), new Task(1, commands))) {
                     News.error("{}鍙稬ED鍛戒护涓嬪彂澶辫触锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
                     continue;
+                } else {
+                    News.info("{}鍙稬ED鍛戒护涓嬪彂鎴愬姛锛侊紒锛乕ip锛歿}] [port锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort(),commands);
                 }
             }
 
@@ -1946,6 +1979,7 @@
             LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getId());
             // led鏄剧ず榛樿鍐呭
             if (reset) {
+                //News.info("{}鍙稬ED鍛戒护閲嶇疆锛侊紒锛乕ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
                 if (ledThread == null) {
                     continue;
                 }

--
Gitblit v1.9.1