From 7c264be282c33feedbd4478f7e674ebac8fd55db Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期六, 21 三月 2026 15:39:22 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 47 insertions(+), 11 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 dc6bda6..8242f56 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -285,6 +285,9 @@
staProtocolNew.setSiteId(staProtocol.getSiteId());
devpThread.setPakMk(staProtocol.getSiteId(), false);
staProtocolNew.setBarcode(barcode);
+ if(!staProtocolNew.isLoading()){
+ continue;
+ }
MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocolNew));
if (ledThread != null) {
News.error(methodName + ":鎵爜澶辫触锛岃閲嶈瘯");
@@ -643,7 +646,7 @@
wrkMast.setIoTime(now);
wrkMast.setIoType(wrkMast.getIoType() - 50); // 鍏ュ嚭搴撶被鍨�: 103->53,104->54,107->57
wrkMast.setWrkSts(2L); // 宸ヤ綔鐘舵��: 2.璁惧涓婅蛋
- wrkMast.setSourceStaNo(wrkMast.getStaNo()); // 婧愮珯
+ wrkMast.setSourceStaNo(staDesc.getStnNo()); // 婧愮珯
wrkMast.setStaNo(staNo); // 鐩爣绔�
wrkMast.setLocNo(wrkMast.getSourceLocNo()); // 鐩爣搴撲綅 = 鍑哄簱鏃剁殑婧愬簱浣�
wrkMast.setSourceLocNo(""); // 婧愬簱浣嶆竻绌�
@@ -1098,14 +1101,17 @@
}
}
}
- if(staProtocolIn.getWorkNo() != null && staProtocolIn.getStaNo() != 4001){
+ WrkMast wrkMastIn= wrkMastMapper.selectByWrkNo(staProtocolIn.getWorkNo());
+ if(wrkMastIn == null){
+ continue;
+ }
+ if(staProtocolIn.getWorkNo() != null && wrkMastIn.getStaNo() != 4001){
WrkMast wrkMastCrn = wrkMastMapper.selectByWrkNo(staProtocolIn.getWorkNo());
if(wrkMastCrn!=null){
if(wrkMastCrn.getCrnNo() == 3 ){
continue;
}
}
- WrkMast wrkMastIn = wrkMastMapper.selectByWrkNo(staProtocolIn.getWorkNo());
WrkMast wrkMast = wrkMastMapper.selectByWrkNo(9996);
if(wrkMastIn == null){
continue;
@@ -3063,6 +3069,8 @@
} else {
staProtocol = staProtocol.clone();
}
+
+
if (staProtocol.isAutoing() //鑷姩
&& !staProtocol.isLoading() //鏃犵墿
// && staProtocol.isOutEnable() //鍙嚭淇″彿
@@ -3825,7 +3833,6 @@
if(rgvProtocol.getStatusType1() == RgvStatusType.WORKING){
rgvThread.setPaking(true);
}
-
if(rgvProtocol.isLoaded1ing() && rgvProtocol.isLoaded2ing()){
basRgv.setPakAll("1");
basRgvService.updateById(basRgv);
@@ -3833,6 +3840,9 @@
if(rgvProtocol.getStatusType1() == RgvStatusType.IDLE &&
rgvProtocol.getModeType() == RgvModeType.AUTO && rgvThread.isPakMk()
&& rgvThread.isPaking() && basRgv.getPakAll().equals("1")){
+ if(rgvProtocol.isLoaded1ing() || rgvProtocol.isLoaded2ing()){
+ continue;
+ }
if(basRgv.getPakOut().equals("1") && basRgv.getPakIn().equals("1")){
rgvPreSchedulingIn(rgv, rgvProtocol);//鑻ユ殏鏃犱笅鍙戜换鍔¢璋冨害鎻愬墠鍒板彇璐х偣
if (rgvProtocol.getLastIo().equals("I")) {
@@ -4574,7 +4584,7 @@
//閬嶅巻rgv鍏ュ簱鍙栬揣绔欑偣
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, rgvStn.getDevpPlcId());
StaProtocol staProtocol = devpThread.getStation().get(rgvStn.getStaNo2()==1043?1044:1103); //鍊掓暟绗簩涓�
- StaProtocol staProtocol2 = null; //杩炵画鍙栬揣浠诲姟绔欑偣
+ StaProtocol staProtocol1 = devpThread.getStation().get(rgvStn.getStaNo()); //绗竴涓珯鐐瑰垽鏂�
RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, (int) rgvProtocol.getRgvNo());
// WrkMastSta wrkMastSta3 = null;//杩炲彇涓や釜
// Integer staNo = null; //涓庤皟搴�
@@ -4610,6 +4620,15 @@
continue;
} else {
staProtocol = staProtocol.clone();
+ }
+ if (staProtocol1 == null) {
+ News.infoNoLog( " - Rgv鍏ュ簱绔欎俊鎭�(staProtocol!=null缁х画鎵ц)锛歴taProtocol=" + staProtocol);
+ continue;
+ } else {
+ staProtocol1 = staProtocol1.clone();
+ }
+ if(staProtocol1.isLoading() || staProtocol1.getWorkNo()!=0){
+ continue;
}
// 鏌ヨ绔欑偣璇︾粏淇℃伅
BasDevp staDetl = basDevpService.selectById(rgvStn.getStaNo());
@@ -4894,10 +4913,16 @@
}
if(!Cools.isEmpty(barcode)) {
if("NG".endsWith(barcode) || "NoRead".equals(barcode) || "0".equals(barcode) || barcode.length()<5) {
+ if(!staProtocol.isLoading()){
+ continue;
+ }
armTaskAssignmentCallApiLogSave(staProtocol, "鎷嗗灈鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
continue;
}
} else {
+ if(!staProtocol.isLoading()){
+ continue;
+ }
armTaskAssignmentCallApiLogSave(staProtocol, "鎷嗗灈鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
continue;
}
@@ -5095,7 +5120,7 @@
}
if(barcode.length()!=6){
- armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜闀垮害涓嶆槸6浣�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, false);
+ armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜闀垮害涓嶆槸6浣�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, true);
continue;
}
@@ -5103,7 +5128,10 @@
int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",barcode));
int countwait = waitPakinMapper.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",barcode));
if (countLoc > 0 || countWrk > 0 || countwait > 0) {
- armTaskAssignmentCallApiLogSave(staProtocol, "鏉$爜鏁版嵁宸插瓨鍦�", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, false);
+ log.info("鏉$爜鏁版嵁宸插瓨鍦�, staProtocol={}, siteInfo={}, barcode={}",
+ staProtocol,
+ staProtocol.getSiteId() + "鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>",
+ barcode);
continue;
}
@@ -5282,7 +5310,7 @@
}
if(barcode.length()!=6){
- armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜闀垮害涓嶆槸6浣�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, false);
+ armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜闀垮害涓嶆槸6浣�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛屾潯鐮侀暱搴︿笉鏄�6浣�===>>" + barcode, true);
continue;
}
@@ -5290,7 +5318,7 @@
int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",barcode));
int countwait = waitPakinMapper.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",barcode));
if (countLoc > 0 || countWrk > 0 || countwait > 0) {
- armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜鏁版嵁宸插瓨鍦�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, false);
+ armTaskAssignmentCallApiLogSave(locMastEnd, "鏉$爜鏁版嵁宸插瓨鍦�", basArm.getStaNoSou()+"鐮佸灈浣嶇疆锛岀粍鎵樻。/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode, true);
continue;
}
@@ -5582,7 +5610,7 @@
}
// 鍒ゆ柇閲嶅宸ヤ綔妗�
- List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("task_no", staProtocol.getWorkNo()));
+ List<BasAgvMast> basAgvMastList = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("task_no", wrkMast.getWrkNo()));
if (!basAgvMastList.isEmpty()) {
wrkMast.setTakeNone("2");
wrkMastMapper.updateById(wrkMast);
@@ -5655,6 +5683,10 @@
* agv浠诲姟鐢熸垚 Empty
* */
public synchronized void agvTaskCreateEmpty() {
+ Config configAGVAUTOIN = configService.selectConfigByCode("AGVAUTOIN");
+ if(!Boolean.parseBoolean(configAGVAUTOIN.getValue())){
+ return;
+ }
// 鏍规嵁杈撻�佺嚎plc閬嶅巻
for (DevpSlave devp : slaveProperties.getDevp()) {
// 閬嶅巻鍑哄簱鍙�
@@ -5706,7 +5738,7 @@
}
List<LocMast> locMastList = locMastService.selectList(new EntityWrapper<LocMast>().eq("barcode", barcode));
if (!locMastList.isEmpty()) {
-// News.info("{}鍙风珯鐐规潯鐮佷俊鎭噸澶嶏細{}", outStaAgv.getStaNo(), barcode);
+ News.info("{}鍙风珯鐐规潯鐮佷俊鎭噸澶嶏細{}", outStaAgv.getStaNo(), barcode);
continue;
}
// 浠诲姟鐢熸垚鍖� --------------------------------------------------------------------------
@@ -5920,6 +5952,10 @@
// 鑾峰彇绔欑偣淇℃伅
SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, basAgvMast.getFloorNo() !=1?2:1);
StaProtocol staProtocol = devpThread.getStation().get(basAgvMast.getStaNo());
+ List<BasAgvMast> basAgvMastList1 = basAgvMastService.selectList(new EntityWrapper<BasAgvMast>().eq("status", 1).eq("sta_no", basAgvMast.getStaNo()));
+ if(basAgvMastList1.size()>0){
+ continue;
+ }
if (staProtocol == null) {
continue;
} else {
--
Gitblit v1.9.1