From 7c315b53808a66a2f1faf90930ecffdc85ba455f Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期二, 13 五月 2025 11:34:15 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/task/TaskLogScheduler.java | 4 +
src/main/java/com/zy/core/thread/RgvThread.java | 4
src/main/java/com/zy/asrs/entity/TaskWrk.java | 9 --
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 34 +++-----
src/main/java/com/zy/asrs/controller/TaskWrkController.java | 125 +++++++++++++++---------------
src/main/resources/mapper/TaskWrkMapper.xml | 5
6 files changed, 85 insertions(+), 96 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/TaskWrkController.java b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
index e5c5556..4c5eb58 100644
--- a/src/main/java/com/zy/asrs/controller/TaskWrkController.java
+++ b/src/main/java/com/zy/asrs/controller/TaskWrkController.java
@@ -261,43 +261,44 @@
}
String response="";
- 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());
- log.info("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms={}", taskWrk);
- 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澶眥},杩斿洖鍊�={}", taskWrk,response);
-// throw new CoolException(e);
- }
Date now = new Date();
locMast.setModiTime(now);
- locMastService.updateById(locMast);
taskWrk.setStatus(7);//鎵嬪姩瀹屾垚浠诲姟
taskWrk.setModiTime(now);
taskWrk.setCompleteTime(now);
+// 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());
+//
+// log.info("wcs鎵嬪姩瀹屾垚浠诲姟涓婃姤wms={}", taskWrk);
+// 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澶眥},杩斿洖鍊�={}", taskWrk,response);
+//// throw new CoolException(e);
+// }
+ locMastService.updateById(locMast);
taskWrkService.updateById(taskWrk);
return R.ok();
}
@@ -322,37 +323,37 @@
taskWrk.setModiUser(1111L);//鎿嶄綔鍛�
}
String response="";
- 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());
-
-
- log.info("wcs鎵嬪姩鍙栨秷浠诲姟涓婃姤wm={}", taskWrk);
- 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澶辫触={},杩斿洖鍊�={}", taskWrk,response);
-// throw new CoolException(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());
+//
+//
+// log.info("wcs鎵嬪姩鍙栨秷浠诲姟涓婃姤wm={}", taskWrk);
+// 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澶辫触={},杩斿洖鍊�={}", taskWrk,response);
+//// throw new CoolException(e);
+// }
taskWrk.setCompleteTime(now);//瀹岀粨鏃堕棿
taskWrkService.updateById(taskWrk);
return R.ok();
diff --git a/src/main/java/com/zy/asrs/entity/TaskWrk.java b/src/main/java/com/zy/asrs/entity/TaskWrk.java
index 9a52081..1bb934f 100644
--- a/src/main/java/com/zy/asrs/entity/TaskWrk.java
+++ b/src/main/java/com/zy/asrs/entity/TaskWrk.java
@@ -377,14 +377,7 @@
}
public Integer getStatusWms(){
- switch (status){
- case 5:
- return 1;
- case 4:
- return 0;
- default:
- return 0;
- }
+ return status;
}
public String getPut(String point){
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 077784a..feaa189 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1400,22 +1400,13 @@
|| (!rgvProtocol.getStatusType().equals(RgvStatusType.IDLE) && !rgvProtocol.getStatusType().equals(RgvStatusType.ROAM))) {
return false;
}
- RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(slave.getId());
- RgvTaskProtocol rgvTaskProtocolOther = RgvTaskCache.getRgvStatus(slave.getId());
- if (rgvProtocolOther == null) {
- return true;
- }
- if (rgvProtocolOther.statusEnable) {
- if (rgvProtocolOther.getModeType().equals(RgvModeType.AUTO)
- && rgvProtocolOther.getStatusType().equals(RgvStatusType.IDLE)
- && rgvProtocolOther.getLoaded()==0) {
- return false;
- }
+ if (rgvProtocol.getLoaded()!=0) {
+ return false;
}
return true;
}
- public boolean rgvOtherIDLE(RgvSlave slave) {
+ public boolean rgvOtherIDLE(RgvSlave slave,Integer staNo) {
RgvProtocol rgvProtocol = RgvStatusCache.getRgvStatus(slave.getId());
RgvTaskProtocol rgvTaskProtocol = RgvTaskCache.getRgvStatus(slave.getId());
@@ -1427,15 +1418,15 @@
return false;
}
RgvProtocol rgvProtocolOther = RgvStatusCache.getRgvStatus(slave.getOtherId());
- RgvTaskProtocol rgvTaskProtocolOther = RgvTaskCache.getRgvStatus(slave.getOtherId());
if (rgvProtocolOther == null) {
return true;
}
if (rgvProtocolOther.statusEnable) {
- if (rgvProtocolOther.getModeType().equals(RgvModeType.AUTO)
- && rgvProtocolOther.getStatusType().equals(RgvStatusType.IDLE)
- && rgvProtocolOther.getLoaded()==0) {
+ BasDevpPosition basDevpPosition = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", staNo));
+ if (Math.abs(basDevpPosition.getPlcPosition()-rgvProtocol.getRgvPos())
+ >=
+ Math.abs(basDevpPosition.getPlcPosition()-rgvProtocolOther.getRgvPos())){
return false;
}
}
@@ -1491,7 +1482,7 @@
for (RgvSlave.RgvStn inSta : rgvSlave.getRgvInSta()) {
TaskWrk taskWrk = deviceDetection(inSta);
if (taskWrk != null) {
- if (taskWrk.getTaskNo().equals(taskNoNow)) continue;
+ if (taskWrk.getWrkNo().toString().equals(taskNoNow)) continue;
taskWrkList.add(taskWrk);
staList.add(inSta.getStaNo());
}
@@ -1550,10 +1541,9 @@
}
}
}
-
- if (!sign){
+ if (!sign && belongToRange.size()==1){
if (rgvOtherIDLEOther(rgvSlave)){
- if (!rgvOtherIDLE(rgvSlave)){
+ if (!rgvOtherIDLE(rgvSlave,belongToRange.get(0))){
sign=true;
}
}
@@ -1693,7 +1683,7 @@
BasDevpPosition basDevpPositionSou = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", rgvStn.getStaNo()));
BasDevpPosition basDevpPositionEnd = basDevpPositionService.selectOne(new EntityWrapper<BasDevpPosition>().eq("DEV_NO", targetPointConvert));
//鎵ц
- issuedTake.setTaskNo(Long.valueOf(taskWrk.getTaskNo()));
+ issuedTake.setTaskNo(Long.valueOf(taskWrk.getWrkNo()));
issuedTake.setTaskStatus(2);
issuedTake.setTaskNoDirection(issuedTake.gettaskNoDirection$(issuedTake.getTaskNo(), issuedTake.getTaskStatus()));
issuedTake.setTargetPosition(basDevpPositionSou.getPlcPosition());
@@ -1701,7 +1691,7 @@
issuedTake.setDirection(basDevpPositionSou.getRgvSign()==1);
- issuedPut.setTaskNo(Long.valueOf(taskWrk.getTaskNo()));
+ issuedPut.setTaskNo(Long.valueOf(taskWrk.getWrkNo()));
issuedPut.setTaskStatus(3);
issuedPut.setTaskNoDirection(issuedPut.gettaskNoDirection$(issuedPut.getTaskNo(), issuedPut.getTaskStatus()));
issuedPut.setTargetPosition(basDevpPositionEnd.getPlcPosition());
diff --git a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
index 174fbdf..2da886f 100644
--- a/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
+++ b/src/main/java/com/zy/asrs/task/TaskLogScheduler.java
@@ -57,6 +57,10 @@
public void execute() throws IOException {
List<TaskWrk> taskWrkList = taskWrkService.selectToBeHistoryData();
for (TaskWrk taskWrk : taskWrkList) {
+ if (taskWrkService.saveToHistory(taskWrk.getTaskNo()) == 0) {
+ log.error("浠诲姟妗h浆浠诲姟鍘嗗彶妗eけ璐�" + taskWrk);
+ return ;
+ }
JSONObject jsonObject = null;
String response = null;
boolean success = false;
diff --git a/src/main/java/com/zy/core/thread/RgvThread.java b/src/main/java/com/zy/core/thread/RgvThread.java
index 386207f..6453b18 100644
--- a/src/main/java/com/zy/core/thread/RgvThread.java
+++ b/src/main/java/com/zy/core/thread/RgvThread.java
@@ -378,7 +378,7 @@
> avoidDistance) {//鏃犻渶閬胯
return true;
} else {
- if (rgvProtocolOther.getRgvPosDestination() >= rgvProtocolOther.getRgvPos()) {
+ if (rgvProtocolOther.getRgvPosDestination() >= rgvProtocolOther.getRgvPos()-50) {
long avoid = rgvProtocolOther.getRgvPos() - rgvProtocolOther.getCarBodyJiaoMing() - avoidDistance - rgvProtocol.getCarBodyKunPeng();
if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[1])) {
log.error("琛岃蛋瓒呭嚭鑼冨洿锛侊紒锛佷换鍔″紓甯� 鑱旂郴绠$悊鍛橈紒锛侊紒");
@@ -450,7 +450,7 @@
> avoidDistance) {//鏃犻渶閬胯
return true;
} else {
- if (rgvProtocolOther.getRgvPosDestination() <= rgvProtocolOther.getRgvPos()) {
+ if (rgvProtocolOther.getRgvPosDestination() <= rgvProtocolOther.getRgvPos() + 50) {
long avoid = rgvProtocolOther.getRgvPos() + rgvProtocolOther.getCarBodyKunPeng() + avoidDistance + rgvProtocol.getCarBodyJiaoMing();
if (!new TrackRangeUtils().avoidRange(avoid, avoidRange[0])) {
log.error("琛岃蛋瓒呭嚭鑼冨洿锛侊紒锛佷换鍔″紓甯� 鑱旂郴绠$悊鍛橈紒锛侊紒");
diff --git a/src/main/resources/mapper/TaskWrkMapper.xml b/src/main/resources/mapper/TaskWrkMapper.xml
index 6058986..9787512 100644
--- a/src/main/resources/mapper/TaskWrkMapper.xml
+++ b/src/main/resources/mapper/TaskWrkMapper.xml
@@ -123,7 +123,7 @@
select * from "SOURCE"."wcs_task_wrk"
where 1=1
and (("WRK_STS"=14 and "STATUS"=5) or "STATUS"=7 or "STATUS"=4
- or ("WRK_STS"=4 and "STATUS"=5))
+ or ("WRK_STS"=4 and "STATUS"=5) or ("WRK_STS"=14 and "STATUS"=9))
order by "IO_PRI" desc,"CREATE_TIME","WRK_NO" ASC
</select>
@@ -131,7 +131,8 @@
insert into "SOURCE"."wcs_task_wrk_log"
select * from "SOURCE"."wcs_task_wrk"
where "TASK_NO" = #{taskNo}
- and ("STATUS"=5 or "STATUS"=4 or "STATUS"=6)
+ and ("STATUS"=5 or "STATUS"=4 or "STATUS"=6 or "STATUS"=7 or "STATUS"=9)
+ and ("WRK_NO" not in (select "WRK_NO" from "SOURCE"."asr_bas_devp"))
</insert>
<insert id="saveToHistoryD">
--
Gitblit v1.9.1