From cd280ead41b98ee60154038e36d9b83cc25e7d16 Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期三, 20 十二月 2023 12:55:25 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java | 107 +++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 78 insertions(+), 29 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java b/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java index 7ba0c1e..894a7c1 100644 --- a/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/MoveLocHandler.java @@ -43,6 +43,8 @@ private CommonService commonService; @Autowired private WrkDetlService wrkDetlService; + @Autowired + private BasCrnpService basCrnpService; @Value("${channel.equipmentRow}") private Integer equipmentRow; //娴嬭瘯搴撲綅鎵�鍦ㄦ帓鍙� @@ -61,17 +63,22 @@ try { List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>() .eq("loc_sts", "F") - .eq("pack_status", 4) + .eq("pack_status", 4)//娴嬭瘯澶辫触 .eq("row1", equipmentRow) .eq("loc_type1", (short) 1) .eq("fire_status",0) ); if (!Cools.isEmpty(locMasts)){ for (LocMast locMast:locMasts){ + LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); + if (Cools.isEmpty(locDetl)){ + log.error("娴嬭瘯澶辫触锛圢G锛夌Щ搴�==>搴撳瓨鏄庣粏鏌ヨ澶辫触锛佸簱浣嶅彿锛�"+locMast.getLocNo()); + continue; + } TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() .eq("loc_no",locMast.getLocNo()) - .eq("barcode",locMast.getBarcode()) - .eq("status",4) + .eq("barcode",locDetl.getMatnr()) + .eq("status",4)//瀹屾垚娴嬭瘯 ); if (!Cools.isEmpty(testMast)){ if (testMast.getStatus()==4){ @@ -81,7 +88,15 @@ targetLocNo=locMastService.queryFreeLocMast(1,(short)4); } if (targetLocNo != null){ - workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)Integer.parseInt(testMast.getUserId())); + workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)Integer.parseInt("9935")); + //4.娴嬭瘯瀹屾垚涓婃姤 + CombParam combParam = new CombParam(); + combParam.setPackNo(locDetl.getMatnr()); + combParam.setLocNo(locMast.getLocNo()); + combParam.setPackSts(2); + combParam.setStepSts(4); + combParam.setRequestTime(DateUtils.convert(new Date())); + new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); return SUCCESS; }else { log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->娌℃湁绌哄簱浣�!"); @@ -95,48 +110,70 @@ } } } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return FAIL.setMsg(e.getMessage()); + log.error(""+e); +// e.printStackTrace(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// return FAIL.setMsg(e.getMessage()); } //娴嬭瘯鎴愬姛 鍑哄簱銆佺Щ搴� try { List<LocMast> locMasts2 = locMastService.selectList(new EntityWrapper<LocMast>() .eq("loc_sts", "F") - .eq("pack_status", 4) + .eq("pack_status", 3)//娴嬭瘯瀹屾垚 .eq("row1", equipmentRow) .eq("loc_type1", (short) 1) .eq("fire_status",0) ); if (!Cools.isEmpty(locMasts2)){ for (LocMast locMast:locMasts2){ + LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", locMast.getLocNo())); + if (Cools.isEmpty(locDetl)){ + log.error("娴嬭瘯鎴愬姛 鍑哄簱銆佺Щ搴�==>搴撳瓨鏄庣粏鏌ヨ澶辫触锛佸簱浣嶅彿锛�"+locMast.getLocNo()); + continue; + } TestMast testMast = testMastService.selectOne(new EntityWrapper<TestMast>() .eq("loc_no",locMast.getLocNo()) - .eq("barcode",locMast.getBarcode()) + .eq("barcode",locDetl.getMatnr()) .eq("status",4) ); + boolean sign=false; if (!Cools.isEmpty(testMast)){ if (testMast.getStatus()==4){ + boolean signCrn1 = basCrnpService.checkSiteError(1, false); + if (!signCrn1){ + log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->1鍙峰爢鍨涙満涓嶅彲鍑哄簱!"); + break; + } //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅 LocMast targetLocNo = locMastService.queryFreeLocMast(4,(short)2); if (Cools.isEmpty(targetLocNo)){ targetLocNo=locMastService.queryFreeLocMast(3,(short)2); } + boolean signCrn2 = basCrnpService.checkSiteError(2, true); + if (!signCrn2){ + targetLocNo = null; + log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->2鍙峰爢鍨涙満涓嶅彲鍏ュ簱! 寮�濮嬫煡鎵�1鍙峰爢鍨涙満"); + } if (targetLocNo != null){ //鐢熸垚鍑哄簱浠诲姟 if (outLoc(locMast)){ - return SUCCESS; + sign=true; } }else { + signCrn1 = basCrnpService.checkSiteError(1, true); + if (!signCrn1){ + log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->1鍙峰爢鍨涙満涓嶅彲鍏ュ簱!"); + break; + } //3\4鎺掓弧 鍚�2鎺掔Щ搴擄紝鏌ヨ鐩爣搴撲綅 targetLocNo = locMastService.queryFreeLocMast(2,(short)2); if (Cools.isEmpty(targetLocNo)){ targetLocNo=locMastService.queryFreeLocMast(1,(short)2); } if (targetLocNo != null){ - workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)Integer.parseInt(testMast.getUserId())); - return SUCCESS; + workService.locMove(locMast.getLocNo(),targetLocNo.getLocNo(),(long)9935); + sign=true; }else { log.error("娴嬭瘯瀹屾垚鑷姩绉诲簱--->娌℃湁绌哄簱浣�!"); } @@ -144,15 +181,28 @@ }else if (testMast.getStatus()!=4) { log.error("娴嬭瘯鐘舵�佸紓甯�,搴撲綅鍙蜂负锛�" + testMast.getLocNo()); } + }else { log.error("娴嬭瘯搴撲綅锛�"+locMast.getLocNo()+"鎵�灞炴祴璇曟。涓虹┖鎴栬�呬笉鐘舵�佷负4"); + } + if (sign){ + //4.娴嬭瘯瀹屾垚涓婃姤 + CombParam combParam = new CombParam(); + combParam.setPackNo(locDetl.getMatnr()); + combParam.setLocNo(locMast.getLocNo()); + combParam.setPackSts(1); + combParam.setStepSts(4); + combParam.setRequestTime(DateUtils.convert(new Date())); + new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); + return SUCCESS; } } } } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return FAIL.setMsg(e.getMessage()); + log.error(""+e); +// e.printStackTrace(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// return FAIL.setMsg(e.getMessage()); } //娴嬭瘯鏈夌┖搴撲綅 绉诲簱 @@ -162,9 +212,15 @@ .eq("pack_status", 0) .eq("loc_type1", (short) 3) .eq("fire_status",0) + .orderBy("io_time",true) ); if (!Cools.isEmpty(locMasts3)){ for (LocMast locMast:locMasts3){ + boolean signCrn1 = basCrnpService.checkSiteError(1, true); + if (!signCrn1){ + log.error("鍚戞祴璇曞簱浣嶇Щ搴撳け璐�---->1鍙峰爢鍨涙満涓嶅彲鐢�!"); + break; + } //绉诲簱寮�濮嬶紝鏌ヨ鐩爣搴撲綅 LocMast targetLocNo = locMastService.queryFreeLocMast(equipmentRow,(short)1); if (targetLocNo != null){ @@ -175,9 +231,10 @@ } } } catch (Exception e) { - e.printStackTrace(); - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return FAIL.setMsg(e.getMessage()); + log.error(""+e); +// e.printStackTrace(); +// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); +// return FAIL.setMsg(e.getMessage()); } return SUCCESS; } @@ -194,7 +251,7 @@ } else if (Cools.isEmpty(locMast.getModiTime())){ log.error("搴撲綅:"+locMast.getLocNo()+"modiTime涓虹┖"); } else if (Cools.isEmpty(locMast.getBarcode())){ - log.error("搴撲綅:"+locMast.getLocNo()+"Pack鐮佷负绌�"); + log.error("搴撲綅:"+locMast.getLocNo()+"鎵樼洏鐮佷负绌�"); } else { // 鐢熸垚宸ヤ綔鍙� int workNo = commonService.getWorkNo(WorkNoType.getWorkNoType(ioType)); @@ -207,7 +264,7 @@ wrkMast.setIoPri(13D); // 浼樺厛绾э細13 wrkMast.setCrnNo(1); wrkMast.setSourceStaNo(203); // 婧愮珯 - wrkMast.setStaNo(205); // 鐩爣绔� 2鍙峰爢鍨涙満鍏ュ簱绔� + wrkMast.setStaNo(206); // 鐩爣绔� 2鍙峰爢鍨涙満鍏ュ簱绔� wrkMast.setSourceLocNo(locMast.getLocNo()); // 婧愬簱浣� wrkMast.setFullPlt("Y"); // 婊℃澘锛歒 wrkMast.setPicking("N"); // 鎷f枡 @@ -237,15 +294,7 @@ if (locMast.getLocSts().equals("F")) { locMast.setLocSts("R"); locMast.setModiTime(now); - locMast.setPackStatus(6); //6:闈欑疆瀹屾垚 - - CombParam combParam = new CombParam(); - combParam.setPackNo(locMast.getBarcode()); - combParam.setLocNo(locMast.getLocNo()); - combParam.setPackSts(6); - combParam.setRequestTime(DateUtils.convert(new Date())); - new PostMesDataUtils().postMesData("MES绯荤粺",mesUrl,inpath,combParam); - +// locMast.setPackStatus(5); //5:寮�濮嬮潤缃� if (!locMastService.updateById(locMast)) { log.error("棰勭害搴撲綅鐘舵�佸け璐ワ紝搴撲綅鍙凤細"+locMast.getLocNo()); return false; -- Gitblit v1.9.1