From d60e84cbedb554555578f071de95c4a8049183db Mon Sep 17 00:00:00 2001 From: yxFwq <1> Date: 星期五, 13 六月 2025 15:16:43 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java | 33 ++++++++++++++++++++++++++++++--- 1 files changed, 30 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java b/src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java index 9561966..35f9a89 100644 --- a/src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/BareBoardHandler.java @@ -12,6 +12,7 @@ import com.zy.asrs.service.*; import com.zy.asrs.task.AbstractHandler; import com.zy.asrs.task.core.ReturnT; +import com.zy.asrs.utils.CodeDetectionUtil; import com.zy.asrs.utils.Utils; import com.zy.common.model.enums.WorkNoType; import com.zy.common.service.CommonService; @@ -160,6 +161,8 @@ return null; } ArrayList<Integer> crns =new ArrayList<>(); + ArrayList<Integer> crnList =new ArrayList<>(); + int[] crnCount = new int[7]; crns.add(1); crns.add(2); crns.add(3); @@ -169,6 +172,21 @@ crns.add(7); boolean sign = true; for (Integer crnNo : crns){ + int crnCountD = locMastService.selectCount(new EntityWrapper<LocMast>().eq("loc_sts", "D").eq("crn_no", crnNo)); + crnCount[crnNo-1] = crnCountD; + } + crnList.add(CodeDetectionUtil.crnCodeDetectionMax(new int[]{crnCount[0],crnCount[1]})[0]+1); + crnList.add(CodeDetectionUtil.crnCodeDetectionMax(new int[]{crnCount[2],crnCount[3],crnCount[4]})[0]+3); + crnList.add(CodeDetectionUtil.crnCodeDetectionMaxT(new int[]{crnCount[2],crnCount[3],crnCount[4]},crnList.get(1)-3)[0]+3); + crnList.add(CodeDetectionUtil.crnCodeDetectionMax(new int[]{crnCount[5],crnCount[6]})[0]+6); + crnList.add(1); + crnList.add(2); + crnList.add(3); + crnList.add(4); + crnList.add(5); + crnList.add(6); + crnList.add(7); + for (Integer crnNo : crnList){ // 妫�娴嬭矾寰� Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>() .eq("type_no", 110) @@ -182,8 +200,11 @@ if (basCrnp.getCrnSts()!=3 || !basCrnp.getOutEnable().equals("Y")){ continue; } + if (!basCrnpService.checkSiteError(crnNo, false)){ + continue; + } // 鑾峰彇搴撲綅 - List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D").eq("crn_no", crnNo)); + List<LocMast> locMasts = locMastService.selectList(new EntityWrapper<LocMast>().eq("loc_sts", "D").eq("crn_no", crnNo).orderBy("lev1",true).orderBy("bay1",true)); for (LocMast locMastS : locMasts){ List<String> locNoList = new ArrayList<>(); sign = true; @@ -223,14 +244,20 @@ sign=false; } } + ArrayList<String> locArrayList = new ArrayList<>(); + for (String locNo : locNoList){ + if (!locArrayList.contains(locNo)){ + locArrayList.add(locNo); + } + } if (sign) { EmptyPlateOutParam param = new EmptyPlateOutParam(); param.setOutSite(staNo); - param.setLocNos(locNoList); + param.setLocNos(locArrayList); try{ workService.emptyPlateOut(param, 9999L); }catch (Exception e){ - log.error("浜屾ゼ灏忔枡绠辫嚜鍔ㄨˉ绌烘澘澶辫触锛侊紒寮傚父鍘熷洜锛�"+e); + log.error(staNo+"鑷姩琛ョ┖鏉垮け璐ワ紒锛佸紓甯稿師鍥狅細"+e); } return SUCCESS; } -- Gitblit v1.9.1