From 4501ec94feef7504a8b43859983254ce3ae7dbd1 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期三, 28 六月 2023 14:11:34 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 144 +++++++++++++++++++++--------------------------
1 files changed, 64 insertions(+), 80 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 c9afd08..52964b6 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -108,11 +108,11 @@
String barcode = barcodeThread.getBarcode();
////鍒ゆ柇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;
- //}
+ 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);
@@ -147,23 +147,30 @@
}
// 鍒ゆ柇鏄惁婊¤冻鍏ュ簱鏉′欢
- if (staProtocol.isAutoing() && staProtocol.isLoading()
+ if (staProtocol.isAutoing()
+ && staProtocol.isLoading()
&& staProtocol.isInEnable()
- && !staProtocol.isEmptyMk() && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990)
- && staProtocol.isPakMk()) {// && !Cools.isEmpty(barcode)) {
+ && !staProtocol.isEmptyMk()
+ && (staProtocol.getWorkNo() == 0 || staProtocol.getWorkNo() > 9990)
+ && staProtocol.isPakMk()) {
-// if(Cools.isEmpty(barcode) || "NG".endsWith(barcode) || "NoRead".equals(barcode)) {
-// log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
-// //鏉$爜涓虹┖鎴栬�呬笉绗﹀悎锛岄��搴撳埌172绔欑偣
-// staProtocol.setWorkNo((short)9999);
-// staProtocol.setStaNo((short)172);
-// devpThread.setPakMk(staProtocol.getSiteId(), false);
-// boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
-// if (!result) {
-// throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
-// }
-// continue;
-// }
+ if(Cools.isEmpty(barcode) || "NG".endsWith(barcode) || "NoRead".equals(barcode)) {
+ log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
+ //鏉$爜涓虹┖鎴栬�呬笉绗﹀悎锛岄��搴撳埌
+ LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
+ if (ledThread != null) {
+ String errorMsg = "鎵爜澶辫触锛岃閲嶈瘯";
+ MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
+ }
+ 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) {
+ throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+ }
+ continue;
+ }
// 鍒ゆ柇閲嶅宸ヤ綔妗�
WrkMast wrkMast = new WrkMast();
@@ -174,8 +181,7 @@
continue;
}
}
-
-// // 鑾峰彇鍏ュ簱閫氱煡妗�
+// 鑾峰彇鍏ュ簱閫氱煡妗�
// List<WaitPakin> waitPakins = waitPakinMapper.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", barcode).eq("io_status", "N"));
// if (waitPakins.isEmpty()) {
// log.error("鏃犳鍏ュ簱鏉$爜鏁版嵁銆傛潯鐮佸彿={}", barcode);
@@ -183,9 +189,7 @@
// }
try {
-
LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
-
SearchLocParam param = new SearchLocParam();
param.setBarcode(barcode);
param.setIoType(1);
@@ -200,7 +204,6 @@
.doPost();
JSONObject jsonObject = JSON.parseObject(response);
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);
@@ -213,43 +216,19 @@
if (!result) {
throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
}
+ } else if(jsonObject.getInteger("code").equals(700)) {
+ staProtocol.setWorkNo((short) 9999);
+ staProtocol.setStaNo(inSta.getBackSta().shortValue());
+ devpThread.setPakMk(staProtocol.getSiteId(), false);
+ MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+ // led 寮傚父鏄剧ず
+ if (ledThread != null) {
+ String errorMsg = barcode + "鎵樼洏璇嗗埆寮傚父锛岃鍏堣繘琛岀粍鎵橈紒";
+ MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
+ }
} else {
log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response);
}
-// if (jsonObject.getInteger("code").equals(200)) {
-// StartupDto dto = jsonObject.getObject("data", StartupDto.class);
-//
-// barcodeThread.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绔欑偣淇℃伅澶辫触");
-// }
-// } else if(code == 500){
-// if (ledThread != null) {
-// String errorMsg = jsonObject.getString("msg");
-// if (!Cools.isEmpty(errorMsg)) {
-// MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
-// }
-// }
-// log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/rpc/pakin/loc/v1", JSON.toJSONString(param), response);
-// } else if (code == 700) {
-// staProtocol.setWorkNo((short) 9995);
-// staProtocol.setStaNo(inSta.getBackSta().shortValue());
-// devpThread.setPakMk(staProtocol.getSiteId(), false);
-// MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
-//
-// // led 寮傚父鏄剧ず
-// if (ledThread != null) {
-// String errorMsg = barcode + "鎵樼洏璇嗗埆寮傚父锛岃鍏堣繘琛岀粍鎵橈紒";
-// MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
-// }
-// }
// // 妫�绱㈠簱浣�
@@ -393,18 +372,16 @@
for (DevpSlave.Sta pickSta : devp.getPickSta()) {
// 鑾峰彇鏉$爜鎵弿浠俊鎭�
BarcodeThread barcodeThread = (BarcodeThread) SlaveConnection.get(SlaveType.Barcode, pickSta.getBarcode());
-
if (barcodeThread == null) {
continue;
}
String barcode = barcodeThread.getBarcode();
-
-
if (!Cools.isEmpty(barcode)) {
log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", pickSta.getBarcode(), barcode);
- } else {
- continue;
+ if ("NG".endsWith(barcode) || "NoRead".equals(barcode)) {
+ continue;
+ }
}
// 鑾峰彇鎷f枡鍏ュ簱绔欎俊鎭�
@@ -417,30 +394,37 @@
}
- if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk()) {
+ if (staProtocol.isAutoing()
+ && staProtocol.isLoading()
+ && staProtocol.isInEnable()
+ && staProtocol.isPakMk()
+ && staProtocol.getWorkNo() == 9991) {
// WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
- WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, pickSta.getLed());
+ if (barcode.equals("") || barcode.equals("99999999")) {
+ Integer led = pickSta.getLed();
+ if (ledThread != null) {
+ String errorMsg = "鎵爜寮傚父锛岃閲嶆柊鍏ュ簱锛�";
+ MessageQueue.offer(SlaveType.Led, pickSta.getLed(), new Task(3, errorMsg));
+ }
+// // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
+ 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;
+ }
+
+ WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
ledThread.errorReset();
if (wrkMast == null) {
wrkMast = wrkMastMapper.selectPickStep(barcode);
}
if (wrkMast == null) {
// 鏃犳嫞鏂欐暟鎹�
- Integer led = pickSta.getLed();
- if (ledThread != null) {
- 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)
--
Gitblit v1.9.1