From 64ec70b0423cc9f745fdf269c0d1d7c5828b42c8 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期二, 16 七月 2024 14:40:28 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 110 ++++++++++++++++++++++++++++++++++--------------------
1 files changed, 69 insertions(+), 41 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 caa1916..dff44cb 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;
@@ -170,14 +181,12 @@
MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errMsg));
}
-
-
// 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢
if (staProtocol.isAutoing()
&& staProtocol.isLoading()
&& staProtocol.isInEnable()
&& !staProtocol.isEmptyMk()
- && staProtocol.isPakMk()) {// && !Cools.isEmpty(barcode)) {
+ && staProtocol.isPakMk() && !back) {// && !Cools.isEmpty(barcode)) {
if(Cools.isEmpty(barcode) || "NG".endsWith(barcode) || "NoRead".equals(barcode) || "00000000".equals(barcode)) {
News.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
@@ -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) {
@@ -437,33 +446,39 @@
}
String barcode = barcodeThread.getBarcode();
- if (!Cools.isEmpty(barcode)) {
+ WrkMast wrkMast1 = wrkMastMapper.selectPickStep1(staProtocol.getWorkNo().intValue());
+
+ //浠诲姟鍙峰鏋滃湪宸ヤ綔妗d腑瀛樺湪锛屽氨涓嶇敤鍘诲垽鏂潯鐮�
+ if(Cools.isEmpty(wrkMast1)) {
+ if (!Cools.isEmpty(barcode)) {
// log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", pickSta.getBarcode(), barcode);
- if ("NG".endsWith(barcode) || "NoRead".equals(barcode) ) {
- if (!staProtocol.isLoading()) {
+ if ("NG".endsWith(barcode) || "NoRead".equals(barcode) && staProtocol.isPakMk()) {
+ if (!staProtocol.isLoading()) {
+ continue;
+ }
+ if (!staProtocol.isPakMk()) {
+ continue;
+ }
+ if (staProtocol.getWorkNo() != 0) {
+ continue;
+ }
+
+ 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;
}
- if (!staProtocol.isPakMk()) {
- continue;
- }
- if(staProtocol.getWorkNo() != 0) {
- continue;
- }
- 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));
- }
+ } else {
continue;
}
- } else {
- continue;
}
@@ -477,7 +492,12 @@
// && (staProtocol.getWorkNo() == 9999 || staProtocol.getWorkNo() == 9997 || staProtocol.getWorkNo() == 9995)
&& staProtocol.isPakMk()) {
- WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
+ WrkMast wrkMast = null;
+ //浼樺厛鏌ヨ浠诲姟鍙峰搴旂殑宸ヤ綔妗f湁娌℃湁锛屽鏋滄湁鐨勮瘽灏变笉鐢ㄦ煡鏉$爜鍙�
+ wrkMast = wrkMastMapper.selectPickStep1(staProtocol.getWorkNo().intValue());
+ if(Cools.isEmpty(wrkMast)) {
+ wrkMast = wrkMastMapper.selectPickStep(barcode);
+ }
// WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
if (wrkMast == null) {
// 鏃犳嫞鏂欐暟鎹�
@@ -1879,6 +1899,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);
}
}
@@ -1917,6 +1939,7 @@
StaProtocol staProtocol = devpThread.getStation().get(staNo);
StaProtocol staProtocol1 = devpThread.getStation().get(staNo+1);
if (staProtocol == null) { continue; }
+ if (staProtocol1 == null) { continue; }
if (staProtocol.getWorkNo() != 0 || staProtocol.isLoading()) {
reset = false;
break;
@@ -1925,11 +1948,16 @@
reset = false;
break;
}
+ if (!staProtocol.isLoading() && staProtocol.getWorkNo() == 0 && !staProtocol1.isLoading() && staProtocol1.getWorkNo() == 0){
+// News.error("{}鍙稬ED鍏ュ簱鍙�2涓珯鐐归兘娌℃湁鏁版嵁,鍑嗗reset澶嶄綅鏄剧ず鍣紒锛侊紒[ip锛歿}] [port锛歿}]", led.getId(), led.getIp(), led.getPort());
+ }
}
// 鑾峰彇led绾跨▼
- LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getDevpPlcId());
+// LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, led.getDevpPlcId());
+ 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