From 013c2ef0869f8599ac71444d256a70271bc5171d Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期四, 06 十一月 2025 18:34:58 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 82 +++++++++++++++++++---------------------
1 files changed, 39 insertions(+), 43 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 27aa6a4..2a1996b 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2816,21 +2816,41 @@
// 濡傛灉鏈�杩戜竴娆℃槸鍏ュ簱妯″紡
if (crnProtocol.getLastIo().equals("I")) {
if (basCrnp.getInEnable().equals("Y")) {
- this.crnStnToLocDemo(crnSlave, crnProtocol); // 鍏ュ簱
- crnProtocol.setLastIo("O");
+ boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);// 鍏ュ簱
+ if (crnStnToLocDemo){
+ crnProtocol.setLastIo("O");
+ } else if (!crnProtocol.isSignIntOut()){
+ crnProtocol.setLastIo("O");
+ }
} else if (basCrnp.getOutEnable().equals("Y")) {
- this.locToCrnStnDemo(crnSlave, crnProtocol); // 鍑哄簱
- crnProtocol.setLastIo("I");
+ boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);// 鍑哄簱
+ if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
+ crnProtocol.setLastIo("I");
+ } else if (locToCrnStnDemo){
+ crnProtocol.setSignIntOut(true);
+ } else if (!crnProtocol.isSignIntOut()){
+ crnProtocol.setLastIo("I");
+ }
}
}
// 濡傛灉鏈�杩戜竴娆℃槸鍑哄簱妯″紡
else if (crnProtocol.getLastIo().equals("O")) {
if (basCrnp.getOutEnable().equals("Y")) {
- this.locToCrnStnDemo(crnSlave, crnProtocol); // 鍑哄簱
- crnProtocol.setLastIo("I");
+ boolean locToCrnStnDemo = this.locToCrnStnDemo(crnSlave, crnProtocol);// 鍑哄簱
+ if (locToCrnStnDemo && crnProtocol.isSignIntOut()){
+ crnProtocol.setLastIo("I");
+ } else if (locToCrnStnDemo){
+ crnProtocol.setSignIntOut(true);
+ } else if (!crnProtocol.isSignIntOut()){
+ crnProtocol.setLastIo("I");
+ }
} else if (basCrnp.getInEnable().equals("Y")) {
- this.crnStnToLocDemo(crnSlave, crnProtocol); // 鍏ュ簱
- crnProtocol.setLastIo("O");
+ boolean crnStnToLocDemo = this.crnStnToLocDemo(crnSlave, crnProtocol);// 鍏ュ簱
+ if (crnStnToLocDemo){
+ crnProtocol.setLastIo("O");
+ } else if (!crnProtocol.isSignIntOut()){
+ crnProtocol.setLastIo("O");
+ }
}
}
} else {
@@ -2852,7 +2872,8 @@
/**
* 鍏ュ簱 ===>> 鍫嗗灈鏈虹珯鍒板簱浣�
*/
- public void crnStnToLocDemo(CrnSlave slave, CrnProtocol crnProtocol) throws IOException {
+ public boolean crnStnToLocDemo(CrnSlave slave, CrnProtocol crnProtocol) throws IOException {
+ boolean result = false;
for (CrnSlave.CrnStn crnStn : slave.getCrnInStn()) {
List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("CRN_NO", crnProtocol.getLaneNo()).eq("CRN_STN", crnStn.getStaNo()));
@@ -2888,7 +2909,7 @@
if (Cools.isEmpty(taskWrk1)){
continue;
}
- if (taskWrk1.getIoType() == 3 && taskWrk1.getWrkSts()<3){
+ if (taskWrk1.getIoType() == 1 && taskWrk1.getWrkSts()<3){
taskWrk = taskWrk1;
break;
}
@@ -2944,6 +2965,7 @@
throw new CoolException("鍫嗗灈鏈哄懡浠ょ敓鎴愬け璐�");
} else {
+ result = true;
try {
devpThread.setErrorDev(staProtocol.getSiteId(), "-");
CrnErrCache.updateCrnErr(crnProtocol.getCrnNo(), "-");
@@ -2956,16 +2978,18 @@
}
}
}
+ return result;
}
/**
* 鍑哄簱 ===>> 搴撲綅鍒板爢鍨涙満绔�
* 2022-06-09 TQS淇敼锛屾煡璇㈠伐浣滄。LIST锛岄亶鍘嗕笅鍙戯紝闃叉绗竴涓换鍔″牭濉炲嚭搴�
*/
- public void locToCrnStnDemo(CrnSlave slave, CrnProtocol crnProtocol) {
+ public boolean locToCrnStnDemo(CrnSlave slave, CrnProtocol crnProtocol) {
+ boolean result = false;
List<TaskWrk> taskWrksInitial = taskWrkMapper.selectPakOut(crnProtocol.getLaneNo(), null);
if (taskWrksInitial.size() == 0) {
- return;
+ return result;
}
for (CrnSlave.CrnStn crnStn : slave.getCrnOutStn()) {
List<StaDesc> staDescs = staDescMapper.selectList(new EntityWrapper<StaDesc>().eq("CRN_NO", crnProtocol.getLaneNo()).eq("CRN_STN", crnStn.getStaNo()));
@@ -2998,7 +3022,7 @@
}
// 鍒ゆ柇鍫嗗灈鏈哄嚭搴撶珯鐘舵��
- if (staProtocol.isAutoing() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y")) {
+ if (staProtocol.isAutoing() && !staProtocol.isLoading() && staDetl.getCanouting() != null && staDetl.getCanouting().equals("Y")) {
// 鍫嗗灈鏈烘帶鍒惰繃婊�
if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE)) {
devpThread.setErrorDev(staProtocol.getSiteId(), "鍫嗗灈鏈洪潪绌洪棽");
@@ -3038,6 +3062,7 @@
CrnErrCache.updateCrnErr(crnProtocol.getCrnNo(), "杩愯鍛戒护涓嬪彂澶辫触");
throw new CoolException("鍫嗗灈鏈哄懡浠ょ敓鎴愬け璐�");
} else {
+ result = true;
try {
// 淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓�
Date now = new Date();
@@ -3054,36 +3079,6 @@
} catch (Exception e) {
log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽伐浣滃彿={}", taskWrk.getWrkNo());
log.error("淇敼宸ヤ綔妗g姸鎬� 11.鐢熸垚鍑哄簱ID => 12.鍚婅溅鍑哄簱涓� 澶辫触锛侊紒锛屽紓甯革細" + e);
- }
- try {
- HashMap<String, Object> headParam = new HashMap<>();
- headParam.put("taskNo",taskWrk.getTaskNo());
- headParam.put("taskStatus",taskWrk.getStatusWms());
- headParam.put("ioType",taskWrk.getIoTypeWms());
- headParam.put("barCode",taskWrk.getBarcode());
- headParam.put("reportTime", LocalDateTime.now());
- headParam.put("weight",taskWrk.getScWeight().doubleValue());
-
- String response;
- response = new HttpHandler.Builder()
- // .setHeaders(headParam)
- .setUri(wmsUrl)
- .setPath(taskStatusFeedbackPath)
- .setJson(JSON.toJSONString(headParam))
- .build()
- .doPost();
- JSONObject jsonObject = JSON.parseObject(response);
- apiLogService.save("wcs娲惧彂鍑哄簱浠诲姟涓婃姤wms"
- , wmsUrl + taskStatusFeedbackPath
- , null
- , "127.0.0.1"
- , JSON.toJSONString(headParam)
- , response
- , true
- );
- } catch (Exception e) {
- log.error("wcs娲惧彂鍑哄簱浠诲姟涓婃姤wms澶辫触", JSON.toJSONString(taskWrk));
-// throw new CoolException("wcs娲惧彂鍏ュ簱浠诲姟涓婃姤wms澶辫触");
}
}
} else {
@@ -3108,6 +3103,7 @@
}
}
}
+ return result;
}
/**
--
Gitblit v1.9.1