From e150f2c426fe2bdfd86be1fe0c27215efaacdc83 Mon Sep 17 00:00:00 2001
From: 1 <1>
Date: 星期二, 16 十二月 2025 09:09:05 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 171 ++++++++++++++++++++++++++++++--------------------------
1 files changed, 91 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 1f90cdf..8669c14 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2418,7 +2418,7 @@
} else {
total = locDetl.getAnfme();
}
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getBoxType3(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),wrkDetl.getAnfme(),total));
});
}
if (wrkMast.getIoType() != 110 && wrkMast.getIoType() != 10) {
@@ -2434,13 +2434,13 @@
total = locDetl.getAnfme();
}
if (wrkMast.getIoType() == 101 || wrkMast.getIoType() == 1) {
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getBoxType3(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),wrkDetl.getAnfme(),total));
}
if (wrkMast.getIoType() == 103 && (null == wrkDetl.getInspect() || 0 == wrkDetl.getInspect())) {
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getBoxType3(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),wrkDetl.getAnfme(),total));
}
if (wrkMast.getIoType() == 107) {
- ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getSupp(), wrkDetl.getSku(),wrkDetl.getAnfme(),total));
+ ledCommand.getMatDtos().add(new MatDto(wrkDetl.getMatnr(), wrkDetl.getMaktx(), wrkDetl.getOrderNo(), wrkDetl.getBoxType3(), wrkDetl.getStandby1(), wrkDetl.getStandby2(), wrkDetl.getStandby3(),wrkDetl.getAnfme(),total));
}
});
}
@@ -2964,13 +2964,13 @@
StaProtocol staProtocol = null;
if(emptyCount >= 2 && site == 1108){
continue;
- }else if(emptyCount > 1 && site == 2031){
+ }else if(emptyCount > 0 && site == 2031){
continue;
}
//濡傛灉绔欑偣鍙嚭绂佺敤锛屽垯涓嶇敓鎴愮┖鐩樺嚭搴撲换鍔�
switch (site){
case 1108:staProtocol = devpThread.getStation().get(site - 2);break;
- case 2031:staProtocol = devpThread2.getStation().get(site);break;
+ case 2031:staProtocol = devpThread2.getStation().get(site + 1);break;
}
if (staProtocol == null) {
return;
@@ -3009,8 +3009,12 @@
}
public synchronized void autoEmptyIn() {
- SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, 1);
List<Integer> list = new ArrayList<>();
+ List<WrkMast> wrkMast = wrkMastService.selectList(new EntityWrapper<WrkMast>().eq("source_sta_no",1038));
+ if(wrkMast.size() >3){
+ return;
+ }
list.add(1038);
for (Integer site:list){
StaProtocol staProtocol = devpThread.getStation().get(site);
@@ -3729,13 +3733,11 @@
if (rgvProtocol.getTaskNo1()==0){
rgvPreSchedulingIn(rgv, rgvProtocol);//鑻ユ殏鏃犱笅鍙戜换鍔¢璋冨害鎻愬墠鍒板彇璐х偣
}
- rgvProtocol.setLastIo("O");
} else if (basRgv.getOutEnable().equals("1") && basRgv.getPakOut().equals("1")) {
//mark - 2 - ....
if (rgvProtocol.getTaskNo2()==0){
this.rgvPreSchedulingOut(rgv, rgvProtocol); // 鍑哄簱
}
- rgvProtocol.setLastIo("I");
}
}
// 濡傛灉鏈�杩戜竴娆℃槸鍑哄簱妯″紡
@@ -3744,12 +3746,10 @@
if (rgvProtocol.getTaskNo2()==0){
this.rgvPreSchedulingOut(rgv, rgvProtocol); // 鍑哄簱
}
- rgvProtocol.setLastIo("I");
} else if (basRgv.getInEnable().equals("1") && basRgv.getPakIn().equals("1")) {
if (rgvProtocol.getTaskNo1()==0){
rgvPreSchedulingIn(rgv, rgvProtocol);//鑻ユ殏鏃犱笅鍙戜换鍔¢璋冨害鎻愬墠鍒板彇璐х偣
}
- rgvProtocol.setLastIo("O");
}
}
}
@@ -4455,34 +4455,34 @@
}
//閬嶅巻rgv鍏ュ簱鍙栬揣绔欑偣
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, rgvStn.getDevpPlcId());
- StaProtocol staProtocol = devpThread.getStation().get(rgvStn.getStaNo2()); //鍊掓暟绗簩涓�
+ StaProtocol staProtocol = devpThread.getStation().get(rgvStn.getStaNo2()==1043?1044:1103); //鍊掓暟绗簩涓�
StaProtocol staProtocol2 = null; //杩炵画鍙栬揣浠诲姟绔欑偣
RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, (int) rgvProtocol.getRgvNo());
- WrkMastSta wrkMastSta3 = null;//杩炲彇涓や釜
- Integer staNo = null; //涓庤皟搴�
- switch (rgvStn.getStaNo2()){
- case 1043: staNo = 1044;break;
- case 1104: staNo = 1103;break;
- }
- if(staNo != null ){
- staProtocol2 = devpThread.getStation().get(staNo);
- if (staProtocol2 == null) {
- News.infoNoLog(" - Rgv鍏ュ簱绔欎俊鎭�(staProtocol!=null缁х画鎵ц)锛歴taProtocol=" + staProtocol);
- continue;
- } else {
- staProtocol2 = staProtocol2.clone();
- }
- BasDevp staDetl2 = basDevpService.selectById(rgvStn.getStaNo2());
- if (staDetl2 == null) {
- News.error(" - 鍏ュ簱 ===>>Rgv绔欑偣鍦ㄦ暟鎹簱涓嶅瓨鍦�, 绔欑偣缂栧彿={}", rgvStn.getStaNo());
- continue;
- }
- if((staProtocol.getWorkNo()>9999 && staProtocol2.getWorkNo()>9999) || (staProtocol.getWorkNo()<10000 && staProtocol2.getWorkNo()<10000)){
- //褰撹繛缁彇璐х珯鐐逛负鐩稿悓绫诲瀷鏃舵墠鑳借繛缁彇
- wrkMastSta3 = wrkMastStaMapper.selectByWrkNo(staProtocol2.getWorkNo());
- }
-
- }
+// WrkMastSta wrkMastSta3 = null;//杩炲彇涓や釜
+// Integer staNo = null; //涓庤皟搴�
+// switch (rgvStn.getStaNo2()){
+// case 1043: staNo = 1044;break;
+// case 1104: staNo = 1103;break;
+// }
+// if(staNo != null ){
+// staProtocol2 = devpThread.getStation().get(staNo);
+// if (staProtocol2 == null) {
+// News.infoNoLog(" - Rgv鍏ュ簱绔欎俊鎭�(staProtocol!=null缁х画鎵ц)锛歴taProtocol=" + staProtocol);
+// continue;
+// } else {
+// staProtocol2 = staProtocol2.clone();
+// }
+// BasDevp staDetl2 = basDevpService.selectById(rgvStn.getStaNo2());
+// if (staDetl2 == null) {
+// News.error(" - 鍏ュ簱 ===>>Rgv绔欑偣鍦ㄦ暟鎹簱涓嶅瓨鍦�, 绔欑偣缂栧彿={}", rgvStn.getStaNo());
+// continue;
+// }
+// if((staProtocol.getWorkNo()>9999 && staProtocol2.getWorkNo()>9999) || (staProtocol.getWorkNo()<10000 && staProtocol2.getWorkNo()<10000)){
+// //褰撹繛缁彇璐х珯鐐逛负鐩稿悓绫诲瀷鏃舵墠鑳借繛缁彇
+// wrkMastSta3 = wrkMastStaMapper.selectByWrkNo(staProtocol2.getWorkNo());
+// }
+//
+// }
if(rgvProtocol.getTaskNo2() > 9999 && staProtocol.getWorkNo() < 10000){
continue;
}
@@ -4543,21 +4543,21 @@
sign = rgvTakeFullAll(basRgvMap.getRgvNo(), wrkMastSta); //鍛戒护涓嬪彂
if (sign){
- if(wrkMastSta3 != null ){
- List<WrkMastSta> wrkMastStaPaking = wrkMastStaService.selectPakingWrk(wrkMastSta3.getStaStart());
- if(wrkMastStaPaking.size() < 1 && !wrkMastSta3.getWrkNo().equals(wrkMastSta.getWrkNo())){//宸叉湁鏍囪涓嶅啀鏍囪
- wrkMastSta3.setMk(1);
- basRgv.setPakAll("0");
- basRgvService.updateById(basRgv);
-
- try{
- wrkMastStaMapper.updateById(wrkMastSta3);
- log.error("閿佸畾鐩搁殧绔欑偣浠诲姟");
- }catch (Exception e){
- log.error("閿佸畾鐩搁殧绔欑偣浠诲姟澶辫触");
- }
- }
- }
+// if(wrkMastSta3 != null ){
+// List<WrkMastSta> wrkMastStaPaking = wrkMastStaService.selectPakingWrk(wrkMastSta3.getStaStart());
+// if(wrkMastStaPaking.size() < 1 && !wrkMastSta3.getWrkNo().equals(wrkMastSta.getWrkNo())){//宸叉湁鏍囪涓嶅啀鏍囪
+// wrkMastSta3.setMk(1);
+// basRgv.setPakAll("0");
+// basRgvService.updateById(basRgv);
+//
+// try{
+// wrkMastStaMapper.updateById(wrkMastSta3);
+// log.error("閿佸畾鐩搁殧绔欑偣浠诲姟");
+// }catch (Exception e){
+// log.error("閿佸畾鐩搁殧绔欑偣浠诲姟澶辫触");
+// }
+// }
+// }
basRgv.setPakOut("0");//鍑哄簱涓嶅厑璁�
basRgvService.updateById(basRgv);
rgvThread.setPaking(false);//浠诲姟涓嬪彂閿佸畾
@@ -4749,20 +4749,26 @@
// 鑾峰彇绔欑偣淇℃伅
SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
- StaProtocol staProtocol = devpThread.getStation().get(armSta.getStaNo());
- if (staProtocol == null) {
- continue;
- } else {
- staProtocol = staProtocol.clone();
+ StaProtocol staProtocol = null;
+ String barcode = null;
+ // 鍙互杞璇诲彇锛岀‘淇濇潯鐮佺ǔ瀹氫笉鍙�
+ for(int retry=0; retry<3; retry++){
+ staProtocol = devpThread.getStation().get(armSta.getStaNo());
+ barcode = staProtocol.getBarcode();
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ Thread.sleep(150); // 灏忓欢鏃剁瓑寰匬LC鍒锋柊
}
- String barcode = staProtocol.getBarcode();
if(!Cools.isEmpty(barcode)) {
if("NG".endsWith(barcode) || "NoRead".equals(barcode) || "0".equals(barcode) || barcode.length()<5) {
- armTaskAssignmentCallApiLogSave(staProtocol, "鎵樼洏鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
+ armTaskAssignmentCallApiLogSave(staProtocol, "鎷嗗灈鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
continue;
}
} else {
- armTaskAssignmentCallApiLogSave(staProtocol, "鎵樼洏鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
+ armTaskAssignmentCallApiLogSave(staProtocol, "鎷嗗灈鏉$爜涓虹┖", staProtocol.getSiteId()+"鐮佸灈浣嶇疆锛�===銆嬫墭鐩樻潯鐮佷负绌�", false);
continue;
}
String[] barcodeList = barcode.split(";");
@@ -4792,9 +4798,9 @@
List<BasArm> basArmList = basArmService.selectList(new EntityWrapper<BasArm>().eq("arm_no",armSta.getArmNo()));
boolean sign = true;
for (BasArm basArm : basArmList){
- if (basArm.getStaNo()==2){//NG
- continue;
- }
+// if (basArm.getStaNo()==2){//NG
+// continue;
+// }
LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", basArm.getStaNoSou()));
if (Cools.isEmpty(locMast) || !locMast.getLocSts().equals("D")){
continue;
@@ -4820,22 +4826,22 @@
sign = false;
break;
}
- if (sign){
- for (BasArm basArm : basArmList){
- if (basArm.getStaNo()==2){//NG
- LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", basArm.getStaNoSou()));
- if (Cools.isEmpty(locMast) || !locMast.getLocSts().equals("D")){
- continue;
- }
- BasArmMast basArmMast = new BasArmMast(armBarcodeTwoParam);
- basArmMast.setArmNo(basArm.getArmNo());
- basArmMast.setStaNo(basArm.getStaNoSou());
- basArmMast.setSortingLine(basArm.getSortingLineSou());
- basArmMastService.insert(basArmMast);
- break;
- }
- }
- }
+// if (sign){
+// for (BasArm basArm : basArmList){
+// if (basArm.getStaNo()==2){//NG
+// LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", basArm.getStaNoSou()));
+// if (Cools.isEmpty(locMast) || !locMast.getLocSts().equals("D")){
+// continue;
+// }
+// BasArmMast basArmMast = new BasArmMast(armBarcodeTwoParam);
+// basArmMast.setArmNo(basArm.getArmNo());
+// basArmMast.setStaNo(basArm.getStaNoSou());
+// basArmMast.setSortingLine(basArm.getSortingLineSou());
+// basArmMastService.insert(basArmMast);
+// break;
+// }
+// }
+// }
}
}
} catch (Exception e){
@@ -5183,7 +5189,7 @@
.eq("sta_no", basArm.getStaNoSou())
.eq("status", 0)
);
- if (basArmMastList.isEmpty()){
+ if (basArmMastList.isEmpty()){
continue;
}
if (basArmMastList.size()>1){
@@ -5478,6 +5484,11 @@
basAgvMastService.insert(basAgvMast);
AgvBindCtnrAndBinParam agvBindCtnrAndBinParam = new AgvBindCtnrAndBinParam(basAgvMast);
agvBindCtnrAndBinParam.setCtnrCode(basAgvMast.getBarcode());
+ if(basAgvMast.getFloorNo() == 3){
+ LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no",dto.getLocNo()));
+ locMast.setBarcode(wrkMast.getBarcode());
+ locMastService.updateById(locMast);
+ }
agvBindCtnrAndBinParam.setCtnrTyp("1");
ReturnT<String> resultBind = new PostMesDataUtils().postMesDataAgv("AGV瀹瑰櫒缁戝畾", AgvConstant.AGV_URL, AgvConstant.AGV_CTNRANDBING, agvBindCtnrAndBinParam);
wrkMast.setTakeNone("2");
--
Gitblit v1.9.1